Hệ thống nhân bản + giao diện mạng


9

Tôi đã tạo một hình ảnh về hệ thống của mình và tôi đã đưa nó cho ai đó để chạy. Họ đã xóa thành công hệ thống của họ bằng hình ảnh và đang chạy nó.

Vấn đề như sau:

Hệ thống thường có 2 Bộ điều hợp không dây. Cả hai hiển thị trong lsusb:

pi@raspberry:~ $ lsusb
Bus 001 Device 004: ID 7392:7811 Edimax Technology Co., Ltd EW-7811Un 802.11n Wireless Adapter [Realtek RTL8188CUS]
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter

Tôi đã thiết lập các giao diện trong các /etc/udev/rules.d/70-persistent-net.rulestệp theo địa chỉ mac hoặc hw của chúng và nó hoạt động tốt trên hệ thống của tôi, nhưng trên hệ thống của anh ấy, rõ ràng (trong khi anh ấy sử dụng cùng loại và kiểu phần cứng) thì chúng khác nhau và như vậy, mac của anh ấy địa chỉ là khác nhau, vì vậy 70-net.rules của anh ấy là vô dụng và đang cho anh ấy các vấn đề.

Để tránh điều này trong tương lai, có một cách tôi có thể đặt nó để nó có thể tìm loại mô hình, nói:

 EW-7811Un -> wlan0
 SMSC9512 -> wlan1

và thiết lập những cái đó, thay vì dựa vào địa chỉ mac?

Câu trả lời:


12

Ba octet đầu tiên trong một địa chỉ MAC xác định duy nhất nhà sản xuất thiết bị. Quy tắc Udev cho phép bạn khớp bất kỳ số lượng ký tự nào với dấu hoa thị. Do đó, bạn có thể viết quy tắc chung phù hợp với bất kỳ thiết bị nào của nhà cung cấp cụ thể:

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="74:2f:68*", NAME="wlan0"

Ngoài ra, bạn có thể dừng khớp trên địa chỉ và sử dụng các tham số khác thay thế. Chạy lệnh sau trên cả hai máy tính:

sudo udevadm info -a -p /sys/class/net/wlan0

(tất nhiên thay thế tên của giao diện) và xem những giá trị phổ biến bạn thấy; sau đó sử dụng chúng trong các quy tắc của bạn.

Viết quy tắc udev có lẽ là tài liệu tốt nhất về chủ đề này.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.