1

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

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

  • 重新启动后,设置消失了,必须重新应用
  • 该程序是故意用java制作的,旨在易于使用(和跨平台),没有安装麻烦。我不想通过使用 sudo chgrp、将他们的组添加到 dialout 组或在 /etc/rc.xml 中添加 chgrp-command 之类的东西来混淆我未来的用户。

问题是:

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

干杯,塔里克

4

1 回答 1

2

在您描述的情况下,您应该将您的用户添加到拨出组。组通常用于赋予用户特定的访问权限,例如对设备文件的读/写访问。

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

于 2013-05-26T09:28:05.057 回答