手动修改 Ubuntu(15)SRV版网卡设备默认名字

来源:互联网 发布:可视化 软件 编辑:程序博客网 时间:2024/04/29 11:54

  《手动修改 Ubuntu(15)SRV版网卡设备默认名字》

                                                                                                           2016-04-28  17:32



     从CentOS/RHEL7,或Ubuntu 13开始起,对于网卡设备可预见的命名规则变成了默认。这一规则,接口名称被自动基于固件,拓扑结构和位置信息来确定。 设备名可能出现诸如:enp3s0 或 wlp2s0 这样的古怪,不好记忆,也不能预测。  

    但是相应的好处是,即使添加或移除网络设备,接口名称仍然保持固定,而无需重新枚举,和坏掉的硬件可以无缝替换。
    这样一来,虽然有好处,但也影响了不少用户的操作,因为新的命名方案接口名称比传统的eth0相比有点难以阅读。出于习惯等一些原因,你想修改网卡名称。

   我看到网上有的文章片段提到可以屏蔽这一特性,具体做法是创建一个假的链接

  禁用 Predictable Network Interface Names 特性
 代码:
    sudo ln -s /dev/null /etc/udev/rules.d/80-net-setup-link.rules


 然后片段里提到以下做法,似乎就不太可行:
 在 /etc/systemd/network/ 中手动创建 .link 指定名称。具体参考   http://www.freedesktop.org/software/systemd/man/systemd.link.html

  [参考]
     http://www.freedesktop.org/wiki/Software/systemd/PredictableNetworkInterfaceNames/
     https://onemoretech.wordpress.com/2014/08/18/disable-renaming-of-network-interfaces/




 1.  在过去 Ubuntu 13 里, 我会如此这样做: 首先, 我要知道目前网卡叫做什么名字, 以及它的 MAC地址是多少。 可以用 ip link 命令实现。

  然后 2. 创建 /etc/udev/rules.d/70-persistent-net.rules 文件(如果原来有,请备份之)
    里面填写内容如下举例

# This file was automatically generated by the /lib/udev/write_net_rules
# program run by the persistent-net-generator.rules rules file.
#
# Place into /etc/udev/rules.d,  70-persistent-net.rules
#
# You can modify it, as long as you keep each rule on a single line.

# PCI device 0x10ec:0x8168 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0b:ab:85:db:b3", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"

# PCI device 0x10ec:0x8168 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:0b:ab:85:db:b4", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"

# PCI device 0x1106:0x3106 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1b:21:34:05:35", ATTR{type}=="1", KERNEL=="eth*", NAME="cap1"

# PCI device 0x1106:0x3106 (tg3)
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:07:e9:04:24:40", ATTR{type}=="1", KERNEL=="eth*", NAME="cap2"


   在上面例子当中, 分别替换进真正的 MAC地址 , 以及修改对应的 ethxx 名字就可以了。


 3.  但是, 在 Ubuntu 15 里,上面的方法又变的行不通了, 又找了一下网上的线索,,,  提示说:

      remove "KERNEL" item, it would be successfully.
 
   试了下,果然还真的行,,  又能愉快地做游戏了 :)

  内容举例如下:

 # PCI device 0x10ec:0x8168 (tg3)
 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="94:de:80:fa:e3:ab", ATTR{type}=="1",  NAME="eth1"
 
 SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="ac:7b:a1:c6:bd:99", ATTR{type}=="1",  NAME="wlan7"

    




   参考:  http://forum.ubuntu.org.cn/viewtopic.php?t=474160  




0 0
原创粉丝点击