15.4. 使用 引导装载程序 RHEL 系统角色收集引导装载程序配置信息
您可以使用 bootloader
RHEL 系统角色自动收集有关 GRUB2 引导装载程序条目的信息。这样,您可以快速确定您的系统设置为正确引导,所有条目都指向正确的内核和初始 RAM 磁盘镜像。
因此,您可以:
- 防止引导失败。
- 在故障排除时恢复到已知良好状态。
- 确保与安全相关的内核命令行参数配置正确。
先决条件
- 您已准备好控制节点和受管节点。
- 以可在受管主机上运行 playbook 的用户登录到控制节点。
-
用于连接到受管节点的帐户具有
sudo
权限。
流程
创建一个包含以下内容的 playbook 文件,如
~/playbook.yml
:--- - name: Configuration and management of GRUB2 boot loader hosts: managed-node-01.example.com tasks: - name: Gather information about the boot loader configuration ansible.builtin.include_role: name: rhel-system-roles.bootloader vars: bootloader_gather_facts: true - name: Display the collected boot loader configuration information debug: var: bootloader_facts
有关 playbook 中使用的所有变量的详情,请查看控制节点上的
/usr/share/ansible/roles/rhel-system-roles.bootloader/README.md
文件。验证 playbook 语法:
$ ansible-playbook --syntax-check ~/playbook.yml
请注意,这个命令只验证语法,不会防止错误但有效的配置。
运行 playbook:
$ ansible-playbook ~/playbook.yml
验证
在控制节点上运行前面的 playbook 后,您会看到类似的命令行输出,如下例所示:
... "bootloader_facts": [ { "args": "ro crashkernel=1G-4G:256M,4G-64G:320M,64G-:576M rd.lvm.lv=rhel/root rd.lvm.lv=rhel/swap $tuned_params quiet", "default": true, "id": "2c9ec787230141a9b087f774955795ab-5.14.0-362.24.1.el9_3.aarch64", "index": "1", "initrd": "/boot/initramfs-5.14.0-362.24.1.el9_3.aarch64.img $tuned_initrd", "kernel": "/boot/vmlinuz-5.14.0-362.24.1.el9_3.aarch64", "root": "/dev/mapper/rhel-root", "title": "Red Hat Enterprise Linux (5.14.0-362.24.1.el9_3.aarch64) 9.4 (Plow)" } ] ...
命令行输出显示以下有关引导条目的显著配置信息:
args
- 在引导过程中由 GRUB2 引导装载程序传递给内核的命令行参数。它们配置内核、initramfs 和其他引导时组件的各种设置和行为。
id
- 在引导装载程序菜单中分配给每个引导条目的唯一标识符。它由机器 ID 和内核版本组成。
root
- 要挂载内核的根文件系统,并在启动过程中使用 作为主文件系统。
其他资源
-
/usr/share/ansible/roles/rhel-system-roles.bootloader/README.md
file -
/usr/share/doc/rhel-system-roles/bootloader/
directory - 使用 Playbook
- 使用变量
- 角色
- 了解引导条目