第 19 章 使用命令行在 ARM 上安装 Kernel-64k
默认情况下,RHEL 9 与支持 4k 页面大小的内核一起分发。这个 4k 内核对于较小环境中或小的云实例中的有效内存使用足够了,其中由于空间、电源和成本约束,使用 64k 页内核是不现实的。
如果您已经安装了带有默认内核的 RHEL(支持 4k 页大小),您可以在安装后使用命令行安装 kernel-64k
。
不建议在不重新安装操作系统的初始引导后在 4k 和 64k 页大小内核之间移动。
流程
以 root 用户身份打开终端,并输入:
# dnf -y install kernel-64k
要将
kernel-64k
设置为默认,请输入:# k=$(echo /boot/vmlinuz*64k) # grubby --set-default=$k \ --update-kernel=$k \ --args="crashkernel=2G-:640M"
设置系统引导顺序,来将 RHEL 用作默认选项。
获取当前的引导顺序。例如:
# efibootmgr BootCurrent: 0000 Timeout: 5 seconds BootOrder: 0003,0004,0001,0000,0002,0005 Boot0000\* Red Hat Enterprise Linux
设置引导顺序,来优先考虑 RHEL。例如,对于上一步中的输出,请使用以下命令:
# efibootmgr -o 0000,0001,0002,0003,0004,0005
重启系统:
# reboot
可选:重启后,删除 4k 内核:
# dnf erase kernel
当您使用
yum update
命令在以后更新内核时,意外保留这两个版本可能会使 4k 内核成为默认。
验证
要验证页大小,请打开终端并以任何用户身份运行以下命令:
$ getconf PAGESIZE 65536
输出
65536
表示 64k 内核正在使用。要验证是否启用了 swap,请输入:
$ free total used free shared buff/cache available Mem: 35756352 3677184 34774848 25792 237120 32079168 Swap: 6504384 0 6504384
total 和 free 列非零,这表示交换被成功启用。