3.2. initrd:修改初始 ramdisk
有些情况可能需要您修改初始 ramdisk。例如,您可能需要在内省或置备过程中引导节点时特定的驱动程序可用。在 overcloud 上下文中,这包括以下 ramdisk 之一:
-
内省 ramdisk -
ironic-python-agent.initramfs
-
置备 ramdisk -
overcloud-full.initrd
此流程将额外的 RPM 软件包添加到 ironic-python-agent.initramfs
ramdisk 中作为示例。
流程
以
root
用户身份登录,再为 ramdisk 创建临时目录:mkdir ~/ipa-tmp cd ~/ipa-tmp
# mkdir ~/ipa-tmp # cd ~/ipa-tmp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 使用
skipcpio
和cpio
命令,将 ramdisk 提取到临时目录:/usr/lib/dracut/skipcpio ~/images/ironic-python-agent.initramfs | zcat | cpio -ivd | pax -r
# /usr/lib/dracut/skipcpio ~/images/ironic-python-agent.initramfs | zcat | cpio -ivd | pax -r
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 将 RPM 软件包安装到提取的内容:
rpm2cpio ~/RPMs/python-proliantutils-2.1.7-1.el7ost.noarch.rpm | pax -r
# rpm2cpio ~/RPMs/python-proliantutils-2.1.7-1.el7ost.noarch.rpm | pax -r
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重新创建新的 ramdisk:
find . 2>/dev/null | cpio --quiet -c -o | gzip -8 > /home/stack/images/ironic-python-agent.initramfs chown stack: /home/stack/images/ironic-python-agent.initramfs
# find . 2>/dev/null | cpio --quiet -c -o | gzip -8 > /home/stack/images/ironic-python-agent.initramfs # chown stack: /home/stack/images/ironic-python-agent.initramfs
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 验证新软件包现在存在于 ramdisk 中:
lsinitrd /home/stack/images/ironic-python-agent.initramfs | grep proliant
# lsinitrd /home/stack/images/ironic-python-agent.initramfs | grep proliant
Copy to Clipboard Copied! Toggle word wrap Toggle overflow