解决 ubuntu 重启串口号变化

在多个串口设备连接ubuntu时,每次开机,串口号总是互相串,导致无法正常使用

解决这个问题的办法就是将串口的唯一序号和他的符号链接进行绑定,即可每次开机保证串口是唯一的

例如现在有两个串口

复制代码
jetson@nano:~$ ls /dev/ttyUSB*
/dev/ttyUSB0  /dev/ttyUSB1

通过这个命令查看USB0串口的唯一序号

复制代码
jetson@nano:~$ udevadm info -a -n /dev/ttyUSB0 | grep -E "idVendor|idProduct|serial|manufacturer"
    SUBSYSTEMS=="usb-serial"
    ATTRS{idProduct}=="7523"
    ATTRS{idVendor}=="1a86"
    ATTRS{idProduct}=="5411"
    ATTRS{idVendor}=="0bda"
    ATTRS{manufacturer}=="Generic"
    ATTRS{manufacturer}=="Linux 4.9.253-tegra xhci-hcd"
    ATTRS{idProduct}=="0002"
    ATTRS{serial}=="70090000.xusb"  <---这个就是串口唯一序号
    ATTRS{idVendor}=="1d6b"

USB 1 同理,记录其串口唯一序号

然后创建udev rules文件

复制代码
sudo touch /etc/udev/rules.d/99-serial.rules

编辑它

复制代码
sudo gedit /etc/udev/rules.d/99-serial.rules

输入内容

复制代码
SUBSYSTEM=="tty", ATTRS{serial}=="70090000.xusb", SYMLINK+="imu"

SUBSYSTEM=="tty", ATTRS{serial}=="0001", SYMLINK+="lidar"

ATTRS{serial}= 填写串口唯一序号

SYMLINK+= "" 双引号内填写串口符号链接名称 例如 "imu" ,那么符号链接就是 /dev/imu

编写完成后重新载入

复制代码
sudo udevadm control --reload-rules

sudo udevadm trigger

拔插串口,查看符号链接是否生效

复制代码
jetson@nano:~$ ls /dev/imu 
/dev/imu
jetson@nano:~$ ls /dev/lidar 
/dev/lidar

搞定!

相关推荐
航Hang*2 分钟前
VMware vSphere 云平台运维与管理基础——第2章(扩展):VMware ESXi 5.5 安装、配置与运维
运维·服务器·github·系统安全·虚拟化
嵌入式吴彦祖4 分钟前
Luckfox Pico Ultra W WIFI
linux·嵌入式硬件
SPC的存折18 分钟前
MySQL 8组复制完全指南
linux·运维·服务器·数据库·mysql
运维行者_19 分钟前
OpManager MSP NetFlow Analyzer集成解决方案,应对多客户端网络流量监控挑战
大数据·运维·服务器·网络·数据库·自动化·运维开发
sszdzq37 分钟前
docker 安装 doris
运维·docker·容器
dashizhi20152 小时前
共享文件禁止拖动本地磁盘、共享文件禁止另存为、禁止打印共享文件、禁止复制共享文件的方法
运维·服务器·网络·安全·电脑
Linux技术芯2 小时前
Refault Distance算法详解
linux
0vvv02 小时前
linux-软件安装
linux
IMPYLH2 小时前
Linux 的 nproc 命令
linux·运维·服务器·bash
AC赳赳老秦3 小时前
OpenClaw email技能:批量发送邮件、自动回复,高效处理工作邮件
运维·人工智能·python·django·自动化·deepseek·openclaw