使用/ dev / ttyS0等串行端口和简单的用户权限

时间:2013-05-26 09:24:30

标签: linux

我在UBUNTu 12.04。我想在用户模式下运行一个程序(准确地说,一个java程序),它使用PC的串口。打开串口/ dev / ttyS0,它总是抛出一个端口繁忙的异常,这是不正确的:

由于权限,它无法使用该端口。该端口属于root / dialout。当我手动将ttyS0组设置为用户所属的组时,它运行良好。但是有两个缺点:

  • 重启后,设置消失,必须重新应用
  • 该程序是故意用java编写的,旨在易于使用(和跨平台)而不会出现安装问题。我不想通过使用sudo chgrp来混淆我未来的用户,将他们的组添加到拨出组或者在/ etc / rc中添加chgrp命令。

问题是:

如何管理,允许具有用户权限的程序访问串行端口而无需(过多)用户的活动要求?欢迎java程序内外的解决方案: - )

干杯, 拉茶

1 个答案:

答案 0 :(得分:2)

如果您描述的话,您应该将用户添加到拨出组。组通常用于为用户提供特定的访问权限,例如对设备文件的读/写访问权。

当您想要分发软件时,我没有看到简单的解决方案。系统管理员负责设置用户和组关系,并确保用户具有执行程序所需的权限。