linux – 如何编写持久网名的规则?
我知道一个进程根据/lib/udev/rules.d/75-persistent-net-generator.rules中的规则生成持久的网卡名称.我也知道如何用一个简单的方法完全禁用这个过程
echo '#' > /etc/udev/rules.d/75-persistent-net-generator.rules 但我已经读过“我也可以编写自己的规则文件来为接口命名 – 如果已经设置了名称,持久规则生成器会忽略接口”(/etc/udev/rules.d/README确认这个有可能). 您能否提供有关如何编写此类规则的说明和/或示例? (我主要关心的是Debian / Ubuntu,而且对CentOS的关注度较低).在我的情况下,我想添加如下规则: > MAC A或B的卡应命名为eth0 作为我想编写自定义规则的一个具体示例:我有两个相同的服务器,一个板载LAN和一个PCI LAN.在HW故障的情况下,我希望能够将硬盘从HW#1移动到HW#2,并且eth0继续指向板载卡和eth1到PCI卡是很重要的(没有人想要在中间插入电缆)硬件故障恐慌).我当前的解决方法有效,但是很多工作[1]所以我想知道编写自定义规则是否允许我表达上述规则 [1]在HW#1中安装操作系统并保留/etc/udev/rules.d/70-persistent-net.rules的副本.将磁盘移动到HW#2并保留同一文件的第二个副本.连接两个副本并手动编辑NAME =“ethX”部分.用我的版本替换/etc/udev/rules.d/70-persistent-net.rules.最后禁用使用自动创建新的70-persistent-net.rules echo '#' > /etc/udev/rules.d/75-persistent-net-generator.rules 解决方法
要回答您的具体问题,请将此添加到persistent-net.rules:
SUBSYSTEM=="net",ACTION=="add",DRIVERS=="?*",ATTR{address}=="AA:AA:AA:AA:AA:AA",ATTR{dev_id}=="0x0",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0" SUBSYSTEM=="net",ATTR{address}=="BB:BB:BB:BB:BB:BB",ATTR{address}=="CC:CC:CC:CC:CC:CC",NAME="eth1" SUBSYSTEM=="net",ATTR{address}=="DD:DD:DD:DD:DD:DD",NAME="eth1" 单独留下persistent-net-generator.rules. udev不会覆盖您手动添加的规则,但生成器规则会像往常一样为新卡添加新规则. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- 如何从Linux命令行连接到VPN?
- linux – 防止子串中的Bash单词拆分
- 权限 – 以模式777以root身份打开文件时权限被拒绝
- linux – dmesg时间vs系统时间不正确
- linux – Open Firmware Device Trees的概述/参考手册
- linux – 使用xfs,20个磁盘和Ceph的“大型”服务器上的页面
- linux – 将10分钟的cron作业添加到Ubuntu包
- linux – ZFS数据集在重新启动时消失
- linux – /usr/include/gnu/stubs.h:7:27:错误:gnu / stu
- linux – 如何在使用GNU Parallel的Bash脚本中避免SIGCHLD错