Linux:如何强制USB设备使用相同的ttyUSB编号

15

我有一个在Ubuntu上使用的USB调制解调器,并且我有一个程序,它使用它的 ttyUSBxx 号与该设备进行通信。

我的问题是每次我拔出/插入设备或者重启电脑时,该设备都会获得一个新的 ttyUSB 号,例如: ttyUSB0ttyUSB1

我如何强制该设备始终使用同一个号码(比如说: ttyUSB0)?

1个回答

15

udev是Linux的动态设备管理器。 udev会存储与您插入的设备相关的信息,并且您可以修改此信息,以便在该设备的目录中添加特定的“符号链接”。

现在,您的USB调制解调器的定义应位于文件夹/etc/udev/rules.d/中,文件名将类似于50-udev.rules。该文件每个设备有一行(您可以使用许多工具来帮助识别正确的行。请参阅下面关于使用udevinfo的链接)。

现在,您可以编辑相关行,或者更好的方法是创建另一个文件并将相关行复制到其中。文件名应以较小的数字开头(例如49-my-modem.rules),以使其首先加载。您需要在行末添加以下内容:

, SYMLINK="ttyUSBmodem"

现在,您的设备应该会显示为/dev/ttyUSBmodem(还有动态分配的/dev/ttyUSB[0-9]).

如需更多有关识别正确行和整个过程的帮助,请参见此处:http://noctis.de/archives/16-HowTo-fixed-name-for-a-udev-device.html

希望这能帮到您。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接