使连接到 udp rs232 串行设备的 socat 链接持久化的最佳方法是什么?

问题描述

我有一个连接,似乎可以将 RS232 串行设备连接到以太网服务器(硬件设备)。我想让它持久化。最好的方法是什么?我现在正在使用这个命令:

sudo socat pty,link=/dev/ttySx udp:192.168.1.50:23

我想让它一直保持打开状态,包括重新启动后,这样我就可以与设备 /dev/ttySx 通话,但我不确定这样做的最佳方法

编辑:我在 Ubuntu 18.04 上运行这个

解决方法

您可以尝试设置 systemd 服务。创建一个诸如 /etc/systemd/system/myttySx.service 之类的文件,例如:

[Unit]
Description=socat ttySx to udp
After=network-online.target
[Service]
Restart=restart-always
RestartSec=10
ExecStart=/usr/bin/socat pty,link=/dev/ttySx udp:192.168.1.50:23
[Install]
WantedBy=multi-user.target

并启用它并以root身份启动它(仅一次):

systemctl daemon-reload
systemctl enable myttySx
systemctl start myttySx

Ubuntu 18.04 上的 systemd 有点旧,所以这对于那个版本可能不正确。请与systemctl status myttySx核对。在一个新问题中发布每个问题,以便其他人可以回答。