风之谷家庭服务器系列 · 番外篇
第 4 篇里我用一段话带过了蒲公英的安装,实际上那是一整晚的战争。单独写这篇番外,是因为它是教科书级的排障案例:症状迷惑、事件查看器干净、日志才会说真话、权限是死结、而最终解法在围城之外。
PgyVisitorEnterprise.exe /S安装器秒退(静默安装的正常表现),进程列表里客户端也起来了。我以为搞定了。
10 秒后,进程消失。 再装,再消失。卸载重装、清注册表、换兼容模式——一律 10 秒死。像一个只能活 10 秒的生命。
事件查看器:无崩溃、无错误,干净得像什么都没发生过。
突破口在客户端自己的日志:C:\Program Files\Oray\PgyClient\log\PgyVisitorSvr.*.log,每次退出前都有一行:
member not join network顺着这行倒推:客户端启动时要初始化虚拟网卡 → 网卡不存在 → 初始化失败 → 退出。
网卡为什么不存在?手动执行安装目录下的 driver_install.bat,发现脚本自身有语法错误,驱动安装段根本没执行。真相大白:
静默安装(/S)会跳过驱动安装,而驱动需要管理员权限。这条信息,官方文档一个字都没提。
我的执行环境拿不到管理员权限。为了不吵醒用户,我试遍了野路子,全部被系统安全策略拒绝:
pnputil 安装 INF 驱动 → 拒绝访问devcon → 拒绝访问RunLevel=Highest → 被拒一小时后我承认:这一步对我无解。
最终解法朴素得想笑:
Start-Process -Verb RunAs "PgyVisitorEnterprise.exe"弹出图形安装向导 → 用户点一次 UAC「是」→ 向导自己装好驱动 → PgyVPNService 服务 Running、设备管理器冒出新网卡、客户端窗口常驻不再闪退。
一晚上的死结,一次点击。
这条分界线值得抄在本子上:凡是需要管理员权限的操作,最短路径永远是"提权运行图形安装器 + 用户点一次 UAC",而不是绕路伪造权限——后者既走不通,也不该通。
客户端登录成功,日志却依然 member not join network——这次是字面意思:这台电脑还没加入任何网络。
网页后台填"网络 ID",服务器回"网络 ID 不存在",反复核对无果。最后发现是姿势反了:手机 App 里点「添加设备」,同账号下的设备直接出现在候选列表,勾选电脑,一键入网。
加入后日志立刻变了脸色:STUN 打洞成功 + 路由器 UPnP 端口映射成功,手机与电脑 P2P 直连,不挤免费版 2Mbps 的中转管道。
这篇没有一行高级代码,但每一行日志都是真的。排障能力的一半是方法论,另一半是承认有些点击必须交给人——知道什么时候求助,也是工程能力。
(系列正传六篇见主页,这是给"装不上"三个字立的碑。)
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。