Ubuntu:写入串行端口:权限被拒绝

Ubuntu:写入串行端口:权限被拒绝

我已经连接了 USB 至串行桥接加密狗,并且运行dmesg | grep tty输出了以下内容:

[    0.000000] console [tty0] enabled
[603199.380677] usb 2-2: cp210x converter now attached to ttyUSB0

所以现在我正尝试按照上一个问题的答案运行以下命令:

cat hello.txt > /dev/ttyUSB0

sudo cat hello.txt > /dev/ttyUSB0

但两者都会导致以下错误:

bash: /dev/ttyUSB0: Permission denied

我究竟做错了什么?

谢谢

答案1

如果您仍想使用 sudo 访问端口,则问题在于cat以 root 权限运行,但重定向不是。尝试cat hello.txt | sudo tee /dev/ttyUSB0。这将使用tee工具,以 root 身份运行。它既输出到 stdout(终端),也输出到指定的目标(在本例中为串行端口)。

答案2

我记得默认情况下,Ubuntu 上的串行端口属于“dialout”组。您可以通过运行以下命令将自己添加到此组:

sudo gpasswd --add jodes dialout

您可能需要注销并重新登录才能使其生效,但这样做之后,您应该能够从串行端口(包括 USB 到串行转换器)读取和写入。

相关内容