操作場景
為了避免使用私有鏡像創建的新云主機發生網卡名稱漂移,在創建私有鏡像時,需要清理云主機或鏡像文件所在虛擬機的網絡規則文件。
說明
使用外部鏡像文件制作私有鏡像時,清理網絡規則文件操作需要在虛擬機內部完成,建議您在原平臺的虛擬機實施修改后,再導出鏡像。
前提條件
云主機已安裝操作系統和virtio驅動。
操作步驟
- 執行以下命令,查看網絡規則目錄下的文件。
ls -l /etc/udev/rules.d
- 執行以下命令,刪除網絡規則目錄下,文件名同時包含persistent和net的規則文件。
例如:
rm /etc/udev/rules.d/30-net_persistent-names.rules
rm /etc/udev/rules.d/70-persistent-net.rules
以上命令中斜體部分會根據用戶的實際環境有區別。
說明
對于CentOS 6系列的鏡像,為避免網卡名發生漂移,您需要創建一個空的rules配置文件。
示例:touch /etc/udev/rules.d/75-persistent-net-generator.rules? ?//命令中斜體部分會根據用戶的實際環境有區別
- 清理網絡規則。
? 若操作系統使用initrd系統映像,請執行以下操作:
i. 執行以下命令,查看initrd開頭且default結尾的initrd映像文件,是否存在同時包含persistent和net的網絡設備規則文件(以下命令中斜體內容請以實際操作系統版本為準)。
lsinitrd /boot/initrd-2.6.32.12-0.7-default |grep persistent|grep net
- 否,結束。
- 是,執行3.ii。
ii. 執行以下命令,備份initrd映像文件(以下命令中斜體內容請以實際操作系統版本為準)。
cp /boot/initrd-2.6.32.12-0.7-default /boot/initrd-2.6.32.12-0.7-default_bak
iii. 執行以下命令,重新生成initrd映像文件。
mkinitrd
? 若操作系統使用initramfs系統映像(如Ubuntu),請執行以下操作:
i. 執行以下命令,查看initrd開頭且generic結尾的initramfs映像文件,是否存在同時包含persistent和net的網絡設備規則文件。
lsinitramfs /boot/initrd.img-3.19.0-25-generic|grep persistent|grep net
- 否,無需清理網絡規則。
- 是,執行3.ii。
ii. 執行以下命令,備份initrd映像文件。
cp /boot/initrd.img-3.19.0-25-generic /boot/initrd.img-3.19.0-25-generic_bak
iii. 執行以下命令,重新生成initramfs映像文件。
update-initramfs -u