socat努力创建串行端口

时间:2019-09-07 10:57:22

标签: port socat

出于测试目的,我想使用 socat 创建要在我的Python程序中使用的虚拟串行端口。

我取得的成功有限,但是在socat中有很多选择却一次又一次地挣扎。我在Ubuntu Linux中使用以下命令:

sudo socat -d -d  pty,b9600,raw,echo=0,link=/dev/ttyS90    pty,b9600,raw,echo=0,link=/dev/ttyS91 

它应该创建/ port / pts / 2和4之类的虚拟端口,并将它们链接到/ dev / ttyS90和* 91。如果没有sudo,它将无法工作(尽管普通用户在拨出组中,但无法取消* 90,* 91端口的链接)。

enter image description here

但是,正如您看到的那样,权限“ lrwxrwxrwx”看起来像是对所有人的读/写。但是,事实并非如此:除非我是root用户,否则我不能使用这些设备。文件管理器(= Nemo)给出以下结果:

enter image description here

权限明显不同。嗯?

发出“ sudo chmod 777 / dev / ttyS90”(* 91相同)后,终端输出中没有任何变化,因为它已经(但不正确地)显示了777权限,但是Nemo输出更改为

enter image description here

现在我可以以普通用户的身份使用端口了!怎么会?我在做错什么吗?

还有另一个socat问题:上面的socat命令提供了8位无奇偶校验连接,但是我确实需要7位偶数奇偶校验连接。我通过兼顾许多选项中的一些来实现此目的的尝试均以失败告终。我迷路了;有见识吗?

1 个答案:

答案 0 :(得分:0)

尝试更改/dev/pts/2/dev/pts/4而不是链接的权限