使用应用程序访问串行端口在Flatpak中运行

时间:2016-12-20 22:37:58

标签: serial-port monodevelop sandbox ubuntu-16.04 flatpak

我最近使用Flatpak将我的IDE更新为Monodevelop 6,在Ubuntu 16.04 LTS上使用旧版本5。

我有一个与串口交互的应用程序,它基本上是一个USB / RS232适配器,将设备连接到我的电脑。

当我在Monodevelop5中调试应用程序时,我没有问题访问USB端口(/ dev / ttyUSB0)。但是,我使用Monodevelop6访问的设备目录(/ dev /)与我在Linux中访问的设备目录(/ dev /)完全不同,并且该文件夹中没有ttyUSB0。

我相信这是因为Flatpak在沙盒中运行应用程序。那么,如果是这个原因,我怎么才能访问串口呢?

感谢。

1 个答案:

答案 0 :(得分:5)

很可能是因为Flatpak阻止了对串行设备的访问。

不幸的是,目前我认为没有办法专门为串行设备提供访问权限,因此您需要授予所有人访问权限:

$ flatpak run --device=all com.xamarin.MonoDevelop

这样做主要是将主机的/dev安装在沙箱中,因此应用程序可以完全访问它。

这是沙盒中的一个相当大的漏洞,但有时需要它才能实现所有权限处理。