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-tmpCopy 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 -rCopy 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 -rCopy 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.initramfsCopy 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 proliantCopy to Clipboard Copied! Toggle word wrap Toggle overflow