注:
- Oracle 提供的免费实验室环境中提供了本教程。
- 它使用 Oracle Cloud Infrastructure 身份证明、租户和区间示例值。完成实验室后,请使用特定于您的云环境的这些值替换这些值。
管理 Oracle Linux 的引导内核
简介
本教程介绍了如何从命令行设置 Oracle Linux 系统的默认内核。本教程针对 Oracle Linux 8 用户,但其他 Oracle Linux 发行版也提供了这些命令。
背景信息
默认情况下,Oracle Linux 系统配置为首先引导最新的内核版本。在大多数情况下,无需更改缺省内核。
在以前的发行版中,通过配置 GRUB 引导装载程序或使用其他替代命令来执行设置默认内核。但是,现在,您应该最好使用 grubby 命令来控制和管理所有引导要求。此工具提供了可编写脚本的优点,并且可以从用户抽象引导装载程序配置。
目标
在此实验室中,您将学习:
- 确定当前装入的内核
- 确定默认内核
- 确定系统上可用的内核版本
- 使用 grubby 管理内核
需要做哪些准备?
- 安装有
grubby
软件包的任何 Oracle Linux 系统
检查可用内核
注:使用免费实验室环境,有关连接和其他使用说明,请参见 Oracle Linux Lab Basics。
有多种方法可用于检查系统中可用的内核:
-
使用 rpm 命令。
sudo rpm -qa kernel*
请注意,命令输出还包括其他与内核相关的软件包,因此可能会感到困惑。
-
列出
/boot
目录中的内核。sudo ls -l /boot/vmlinuz*
此命令生成系统上可用的内核的准确列表。但是,由于命名内核的方式,系统当前使用的内核版本无法轻松识别。
-
在特定内核上使用 grubby 命令或使用 ALL 选项。
sudo grubby --info /boot/vmlinuz-4.18.0* sudo grubby --info=ALL
该命令提供有关与系统
/boot
目录中的每个内核关联的引导配置的更完整的信息。详细信息基于 GRUB 标题配置。
通常,命名内核以包括上游版本号和分发构建编号。Oracle Linux 上的内核名称还包含指示它们是否为标准 RHCK 或者是否基于 UEK。此外,这些名称还标识了其系统体系结构。例如,el8
后缀表示 RHCK,而 el8uek
表示 UEK。
检查当前默认内核
要检查哪些内核已配置为引导时使用的当前缺省内核,请运行:
sudo grubby --default-kernel
要检查系统上当前运行的内核,请运行:
sudo uname -r
如果缺省内核和当前运行的内核不相同,基本原因可能是以下原因之一:
- 安装了较新的内核,但是系统尚未重新引导。
- 在系统重新引导期间,已手动选择备用内核作为操作内核。
- 默认内核已手动更新,但更新后尚未重新引导系统。
更改默认内核
要切换到其他缺省内核,请运行以下命令,确保指定指定缺省内核的完整路径:
grubby --set-default /boot/vmlinuz-5.2.14-1937.el8uek.x86_64
更改将在系统重新引导后立即生效并持续生效。
grubby 命令具有用于配置内核和引导操作的其他引导参数。有关更多信息,请参阅文档。
更改内核命令行引导参数
使用 --update-kernel
选项结合使用 --args
更新 kenel 条目以添加新参数,或者使用 --remove-arguments
删除现有参数。可以在带引号的空格分隔列表中为每个选项指定多个参数。您可以在同一操作中添加和删除参数。
要更新特定内核,请提供 --update-kernel
选项以及要更新的内核的完整路径。要更新所有内核条目以使用特定的内核引导参数,可以设置 --update-kernel=ALL
。
在本教程中,您可以更新所有内核条目以更改日志级别和 LANG 参数:
grubby --update-kernel=ALL --args "loglevel=3,LANG=en_GB.UTF-8"
使用 grubby info=ALL 命令检查更改是否在内核中实现:
grubby --info=ALL
视频演示
https://www.youtube.com/watch?v=a0zXGhzPRp8 提供了介绍性视频,其中概述了内核和底层系统体系结构,并演示了如何使用 grubby 命令切换内核。
如果需要有关在 Oracle Linux 8 上使用 GRUB2 的更多信息,请参见 https://www.youtube.com/watch?v=0dv87RFGcKI 中提供的更高级的视频演示和教程。
请注意,本教程不介绍 grubby 命令的使用,并说明 grubby 与其交互的底层组件。对于 Oracle Linux 上的大多数内核管理要求,grubby 工具就足够了。
其他信息
grubby(8)
手册页- Oracle Linux 8:管理核心系统配置
- Oracle Linux 8 文档
- Oracle Linux 和 Unbreakable Enterprise Kernel (UEK) 发行版
更多学习资源
在 docs.oracle.com/learn 上浏览其他实验室,或者在 Oracle Learning YouTube 渠道上访问更多免费学习内容。此外,访问 education.oracle.com/learning-explorer 以成为 Oracle Learning Explorer。
有关产品文档,请访问 Oracle 帮助中心。
Manage the Boot Kernel for Oracle Linux
F24269-13
August 2022
Copyright © 2021, Oracle and/or its affiliates.