2011-11-02 23 views
13

Tôi có một modem USB mà tôi sử dụng trên Ubuntu. Tôi cũng có một chương trình liên lạc với thiết bị này sử dụng số ttyUSBxx của nó.Linux: cách buộc thiết bị USB sử dụng cùng số ttyUSB

Vấn đề của tôi là mỗi khi tôi rút phích cắm/cắm lại thiết bị hoặc khi tôi khởi động lại PC, thiết bị sẽ nhận được số ttyUSB mới, ví dụ: ttyUSB0 hoặc ttyUSB1.

Làm cách nào để buộc thiết bị này luôn sử dụng cùng một số (ví dụ: ttyUSB0)?

Trả lời

14

udev là trình quản lý thiết bị động của Linux. udev vẫn tiếp tục thông tin về các thiết bị bạn cắm vào và bạn có thể sửa đổi thông tin này để thêm thông tin 'liên kết tượng trưng' cụ thể trong thư mục cho thiết bị này.

Bây giờ, định nghĩa của modem usb phải nằm trong thư mục /etc/udev/rules.d/ và tên tệp sẽ là một cái gì đó như 50-udev.rules. Tệp có chứa một dòng cho mỗi thiết bị, (bạn có thể sử dụng một số công cụ để giúp xác định đúng dòng. Xem liên kết bên dưới về cách sử dụng udevinfo)

Bây giờ, bạn có thể chỉnh sửa dòng thích hợp hoặc thậm chí tốt hơn, tạo tệp khác và sao chép đường liên quan vào nó. Tên tệp phải bắt đầu bằng số thấp hơn (ví dụ: 49-my-modem.rules), để tên tệp được tải trước. Bạn cần phải thêm dòng sau vào cuối dòng:

, SYMLINK="ttyUSBmodem" 

Bây giờ, điện thoại của bạn sẽ hiện ra như /dev/ttyUSBmodem (là tốt như động assinged/dev/ttyUSB [0-9])

Đối trợ giúp thêm với việc xác định đúng dòng và toàn bộ quá trình, xem tại đây: http://noctis.de/archives/16-HowTo-fixed-name-for-a-udev-device.html

HTH

Các vấn đề liên quan