Ubuntu工控机安装向日葵远程控制与无人值守排障指南
工控机装系统这事儿,最怕的不是装不上,而是装好以后人不在现场,出了问题只能派人跑一趟。我之前做过一个产线视觉检测的小项目,机器塞在电柜里,屏幕键盘全没有,网线一插就跑起来。第一次出问题是因为一个采集卡驱动升级后界面起不来,现场师傅只会按电源键,来回折腾了半天。从那以后,凡是交付到现场的 Ubuntu 工控机,我都会在镜像阶段就把向日葵远程控制这类图形化远程工具装进去,把"能看到桌面"这件事当成标配。这篇就围绕工控机 Ubuntu 系统安装向日葵远程控制这个具体活儿,从为什么装、装之前盘什么、怎么装、装完调什么、出问题怎么查,一条线讲透,给同样要跑现场的朋友做个可复现的参考。
1. 先想明白:工控机为什么不能只靠 SSH
1.1 现场维护的真实痛点决定的
工控机跟机房服务器最大的区别在于,它往往跑着一个带桌面的业务程序,出问题的表现也大多发生在图形层:窗口卡死、弹窗被挡住、分辨率不对、某个自绘控件渲染成黑块、输入法弹不出来。这类问题你用 SSH 登进去,top看一眼 CPU 正常、df -h看一眼磁盘还有空间、systemctl status一片绿,然后就没有然后了。业务人员说"屏幕不动了",你在命令行里是看不出来的。远程图形控制解决的正是这个盲区,它让你像坐在机器前面一样看到那一帧画面,甚至能看到鼠标停在哪里、哪个对话框在最上层。
我踩过最典型的一次,是某个自研的配置界面在某个分辨率下弹出确认框时,确认按钮被压到了屏幕可视区域之外,鼠标点不到,键盘 Tab 也切不过去。这个问题在 SSH 里排查了两天没头绪,接上远程桌面一看,五秒钟定位。所以工控机上的远程工具,本质上不是"方便",而是"能看见",这个价值是命令行替代不了的。
1.2 向日葵、VNC、系统自带方案怎么选
工控机常见的远程方案就那么几种,我做过一个小对照,实际选型时可以直接拿去比。
| 方案 | 部署复杂度 | 跨网络可用性 | 图形流畅度 | 适合场景 |
|---|---|---|---|---|
| SSH | 极低 | 需要有可达地址 | 无图形 | 纯服务、日志排查 |
| 系统自带屏幕共享(VNC 协议) | 中 | 需要端口可达或做转发 | 一般,弱网差 | 同局域网、临时看屏 |
| 第三方商业远程工具(本文主角) | 低 | 装完登录即可,无需自己搞网络 | 较好,有自适应码率 | 现场无人值守、跨地域 |
| 硬件 KVM 方案 | 高,要加硬件 | 独立于系统 | 最好,系统挂了也能看 | 关键产线、要求带外管理 |
选向日葵的核心理由有两个。第一是不需要在路由器上开端口,装完客户端登录账号,设备就出现在列表里,现场网络是什么样基本不用管,这对交付到别人厂区的机器太重要了,你没法要求甲方网管为你开一堆映射。第二是支持文件传输和剪贴板同步,现场改个配置文件、拷个日志回来,一个界面就完成了,不用再折腾 U 盘或者临时搭个文件服务。
当然也要说清楚它的边界。向日葵是应用层软件,它依赖系统正常启动、依赖图形会话活着。如果工控机 BIOS 都过不去、或者内核 panic 卡在启动日志,向日葵是帮不了你的,这种时候要么现场有人,要么上硬件带外方案。把这点想清楚,预期就不会跑偏。
1.3 装之前必须先盘清楚的五件事
很多人上来就dpkg -i,结果卡在依赖报错上,一卡就是半小时。我在装之前一定会先确认这五项,能省掉后面 80% 的麻烦。
- CPU 架构:
uname -m输出x86_64还是aarch64。这一条最关键,工控机里 ARM 平台(各种国产化主板、嵌入式板卡)占比不低,官方 Linux 包主力是 x86_64,ARM 上大概率没有现成包。 - Ubuntu 版本与桌面环境:
lsb_release -a看版本,echo $XDG_CURRENT_DESKTOP看桌面。GNOME、KDE、XFCE 的托盘和自启机制不一样,后面配开机启动要用到。 - 显示服务类型:X11 还是 Wayland。这一条直接决定你会不会遇到黑屏。
- 是否有物理显示器或虚拟显示:无头机器(headless)必须提前准备虚拟显示配置,否则图形会话根本起不来。
- 网络出口策略:现场如果是纯内网,要提前确认能不能访问外网,不能的话这套方案得换思路。
注意:这五项里,架构和显示服务类型是硬门槛,其他都能绕。别嫌麻烦,花三分钟敲几条命令,比装到一半回滚强得多。
2. 环境准备:把坑提前填掉
2.1 确认架构与系统版本,别装错包
先把基础信息一次性打出来,我习惯存成一个文本,交付时也方便留档。
uname -m lsb_release -a echo $XDG_SESSION_TYPE echo $XDG_CURRENT_DESKTOP lspci | grep -i vgauname -m给出x86_64就说明可以走官方 amd64 包。如果是aarch64,先别急着找包,直接去官方下载页确认有没有对应架构的构建;没有的话,老老实实退回系统自带的屏幕共享方案,或者考虑现场加个硬件方案,别硬凑,凑出来的东西跑不稳。
XDG_SESSION_TYPE这一行尤其要看。Ubuntu 桌面版从 21.04 之后默认走 Wayland,而相当多的第三方屏幕采集工具在 Wayland 下拿不到画面,表现就是连上了但一片黑。这不是软件坏了,是权限模型变了——Wayland 下应用不能随便读整个屏幕。解决办法后面第 4 章会详细讲,但你在装之前就应该知道自己在哪个模式里。
顺便看一眼显卡。工控机常见的 Intel 核显、AMD 集显都没问题,如果是 NVIDIA 独显并且装了官方驱动,要注意驱动版本和 Xorg 配置的配合,有些老驱动在虚拟显示配置下会直接拒绝启动。
2.2 依赖补齐:报错信息怎么读
向日葵的 Linux 包是 deb 格式,dpkg -i安装时最常见的报错就是依赖未满足,形如:
dpkg: 依赖关系问题使得 sunloginclient 的配置工作不能继续: sunloginclient 依赖于 libwebkit2gtk-4.0-37;然而: 未安装软件包 libwebkit2gtk-4.0-37。这里的处理逻辑很固定,分两步。第一步用dpkg -I先把依赖清单打出来看全貌,别只看第一条:
dpkg -I SunloginClient-*.deb | grep -A5 Depends第二步用 apt 自动修复:
sudo apt-get update sudo apt-get -f install -y-f的意思是 fix broken,apt 会去仓库里把缺的包补上并把安装流程走完。绝大多数情况到这一步就结束了。如果还是不行,通常是源的问题——工控机出厂时用的可能是某个内网镜像源,包不全。这时候临时换成官方源再试一次,装完再换回去。
少数情况需要手动点名安装,我遇到过比较顽固的几个:
sudo apt-get install -y libgtk-3-0 libxdo3 libayatana-appindicator3-1libayatana-appindicator3-1这个包管的是系统托盘图标。缺了它,程序能跑,但托盘上没有图标,你就看不到在线状态,也点不出菜单,很容易误判成"没启动"。这个坑我在一台精简过的系统上踩过,排查了挺久。
提示:精简版 Ubuntu(很多人为了工控机省资源会装 minimal 或者 server 加轻量桌面)经常缺
libwebkit2gtk,因为这个库主要给带内嵌网页的应用用,服务器场景用不到。装之前先把这条装上,能少一轮报错。
2.3 无头工控机的显示准备
这是整个流程里最容易被忽略、也最容易翻车的一环。工控机塞在电柜里,绝大多数时候是不接显示器的。问题在于,X11 在没有检测到任何输出设备时,可能根本不会建立图形会话,或者建立一个极小的默认分辨率(比如 1024x768 甚至更低),业务界面直接被裁掉。
判断方法很简单,接上远程之前先在本地确认:
xrandr如果输出的分辨率列表很短、或者干脆报Can't open display,就说明显示这块需要处理。
处理方案是配一个虚拟显示。先装 dummy 驱动:
sudo apt-get install -y xserver-xorg-video-dummy然后写配置文件/etc/X11/xorg.conf.d/10-headless.conf:
Section "Device" Identifier "DummyDevice" Driver "dummy" VideoRam 256000 EndSection Section "Monitor" Identifier "DummyMonitor" HorizSync 5.0 - 100.0 VertRefresh 5.0 - 200.0 Modeline "1920x1080" 148.50 1920 2008 2052 2200 1080 1084 1089 1125 +hsync +vsync Option "DPMS" EndSection Section "Screen" Identifier "DummyScreen" Device "DummyDevice" Monitor "DummyMonitor" DefaultDepth 24 SubSection "Display" Depth 24 Modes "1920x1080" EndSubSection EndSectionVideoRam 256000单位是 KB,约 250MB 显存,跑 1080p 桌面绰绰有余。Modeline那一串数字是标准 1080p60 的时序参数,不用自己算,直接用。改完重启显示服务或者直接重启系统。
这里有个取舍要讲清楚:装 dummy 驱动意味着系统"假装"有一个显示器,代价是如果机器上真的接了物理显示器,可能出现两个输出源打架、画面只在其中一个上的情况。我的做法是,如果这台机器确定长期无头运行,就配 dummy;如果是调试阶段还要接显示器,就先不配,等调试完再补上。不要在有物理屏的机器上盲目加 dummy 配置,这是我自己踩过的,加完之后本地屏幕黑掉,以为是显卡坏了,折腾了半天。
3. 完整安装流程:从下载到设备上线
3.1 下载与校验,别用来源不明的包
安装包一定从官方渠道拿。工控机现场经常有人图省事,从别的机器上拷一个包过来,版本对不上、架构对不上,或者干脆是改过的。我给自己定的规矩是:包名里带版本号和架构,下载完记下来,写进交付文档。
包名形如SunloginClient-<版本号>-amd64.deb。下载完先看一眼文件信息:
ls -lh SunloginClient-*.deb dpkg-deb -I SunloginClient-*.deb | head -20dpkg-deb -I会打出包名、版本、架构、依赖。重点核对Architecture是不是amd64,跟你机器对得上再往下走。这一步花十秒钟,能避免装完之后程序起不来还找不到原因的情况。
3.2 dpkg 安装与善后
cd ~/Downloads sudo dpkg -i SunloginClient-*.deb sudo apt-get -f install -y第一行装包,第二行补依赖。装完之后确认一下文件落到哪里了:
dpkg -L sunloginclient | head -30通常主程序在/usr/local/sunlogin/bin/下面,配置文件在/usr/local/sunlogin/config/,用户的运行数据在~/.sunlogin/。知道这几个路径很重要,后面看日志、改配置、做卸载都用得上。
如果要卸载,顺序别搞反:
sudo dpkg -r sunloginclient sudo apt-get autoremove -y-r是移除但保留配置,-P是连配置一起清。折腾重装的时候用-r更省事,登录信息还在。彻底换机器或者交付前清理用-P。
3.3 首次启动与账号绑定
装完不会自动弹界面,得手动启动一次。有桌面的话直接在应用列表里找,或者命令行拉起:
/usr/local/sunlogin/bin/sunloginclient &注意末尾的&,不加的话终端会被占住,关掉终端程序也跟着没了。这也解释了为什么很多人"装完启动了一次,关掉终端就再也连不上"——它没退到后台,也没注册成服务。
第一次启动会要求登录账号。这一步是整个方案的关键:被控端必须登录账号,设备才会出现在你的设备列表里。如果只是启动不登录,本机屏幕上会显示一个识别码,靠识别码也能连,但每次都要现场报码,对无人值守场景毫无意义。
登录之后建议做两件事:一是给这台设备改个能认出来的名字,比如"产线A-视觉工位-01",不要用默认的主机名,现场机器一多根本分不清;二是把访问密码设成强密码,别用数字 123456,工控机一旦接入网络就是攻击面。
3.4 ARM 工控机的替代思路
前面提过,ARM 平台上大概率没有官方包。这时候别硬来,有几个务实的方向。
第一,用系统自带的屏幕共享。GNOME 自带"屏幕共享"功能,本质是 VNC 协议,在设置里打开即可,局域网内可用。缺点是跨网段要自己做端口转发,弱网下体验一般。
第二,装第三方开源 VNC 服务端。这一类方案成熟稳定,配置也不算复杂,核心是设好密码、限制监听地址、配合网络策略使用。
第三,如果对带外管理要求高,考虑硬件方案,独立于操作系统,系统挂了也能看到画面。
这三条路各有取舍,我给的建议是:x86_64 优先用常规方案,ARM 平台先确认业务是否真的需要图形远程,很多时候一台机器只跑数据采集,SSH 加日志就够,别为了统一而强行上图形方案。
3.5 开机自启与守护配置
工控机断电重启是常态,自启必须配。这里有两层:一是系统启动后自动登录桌面,二是登录后自动拉起向日葵。
先看自动登录。编辑/etc/gdm3/custom.conf:
[daemon] AutomaticLoginEnable=true AutomaticLogin=icp WaylandEnable=false三个字段各有用处。AutomaticLogin填你的用户名,开机直接进桌面,跳过登录界面——这一步非常关键,因为向日葵的图形会话是绑定在用户会话上的,如果系统停在登录界面,程序起不来,远程就连不上。WaylandEnable=false是关掉 Wayland 回到 X11,解决黑屏问题,第 4 章细讲。
然后是程序自启。向日葵安装时通常会在/etc/xdg/autostart/下放一个.desktop文件,确认一下:
ls /etc/xdg/autostart/ | grep -i sun有的话就不用额外做,桌面登录后会自动拉起。没有的话自己写一个,放在同一目录:
[Desktop Entry] Type=Application Name=SunloginClient Exec=/usr/local/sunlogin/bin/sunloginclient X-GNOME-Autostart-enabled=true如果连这条路都走不通(比如桌面环境不是 GNOME、不认 xdg autostart),还可以用 systemd 兜底。注意 systemd 服务要指定DISPLAY和用户:
[Unit] Description=Sunlogin Client After=graphical.target network-online.target Wants=network-online.target [Service] Type=simple User=icp Environment=DISPLAY=:0 Environment=XAUTHORITY=/home/icp/.Xauthority ExecStart=/usr/local/sunlogin/bin/sunloginclient Restart=on-failure RestartDelay=10 [Install] WantedBy=graphical.target存成/etc/systemd/system/sunlogin.service,然后:
sudo systemctl daemon-reload sudo systemctl enable sunlogin.service sudo systemctl start sunlogin.service sudo systemctl status sunlogin.serviceRestart=on-failure这一行别省,工控机跑几个月,程序偶尔崩一次是正常的,有它托底能自己爬起来。
注意:systemd 服务和桌面自启不要同时配,两个实例抢同一个会话会出各种奇怪问题,比如托盘出两个图标、连上之后抢鼠标。选一种,配完验证,别贪多。
4. 黑屏、卡顿、连不上:排查实录
4.1 常见问题速查表
先把高频问题列成表,遇到的时候按图索骥,能省掉大量试错。
| 现象 | 最可能的原因 | 处理方向 |
|---|---|---|
| 连上了但全黑 | Wayland 会话,采集不到画面 | 切回 X11 |
| 连上了一直转圈 | 图形会话未建立 | 检查是否停在登录界面、配自动登录 |
| 画面定格不动 | 程序进程僵死 | 重启服务、看日志 |
| 分辨率异常、界面被裁 | 无头机器缺虚拟显示 | 配 xorg dummy |
| 托盘无图标 | 缺 libayatana-appindicator3 | 补依赖 |
| 反复掉线 | 网络抖动或带宽不足 | 降画质、查链路 |
| 提示被控端不在线 | 账号未登录或程序未启动 | 现场确认进程与登录状态 |
| 启动报库缺失 | 依赖不完整 | apt-get -f install |
这张表覆盖了我实际遇到过的八成情况。下面挑三个最费时间的展开讲。
4.2 黑屏问题:Wayland 与 X11 的取舍
黑屏是最高频的问题,没有之一。现象是连接成功、界面框架都出来了、鼠标也能动,但画面区域一片漆黑,或者只有壁纸没有窗口内容。
根因在 Wayland 的安全模型。Wayland 下应用之间是隔离的,一个应用想要读取整个屏幕的内容,需要走桌面环境提供的门户(portal)接口,而这个接口并不是所有场景都能用。第三方屏幕采集工具在这个模型下拿不到帧缓冲,自然就是黑的。
最直接的解法是切回 X11。改/etc/gdm3/custom.conf,把#WaylandEnable=false前面的注释去掉,重启。改完验证:
echo $XDG_SESSION_TYPE输出x11才算生效。如果还是wayland,说明配置文件没生效或者被别的地方覆盖了,检查一下是不是有其他 gdm 配置片段、或者用的是别的显示管理器。
切回 X11 有代价,最明显的是高分屏下的缩放体验会差一些,触控板的滑动手势也会退化。但对工控机来说这些都不重要,工控机基本都是固定分辨率、没有触控板,稳定性优先。在这个场景下,X11 是更务实的选择,不用纠结技术新旧。
还有一个大家容易忽略的点:即使切了 X11,如果机器是 headless 且没配虚拟显示,X11 也可能起不来。这两件事要一起做,只做一半没效果。
4.3 连不上或者连上就断的排查路径
这个问题要分层看,从下往上排。
第一步看进程在不在:
ps -ef | grep -i sunlogin没有输出说明程序根本没起,回去看自启配置。
第二步看会话在不在:
loginctl list-sessions who如果只有一个 tty 会话、没有图形会话,说明桌面没起来,问题不在向日葵。
第三步看日志。向日葵的运行日志通常在用户目录下:
ls -lt ~/.sunlogin/log/ | head tail -100 ~/.sunlogin/log/<最新的日志文件>日志里重点看连接建立阶段的报错,是认证失败、还是网络超时。认证失败一般是密码或者设备绑定问题;网络超时才是链路问题。
第四步看网络。工控机现场网络环境复杂,隔离、限速、只放行特定端口的情况都有。基础连通性先测:
ping -c 4 <网关> curl -I https://<服务地址>如果curl超时、ping通,说明出站被限了,这时候要跟现场网管对一下策略,别自己在机器上瞎改。
还有一种情况是"能连上,但过几分钟必断"。这种大概率是网络侧的会话保持策略,或者现场做了流量限制。可以在软件设置里把画质调低、关掉高清模式,减少带宽占用,观察是否改善。我遇到过一次是现场交换机端口协商有问题,半双工导致大流量时丢包严重,换了根网线解决——这种问题在软件层面怎么调都没用,得有耐心往物理层查。
4.4 权限与安全设置不能省
远程控制软件本身就是一个"能操作你机器"的入口,安全设置不能当摆设。几个必做的动作:
- 改默认端口/关闭不必要的功能:如果软件支持自定义端口,改掉默认值。
- 强密码 + 定期更换:不要用生日、不要用 123456、不要用设备型号。
- 开启二次验证:支持的话一定开,多一道门。
- 限制可控设备:很多版本支持"仅允许指定设备连接",把常用运维机加进去,其他一律拒绝。
- 物理隔离的机器也不能松懈:内网不等于安全,工控机经常被临时插 U 盘、接调试笔记本。
另外一个容易被忽略的是账号本身的权限。用普通用户跑远程工具,不要用 root。程序以 root 跑,一旦有漏洞,攻击者直接拿到最高权限。用普通用户跑,配合 sudo 做需要提权的操作,风险面小得多。
提示:交付文档里一定要写明这台机器的远程访问方式和密码管理规则,交接给现场运维的时候讲清楚。我见过太多"机器交付三个月,没人知道远程密码"的情况,最后只能派人去现场重置。
5. 长期运行的稳定性与运维习惯
5.1 无人值守场景的几个必配项
工控机最常见的部署形态是"装好就不管",这就要求我们把所有能自动化的都自动化。除了前面说的自动登录和自启,还有几件事值得做。
来电自启。工控机断电恢复后是否自动开机,取决于主板 BIOS 里的设置,一般叫Restore on AC Power Loss或AC Power Recovery,设成Power On。这个设置非常关键——现场停电恢复后,如果机器不自启,你远程再牛也连不上。我交付的每一台机器都会进 BIOS 确认这一项,并且在交付清单上打勾。
定时健康检查。写个简单的脚本,定时检查关键服务状态,异常时往日志里写一条,方便事后追溯:
#!/bin/bash LOG=/var/log/icp-health.log if ! pgrep -f sunloginclient > /dev/null; then echo "$(date '+%F %T') sunloginclient not running, restarting" >> $LOG DISPLAY=:0 /usr/local/sunlogin/bin/sunloginclient & fi配到 crontab 里,五分钟跑一次:
*/5 * * * * /usr/local/bin/health-check.sh注意脚本里要带DISPLAY=:0,因为 cron 环境没有图形变量。这是个很小的细节,但不加的话脚本永远拉不起图形程序,而且不会有任何报错,特别难查。
日志轮转。远程工具跑几个月,日志能堆到几个 G,把磁盘吃满。配个 logrotate,或者简单点在健康检查脚本里加一句清理老日志的逻辑。
5.2 分辨率与显示参数的调整技巧
工控机业务界面的分辨率往往是定死的,比如 1280x1024 或者 1920x1080。如果远程连上之后发现分辨率不对、界面被裁,处理路径是这样的。
先看当前输出:
xrandr会列出所有可用模式和当前激活的模式。如果需要的分辨率在列表里,直接用xrandr -s 1920x1080切。如果不在列表里,需要先用cvt生成 modeline:
cvt 1920 1080 60输出类似:
Modeline "1920x1080_60.00" 173.00 1920 2048 2248 2576 1080 1083 1088 1120 -hsync +vsync然后xrandr --newmode加进去,--addmode挂到输出上,最后切过去。这套流程写起来长,但真正操作就三条命令。
要持久化的话,别指望xrandr命令,它重启就丢。用前面第 2 章那种 xorg.conf 的方式固化,或者写进桌面环境的自启脚本里。我更倾向 xorg.conf,因为它在会话建立之前就生效,不依赖桌面环境。
5.3 升级与回滚策略
远程工具也会有版本更新,但工控机不是个人电脑,不能随便更。我的做法是:
升级前先记录当前版本和包名,写进变更记录。新版本先在测试机上跑一周,确认没引入新的依赖、没有改变启动方式、界面没大改,再推到现场。保留旧版本的安装包,出问题能立刻回滚。
回滚流程很简单:
sudo dpkg -r sunloginclient sudo dpkg -i SunloginClient-<旧版本>-amd64.deb sudo apt-get -f install -y卸载时用-r而不是-P,配置和登录信息会保留,回滚之后不用重新登录绑定,省事很多。
还有一个经验:别在业务高峰期升级。哪怕只是几分钟的断连,产线上也可能有影响。挑停机窗口做,做完立刻验证一次连接,确认没问题再离开。
5.4 交付前的验收清单
我给自己定了一套验收动作,每台机器交付前走一遍,五分钟能做完,但能挡掉后面大量的现场问题。
| 检查项 | 验证方式 | 通过标准 |
|---|---|---|
| 程序已安装 | dpkg -l | grep sunlogin | 显示已安装 |
| 架构匹配 | uname -m与包架构一致 | x86_64/amd64 |
| 显示服务 | echo $XDG_SESSION_TYPE | x11 |
| 分辨率正确 | xrandr查看当前模式 | 与业务需求一致 |
| 自动登录 | 重启后不出现登录界面 | 直接进桌面 |
| 程序自启 | 重启后ps -ef | grep sunlogin | 有进程 |
| 远程可连 | 用另一台设备实际连接一次 | 画面正常、可操作 |
| 文件传输 | 传一个文件到被控端 | 成功 |
| 断电自启 | 断电量恢复后确认 | 自动开机进系统 |
| 密码强度 | 人工确认 | 非弱密码 |
最后一项"远程可连"一定要用另一台设备真实连一次,不能只看状态显示在线。我遇到过一次状态显示在线、实际连上去黑屏的情况,就是因为只看了在线状态没实测。验收这一步偷懒,代价是现场跑一趟。
6. 几个踩出来的经验
说几个不是文档里能查到、但确实影响体验的点。
关掉终端的误区。很多人习惯用终端启动程序,然后关掉终端,程序跟着没了。要么加&配合nohup,要么配 systemd,要么就靠桌面自启。三种方式选一种,别混着用。
多个远程工具不要共存。同一台机器上如果同时装了 VNC 和向日葵,两边都在抢 X 会话,经常出现连上之后鼠标乱跳、画面不同步。留一个就够,实在要留两个,至少别让它们同时自启。
密码存在哪心里要有数。向日葵的登录信息和设备绑定关系存在用户目录下,换用户、重装系统、删了家目录,绑定就没了,得重新登录。做系统备份的时候记得把这块带上,或者提前把设备解绑,别等到重装完发现设备列表里挂着一个僵尸设备。
现场网络别乱动。有些朋友为了远程方便,会在工控机上装一些网络工具做转发。这个思路要慎重,工控机接的是生产网络,随便改动网络配置可能影响整条产线的通信,而且会带来额外的安全风险。优先用软件自身的能力解决可达性问题,实在不行走网络侧的正式变更流程,别在机器上私自加东西。
日志是第一手证据。出了问题先看日志,别急着改配置。我见过不少人一看连不上就去改防火墙、改端口、重装软件,改了一圈发现是账号在另一台机器上登着,顶掉了。日志里其实第一行就写着。
留一份现场操作卡。打印一张 A4,写上这台机器的 IP、用户名、远程工具的设备名、管理员联系方式、断电恢复后的检查步骤,贴在电柜门内侧。现场师傅不一定会用命令行,但照着卡片能确认"灯亮不亮、程序在不在",能大幅降低沟通成本。这个做法看起来土,但实际效果非常好。