如何在Linux中固定ttyUSB设备 (linux 固定ttyu)

USB串口是用于连接电脑和其他设备的电缆接口,可以用于连接串口、打印机等各种外部设备。在Linux系统中,串口设备通常被挂载在“/dev/ttyUSBx”目录下,其中x代表端口号。但是,每次拔插USB设备时,该设备可能会随机分配一个ttyUSB端口,这可能会给使用该设备的程序带来困扰。因此,本文将介绍。

一、查看当前ttyUSB设备

要查看当前系统中可用的ttyUSB设备,可以在终端中运行以下命令:

“`

ls /dev/ttyUSB*

“`

该命令会列出当前系统中所有的ttyUSB设备,结果类似于“/dev/ttyUSB0 /dev/ttyUSB1”等。请记住这些设备的名称,因为我们将在后面的步骤中使用它们。

二、创建udev规则

要将ttyUSB设备与固定的名称关联起来,需要创建一个udev规则。udev是一个处理Linux内核中设备事件的系统工具,可以用于设置设备的权限、名称等信息。在这里,我们将使用udev规则来为特定的ttyUSB设备创建符号链接,以确保它们总是分配到相同的设备文件名。

1.在终端中运行以下命令创建udev规则文件:

“`

sudo nano /etc/udev/rules.d/01-u-serial.rules

“`

该命令将打开一个空的文本编辑器,并为新的udev规则文件指定了一个名称“/etc/udev/rules.d/01-u-serial.rules”。

2.在编辑器中输入以下内容:

“`

SUBSYSTEM==”tty”, ATTRS{idVendor}==””, ATTRS{idProduct}==””, SYMLINK+=”ttyUSB_”

“`

请注意,上述命令中的“”和“”应分别替换为您的USB设备的供应商ID和产品ID。这些值可以使用以下命令在终端中获取:

“`

udevadm info -a -p $(udevadm info -q path -n /dev/ttyUSB0)

“`

该命令将返回一个包含供应商ID和产品ID的长列表。您需要仔细查找列表,以找到与您的设备匹配的ID值,并将其替换为上面的命令中的占位符。

此外,您还需要将“”替换为您要为设备创建的符号链接的名称。例如,如果您希望将设备命名为“modem”,则应将命令中的“”替换为“modem”。

3.保存文件并退出编辑器。

4.在终端中运行以下命令,以重新加载udev规则文件:

“`

sudo udevadm control –reload-rules

“`

现在,每次插入您的USB设备时,udev都会为它创建一个符号链接“/dev/ttyUSB_”,而不是随机地址。

三、测试符号链接

1.插入您的USB设备,并运行以下命令以查看新符号链接是否已创建:

“`

ls -l /dev/ttyUSB*

“`

您应该会看到一个带有您为设备指定的名称的符号链接文件(例如“/dev/ttyUSB_modem”)。

2.将USB设备从计算机上拔出,并重新插入它。再次运行相同的命令,以确保相应的符号链接(例如“/dev/ttyUSB_modem”)已恢复。

相关问题拓展阅读:

Linux普通用户运行串口

将USB串口设备插入USB口后,会在/dev/目录下生成/dev/ttyUSB0文件(也可能为/dev/ttyUSB1,/dev/ttyUSB2…),

查看此文件

输出为:

c说明表明设备为字符设备文件(d表示目族掘录文件,-表示普通文件,l表示链接文件,b表示块文件),

其中rw-rw—-表示root用户作为文件所有者可以读和写,dialout用户组内的用户可以读和搜穗兆写,其他用户不允许读、写和执行(r表示可读,w表示可写世租,x表示可执行)

因此,需要将当前用户增加到dialout用户组中

关于linux 固定ttyu的介绍到此就结束了,不知道你从中找到你需要的信息了吗 ?如果你还想了解更多这方面的信息,记得收藏关注本站。


数据运维技术 » 如何在Linux中固定ttyUSB设备 (linux 固定ttyu)