Làm cách nào để đổi tên giao diện mạng trong 15.10?


35

Tôi đã quyết định thực hiện cài đặt sạch 15.10 và kết quả là cần phải cài đặt lại MATLAB. Giấy phép MATLAB được gắn với địa chỉ phần cứng eth0.

Thẻ Ethernet của tôi được liệt kê là enp1s0 và tôi cần đổi tên nó thành eth0. chỉ lo được liệt kê trong /etc/network/interfaces/etc/udev/rules.d/70-persistent-net.ruleskhông tồn tại, vì vậy tôi không chắc bắt đầu từ đâu.


1
Bạn có thể xác định udevquy tắc để đổi tên giao diện vì eth0..lets cho biết địa chỉ MAC của giao diện là xx:XX:xx:YY:yy:ZZbạn có thể tạo một tệp trong /etc/udev/rules.d/ví dụ 99-rename-net.rulesvà đặt SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="xx:XX:xx:YY:yy:ZZ", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"vào tệp..nếu bạn không biết địa chỉ MAC thì bạn có thể lấy địa chỉ đó. từ /sys/class/net/enp1so/addresstập tin ..
heemayl

@heemayl nếu bạn thêm nhận xét đó dưới dạng câu trả lời, thì mọi người có thể nhận xét về nó dễ dàng hơn và thảo luận về lý do tại sao nó có vẻ hiệu quả với một số người chứ không phải cho người khác. Ôm!
Jonathan Hartley

Câu trả lời của @ heemayl trong nhận xét trên không phù hợp với tôi, trên bản cài đặt Ubuntu 15.10 mới.
Jonathan Hartley

Ở trên, @jdnz đã đề xuất sử dụng .linkcác tệp của systemd , nhưng một số người khác cho rằng điều này không hiệu quả với họ. Nó hầu như không hoạt động vì sau khi chỉnh sửa các tệp liên kết, các initramfs phải được cập nhật . Vì vậy, hãy theo dõi câu trả lời của @ jndz trước, sau đó làm theo câu trả lời tôi đã liên kết ở trên.
Pinja-Liina Jalkanen

Câu trả lời:


29

Giải pháp của tôi cho vấn đề này là tạo một tệp /etc/udev/rules.d/10-rename-network.rulescó nội dung:

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="ff:ff:ff:ff:ff:ff", NAME="eth0"

1
DID này hoạt động với tôi trên Ubuntu 15.10 (không giống như các câu trả lời và nhận xét được bình chọn cao hơn cho câu hỏi)
Jonathan Hartley

1
@ steve-mohan Đây là câu trả lời đúng và nên được đánh dấu là chính xác.
Hubro

5
Điều này thực sự hoạt động kể từ ngày 16.04.
EnzoR

Vì đây là câu trả lời hàng đầu - chỉ muốn lưu ý những gì thực sự hiệu quả với tôi .. đã phải thay đổi cấu hình grub và tạo lại lệnh khởi động để vô hiệu hóa việc đổi tên các giao diện mạng như được mô tả ở đây: itzgeek.com/how-tos/ mini-howtos /
Gặp

1
Làm việc cho tôi vào 16.04. ff: ff: ff: ff: ff: ff cần được thay thế bằng địa chỉ MAC.
Ken Shirriff

7

Tôi đã có cùng một vấn đề và thêm các tập tin để /etc/udev/rules.d/không giúp đỡ. Vấn đề dường như nằm ở việc sử dụng Tên Giao diện Mạng Dự đoán như được mô tả ở đây . Để tạo sơ đồ đặt tên thủ công của riêng bạn, nghĩa là đặt tên thiết bị của bạn là "eth0" cho MATLAB, bạn có thể tạo các .linktệp của riêng mình /etc/systemd/network/như được mô tả ở đây .

Cụ thể, tôi đã tạo một tệp /etc/systemd/network/10-eth.linkcó nội dung

[Match]
MACAddress=ff:ff:ff:ff:ff:ff
[Link]
Name=eth0

thay thế ff:ff:ff:ff:ff:ffbằng địa chỉ MAC của thiết bị tôi muốn thay đổi. Sau khi khởi động lại, tên như mong muốn.


1
Điều này không làm việc cho tôi và tôi rất muốn biết tại sao.
richvdh

1
Điều này không hiệu quả với tôi trên Ubuntu 15.10
Jonathan Hartley

1
Điều này sẽ không hoạt động kể từ 16.04.
EnzoR

6

Nếu vì bất kỳ lý do nào, câu trả lời được đề xuất bởi @zab không phù hợp với bạn, bạn cũng có thể vô hiệu hóa sơ đồ đặt tên này giống như được thực hiện ở đây . Nhưng phương pháp được đề xuất bởi @zab có khả năng an toàn hơn

Tôi chỉ không bao gồm biosdevname = 0 cho đối số dòng lệnh, nó dường như bị tắt theo mặc định.

Các bước sau đây có thể được thực hiện:

$ sudo nano /etc/default/grub

Tại dòng GRUB_CMDLINE_LINUX thêm net.ifnames = 0

GRUB_CMDLINE_LINUX="[previous parameters] net.ifnames=0"

Sau đó tạo tệp grub mới:

$ sudo grub-mkconfig -o /boot/grub/grub.cfg

Vào cuối hệ thống khởi động lại.


1
Bạn có thể vui lòng giải thích để câu trả lời này sẽ vẫn hữu ích nếu liên kết đó không có sẵn trong tương lai?
Zanna

@Zanna Thế là xong
Dmitriy Kozlov

2
Sau vô số lần thử mọi thứ trên toàn bộ internet, đây là thứ cố định ethernet cho tôi. Tình huống của tôi (đối với Tìm kiếm của Google trong tương lai) không có ethernet sau khi cài đặt Linux Mint (hoặc Ubuntu) qua Serva / PXE vì bộ điều hợp mạng ngu ngốc sử dụng tên giao diện mạng có thể dự đoán thay vì eth0. Các hướng dẫn đã được tìm thấy ở đây: itzgeek.com/how-tos/mini-howtos/ triệt
ThePCpenguin

Cho đến hôm nay (với tất cả các bản cập nhật được cài đặt), nó hoạt động. Cảm ơn bạn.
Erutan409

2

Điều này làm việc cho tôi trên máy chủ 16.04 vì eno1 đã hiển thị khi tôi làm ifconfig -a. Tôi đã phải đưa ra giao diện như ifconfig eno1 upsau đó tôi đã làm như sau:

vi /etc/udev/rules.d/10-network.rules

SUBSYSTEM=="net", ACTION=="add", ATTR{address}=="ff:ff:ff:ff:ff:ff", NAME="eth0"

Điều này có thay đổi tên ngay lập tức, hoặc chỉ sau khi khởi động lại?
Xen2050

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.