จะเปลี่ยนชื่ออินเตอร์เฟซ Ethernet ได้อย่างไร?


11

เนื่องจาก Ubuntu ในตัวของฉันไม่ได้รับการสนับสนุนจาก Ubuntu เพราะติดตั้งมาก่อนฉันถูกบังคับให้ใช้ USB NIC สำหรับการเชื่อมต่ออินเทอร์เน็ตชั่วคราวขณะติดตั้ง

และสาย USB NIC ได้เอาeth0ชื่อทำในตัว NIC eth1ที่จะกลายเป็น

แน่นอนว่านี้ไม่ได้เรื่องจริงๆ แต่สำหรับระบบ "น่ารัก" ผมอยากeth1ที่จะกลายเป็นeth0ปล่อยให้ NIC แนบใด ๆ eth1ที่เพิ่งจะกลายเป็น

เป็นไปได้ไหม

คำตอบ:


10

มันเป็นไปได้. กรุณาทำ:

gksudo gedit /etc/udev/rules.d/70-persistent-net.rules 

สลับ eth0 และ eth1 พิสูจน์อักษรอย่างระมัดระวังบันทึกและปิด gedit ใช้โปรแกรมแก้ไขข้อความอื่น ๆ หากคุณไม่มี gedit รีบูตทันทีและคุณควรจะตั้งค่าทั้งหมด


7
... และก่อนอื่นทำการสำรองไฟล์
Rinzwind

7
สำหรับเร็กคอร์ดนี้ถูกต้องสำหรับ 14.04 แต่ 70-persistent-net.rules ไม่มีอยู่ใน Ubuntu 15.10 อีกต่อไป ดูaskubuntu.com/questions/689501สำหรับวิธีแก้ปัญหาที่ใช้กับ Ubuntu 15.10, 16.04 และใหม่กว่า
richvdh

มันอาจจะถูกต้องสำหรับ 14.04 มีฟลักซ์เล็กน้อยในบริเวณนี้ในรีลีสล่าสุด
richvdh

คุณถูก. เมื่อสิ่งนี้ถูกโพสต์ในปี 2012 มันเป็นขั้นตอนที่ถูกต้อง ขั้นตอนนี้เช่นเดียวกับสิ่งอื่น ๆ มีการเปลี่ยนแปลงใน 15.10 และอื่น ๆ
chili555

11

สิ่งนี้เปลี่ยนชื่อ em1 เป็น eth0 สำหรับฉันบน Ubuntu 14.04:

# Note: replace xx:xx... in the rule with the MAC address of your Nic>    
$ sudo vim /etc/udev/rules.d/75-persistent-net-generator.rules

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

# Change "em1" to "eth0" in your interfaces file.
$ sudo vim /etc/network/interfaces

$ sudo reboot

เครดิต: คำตอบของ Billf ที่นี่: https://bbs.archlinux.org/viewtopic.php?id=156375

FYI นี่คือสิ่งที่ฉันเห็นในตอนแรก:

$ sudo grep eth0 /var/log/dmesg
[    2.976463] e1000e 0000:00:19.0 eth0: registered PHC clock
[    3.003714] e1000e 0000:00:19.0 eth0: (PCI Express:2.5GT/s:Width x1) 18:03:73:e9:f2:36
[    3.031177] e1000e 0000:00:19.0 eth0: Intel(R) PRO/1000 Network Connection
[    3.058399] e1000e 0000:00:19.0 eth0: MAC: 10, PHY: 11, PBA No: E041FF-0FF
[    3.153759] systemd-udevd[167]: renamed network interface eth0 to em1

ดูเหมือนว่า systemd-udevd กำลังทำงานเชิงลบและเปลี่ยนชื่อ eth0 เป็น em1 ตั้งแต่แรก ไม่แน่ใจว่าจะห้ามไม่ให้ทำอย่างนั้น แต่การเปลี่ยนชื่อกลับเป็น eth0 นั้นใช้งานได้

สำหรับผู้ที่ต้องการทราบข้อมูลเพิ่มเติม ... http://linux.dell.com/files/whitepapers/consistent_network_device_naming_in_linux.pdf


1
ขอบคุณมากสำหรับสิ่งนี้ คนอื่น ๆ ทั้งหมดดูเหมือนจะพลาดประเด็น
sjas

0

ใน Ubuntu Server 16.04LTS 70-persistent-net.rules ไม่มีอยู่และโพสต์จำนวนมากไม่ได้ช่วยอะไร หลังจาก 4 ชั่วโมงของการค้นหาฉันมาด้วยวิธีนี้และทำให้ฉันตกใจจริงๆมันใช้งานได้จริง!

sudo ln -s / dev / null /etc/udev/rules.d/80-net-setup-link.rules

จากนั้นสร้างไฟล์โดยใช้ sudo vi /etc/systemd/network/10-internet.link และเพิ่มสิ่งต่อไปนี้

[จับคู่] Path = pci-0000: (ที่อยู่ mac ของอุปกรณ์)

[ลิงก์] ชื่อ = eth0 (หรือสิ่งที่คุณต้องการตั้งชื่อ)

: wq เพื่อบันทึกไฟล์

จากนั้นรีบูตและปรับไฟล์ / etc / network / interfaces ของคุณ .. จากนั้นรีบูทอีกครั้ง

หวังว่านี่จะช่วยใครซักคน


ใช้งานไม่ได้ และไม่ควร AFAIU
jno

ไม่ทำงาน, ไม่เป็นผล. เพิ่งทดสอบกับ 16.04 lts
Kendrick
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.