如何永久更改/ dev / ttyS0的权限?

我的系统是Ubuntu 13.04,它工作正常,但我已经安装了VirtuaBox来运行Windows XP,这对我运行一个与USB-to-Serial适配器的警报设置对话的应用程序至关重要。

VirtualBox使用ttyS0作为串行端口,只有在命令sudo chmod 666 /dev/ttyS0被赋予终端时,通信才能有效启动。

每次启动Ubuntu时, ttyS0权限都会返回默认值,每次启动时都必须运行chmod

我的问题是:如何永久更改/ dev / ttyS0文件权限? 如果这不是一个好习惯,还有其他方式来解决这个问题吗?

无需更改系统文件的权限。 串行设备具有以下默认权限:

 crw-rw---- 1 root dialout ... /dev/ttyS0 

所以你要做的就是将用户添加到dialout组:

 sudo adduser $USER dialout 

解决方案1:检查ttyS0组,然后将其分配给您的用户,然后重新登录或su – user

 crw-rw---- 1 root dialout 4, 64 feb 28 18:23 /dev/ttyS0 usermod -aG dialout youruser su - youruser 

解决方案2:如果您不喜欢第一个解决方案,请编辑/etc/udev/rules.d/50-tty.rules

 KERNEL=="tty[AZ]*[0-9]|pppox[0-9]*|ircomm[0-9]*|noz[0-9]*|rfcomm[0-9]*", GROUP="whateveryouwant" 

重新启动udev或重启,当然在将用户添加到选定的组之前