普通用户需加入dialout组或临时赋权才能读取/dev/ttyusb0:执行sudo usermod -ag dialout $user后重新登录;或用sudo chmod a+r /dev/ttyusb0临时授权。验证用ls -l /dev/ttyusb*和stty -f /dev/ttyusb0。

在统信UOS系统中,普通用户默认无法读取/dev/ttyUSB0,尝试访问时会提示“Permission denied”,必须让当前用户获得对该串口设备的读取权限才能正常通信。
将用户加入dialout组(推荐)
这一步是统信UOS官方支持的标准做法,修改后永久生效,无需每次插拔都重复操作。
打开终端,执行以下命令:
sudo usermod -aG dialout $USER
其中 【$USER 是自动替换为当前登录用户名,不要手动改成 root 或其他名字】。
执行完成后,必须重新登录系统(或注销再登录),新组权限才会加载生效。旧终端窗口即使运行 groups 命令也看不到 dialout,这是正常现象。
临时赋予读取权限(仅限调试)
如果只是快速验证串口是否连通、不想重启或注销,可用此方法立即生效,但设备重插或系统重启后失效。
在终端中运行:
sudo chmod a+r /dev/ttyUSB0
这条命令给所有用户(all)添加读取(read)权限,不改动写入和执行权限,比 chmod 777 更安全。
注意:若系统中存在多个 ttyUSB 设备(如 ttyUSB0、ttyUSB1),需对每个设备单独执行一次该命令。
验证权限是否生效
第一步:确认设备节点是否存在且可读
ls -l /dev/ttyUSB*
输出中应看到类似 crw-rw---- 1 root dialout ... ttyUSB0 的行,重点检查末尾是否有 “dialout” 组名,以及组权限位是否含 “r”(即 rw-)。
第二步:测试当前用户能否打开设备
stty -F /dev/ttyUSB0
若无报错并返回当前串口参数(如 speed 9600 baud; ...),说明读取权限已就绪;若提示 “Permission denied”,请返回第一步检查是否完成重新登录。











