💡 知识卡片
原始会话经 LLM 提炼后的结构化知识。比原始会话更好读、更好搜。
问答
Python 脚本 GBK 编码报错
问题:在 Windows 上运行 Python 脚本 print 含 emoji(如 ✅ \u2705)时抛出 UnicodeEncodeError: 'gbk' codec can't encode character,exit code 1
方案:Windows 控制台默认 GBK 编码无法输出 emoji/非 GBK 字符。解决方式:1) 把脚本中的 emoji 替换为 ASCII 标记(如 ok / + / -);2) 或在脚本开头设置 sys.stdout.reconfigure(encoding='utf-8');3) 或运行时设置环境变量 PYTHONIOENCODING=utf-8。
问答
Python 脚本 GBK 编码报错
问题:Windows 下运行 Python 脚本打印 ✅ 等 Unicode 符号时抛出 UnicodeEncodeError: 'gbk' codec can't encode character '\u2705',进程以 exit code 1 退出
方案:避免在 print 中使用 emoji/特殊 Unicode 符号,改用 ASCII 标记(如 + / - / ok);或显式设置标准输出编码为 UTF-8(如 sys.stdout.reconfigure(encoding='utf-8') 或设置环境变量 PYTHONIOENCODING=utf-8)
问答
批处理调用报错改用内联命令
问题:在 PowerShell 中调用 .bat 脚本时出现 NativeCommandError,提示 'D:\nas-data\se...ternal command' 不是可运行的程序或批处理文件,exit code 1
方案:不要通过 .bat 间接调用,直接在命令行内联执行 cmd 命令(如 net user、reg add 等),避免批处理路径解析和编码问题
主题
Windows 自动登录配置
- 清空密码:net user Administrator ""
- 注册表 HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon 下设置 AutoAdminLogon=1、DefaultUsername=Administrator、DefaultPassword=(空字符串)
- 若重启后仍弹登录框,运行 netplwiz 取消勾选"要使用本计算机,用户必须输入用户名和密码",应用时密码留空
- 恢复密码:net user Administrator 新密码
- 安全风险:无密码后任何人可物理访问本机及 NAS 数据,建议离开时 Win+L 锁屏
问答
Python subprocess 读取输出 GBK 解码报错
问题:在中文 Windows 上运行 monitor.py 时,subprocess 的 _readerthread 抛出 UnicodeDecodeError: 'gbk' codec can't decode byte 0xab in position 769: illegal multibyte sequence,导致读取子进程输出失败。
方案:在 subprocess 调用中显式指定编码,避免使用系统默认 GBK:subprocess.run(..., encoding='utf-8', errors='replace'),或传 text=True 时配合 encoding='utf-8';也可设置环境变量 PYTHONIOENCODING=utf-8 或 chcp 65001 切换控制台代码页。
问答
清理残留 dsh_watcher 进程与任务计划
问题:NAS 上存在多个残留的 dsh_watcher 进程和重复的 Windows 任务计划:alice 账号已不存在仍在监听,ehong001 的 watcher 指向 Tailscale 内网地址 100.121.80.122 但本机未装 Tailscale 导致推送失败。
方案:1) 杀掉所有 dsh_watcher 进程(按 PID 逐个 kill,如 9616、11292、3128);2) 删除旧任务计划(schtasks 删除 NAS-DSH-Watcher-admin、NAS-DSH-Watcher-ehong001 等重复项);3) 重新启动干净的 ehong001 watcher,--nas-url 指向 http://127.0.0.1:9000;4) 重新安装任务计划;5) 用 monitor.py 验证各服务 running/healthy 状态。
主题
Windows 本机搭建私有云 NAS 方案
- 有公网 IPv4 时无需内网穿透,用免费 DDNS 域名 + 路由器端口映射即可实现公网 HTTPS 访问
- 功能组合:文件共享用 SMB/NFS/WebDAV;私有云盘用 Nextcloud/Seafile;媒体用 Jellyfin/Plex/Emby;下载用 qBittorrent/Aria2;备份用 Restic/Duplicati/rsync
- 无公网 IP 时的远程访问备选:Tailscale、ZeroTier、Cloudflare Tunnel、自建 WireGuard、FRP
- 不想折腾命令行可用 CasaOS / Portainer / YunoHost 做管理界面,多数服务基于 Docker 部署最省事
- 规划前需确认:操作系统、局域网还是公网访问、是否装 Docker、硬件常开情况与硬盘数量、网络是否有公网 IPv4
问答
Python脚本GBK编码emoji报错
问题:Windows下Python脚本print含emoji字符时出现GBK codec编码错误
方案:移除print语句中的emoji字符,或改用纯ASCII/中文输出;根本原因是Windows控制台默认GBK编码无法编码emoji
主题
Windows 本机搭建私有云 NAS 方案
- 有公网 IPv4 时无需内网穿透,用 DDNS + 路由器端口映射即可稳定公网访问
- 功能组合:文件共享用 SMB/NFS/SFTP/WebDAV;私有云盘用 Nextcloud/Seafile;媒体用 Plex/Jellyfin/Emby;下载用 qBittorrent/Aria2;备份用 Restic/Duplicati/rsync;远程访问用 Tailscale/ZeroTier/Cloudflare Tunnel/FRP
- 不想折腾命令行可用 CasaOS/Portainer/YunoHost 做管理界面
- 方案选型前需确认:操作系统、是否仅局域网或需公网、是否装 Docker、硬件配置与硬盘数量、是否有公网 IPv4 或仅 IPv6/运营商 NAT