发布于2026-08-18 阅读(0)
扫一扫,手机访问
在这个实验中,你将学习如何检查 Linux 中特定的内核启动选项是否已启用。我们将探讨三种实现此目的的关键方法。
首先,你需运用 CODE0 命令来查看当前启动会话期间传递给内核的命令行参数。接着,你得检查位于 CODE1 的GRUB配置文件,以明晰其中一些启动选项的配置位置。最后,你要使用 CODE2 命令检查启动日志,以此了解内核如何解释和应用这些启动选项。完成这些步骤后,你将掌握诊断和理解Linux系统启动过程的实用技能。
在这一步中,我们将探讨如何查看 Linux 系统启动时使用的启动选项。这些信息存储在 CODE_0 文件系统中的一个特殊文件里。
CODE_0 文件系统是 Linux 中的一个虚拟文件系统,它提供有关进程和其他系统信息。它并不在你的磁盘上包含真实的文件,而是提供了一个查看内核数据结构的窗口。
我们感兴趣的文件是 CODE_0。这个文件包含了在启动时传递给内核的命令行参数。这些参数可以影响内核的行为以及它检测到的硬件。
为了查看这个文件的内容,我们将使用 CODE0 命令。CODE1 命令是一个用于显示文件内容的简单实用工具。
如果终端尚未打开,请打开它。你可以通过点击桌面左侧的 Xfce Terminal 图标来完成此操作。
现在,输入以下命令并按下回车键:
cat /proc/cmdline
你将看到类似于以下的输出:
BOOT_IMAGE=/boot/vmlinuz-... root=UUID=... ro console=ttyS0,... quiet splash vt.handoff=7
确切的输出会根据你系统的配置而有所不同,但它会显示正在启动的内核映像 (CODE0)、根文件系统的位置 (CODE1) 以及其他选项,如 CODE2(初始为只读文件系统)、CODE3 和 CODE_4。
理解这些启动选项有助于排查启动问题或配置特定的内核行为。
请记住,CODE_0 是一个由内核生成的动态文件,因此其内容反映了当前的启动会话。
点击 继续 以进入下一步。
在上一步中,我们查看了内核启动 之后 传递给它的命令行参数。现在,让我们来看看其中一些参数可能的来源:GRUB 配置文件。
GRUB(GRand Unified Bootloader,通用引导加载程序)是一个引导加载程序。它的主要任务是将操作系统内核加载到内存中并将控制权传递给它。GRUB 配置文件决定了引导菜单选项、默认操作系统和内核参数。
在许多 Linux 系统上,GRUB 的主要配置文件是 CODE_0。这个文件包含用于生成实际 GRUB 引导菜单配置的设置。
我们将再次使用 CODE_0 命令来查看这个文件的内容。
如果终端尚未打开,请打开它。
输入以下命令并按下回车键:
cat /etc/default/grub
你将看到类似于以下的输出:
```plaintext
## If you change this file, run 'update-grub' afterwards to update
## /boot/grub/grub.cfg.
## For full documentation of the options in this file, see:
## info -f grub -n 'Simple configuration'
GRUB_DEFAULT=0
GRUB_TIMEOUT_STYLE=hidden
GRUB_TIMEOUT=0
GRUB_DISTRIBUTOR=CODE0
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash"
GRUB_CMDLINE_LINUX=""
## Uncomment to enable booting from a full graphics screen using grub-gfxpayload
#GRUBGFXPAYLOADLINUX=keep
## Uncomment to disable graphical terminal (grub-pc only)
#GRUB_TERMINAL=console
## The resolution used on graphical terminal
## needs to be in the format e.g. 640x480 or 800x600 or 1024x768
## and your graphics card needs to support it. A list of all a vailable resolutions can
## be found with 'videoinfo' command in grub.
#GRUB_GFXMODE=640x480
## Uncomment if you don't want GRUB to pass "root=UUID=xxx" parameter to Linux
#GRUBDISABLEUUID=true
## Uncomment to disable generation of recovery mode menu entries
#GRUBDISABLERECOVERY="true"
## Uncomment to get a beep at grub start
#GRUBINITTUNE="480 440 1"
```
查找以 CODE0 开头的行。这里列出的选项(如 CODE1)通常会在启动时传递给内核,你可能在上一步 CODE_2 的输出中看到过它们。
这个文件很重要,因为它允许你配置默认的内核参数,而不必在每次启动时手动输入。
重要提示: 如果你在真实系统上对这个文件进行更改,通常需要在之后运行 CODE0 以将更改应用到实际的引导配置文件 (CODE1)。然而,在这个实验环境中,我们只是查看文件。
点击 继续 以继续。
在这最后一步中,我们将使用 CODE_0 命令查看内核环形缓冲区消息。内核环形缓冲区存储来自内核的消息,包括有关硬件检测、设备驱动程序以及启动过程中发生的系统事件的信息。
CODE_0 命令用于显示这些消息。它是诊断硬件问题或了解系统启动期间发生了什么的重要工具。
如果终端尚未打开,请打开它。
输入以下命令并按下回车键:
dmesg
这个命令可能会输出一长串消息。这些消息是内核在初始化并与系统的硬件和软件进行交互时生成的。
你将看到类似于以下的输出(确切的输出会有很大差异):
[ 0.000000] Linux version ... (buildd@lcy02-amd64-...) (gcc-...) #...-Ubuntu SMP ...
[ 0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-... root=UUID=... ro console=ttyS0,... quiet splash vt.handoff=7
[ 0.000000] KERNEL supported cpus:
[ 0.000000] Intel GenuineIntel
[ 0.000000] AMD AuthenticAMD
...
[ 1.234567] usbcore: registered new interface driver usbfs
[ 1.234567] usbcore: registered new interface driver hub
[ 1.234567] usbcore: registered new device driver usb
...
注意,输出中包含内核版本和命令行参数,这与我们在 CODE_0 中看到的类似。
由于 CODE0 的输出可能很多,通常将其通过管道传递给 CODE1 或 CODE_2 等分页器,以便逐屏查看。
试试这个命令:
dmesg | less
现在你可以使用箭头键在输出中上下滚动。按 CODE0 退出 CODE1。
你还可以使用 CODE_0 过滤输出,以搜索特定的关键字,如 "error" 或硬件设备的名称。
例如,要查看与 USB 设备相关的消息:
dmesg | grep -i usb
这个命令将只显示包含 "usb" 的行(由于 CODE_0 标志,搜索不区分大小写)。
探索 CODE_0 输出是 Linux 系统管理和故障排除的一项基本技能。
点击 继续 完成此实验。
在这个实验中,我们学习了如何通过检查 CODE_0 文件来确认 Linux 中内核启动选项是否已启用。该文件动态展示了当前启动会话期间传递给内核的命令行参数,让你了解系统的启动方式和初始配置。
我们还通过查看 GRUB 配置文件 CODE_0,开始探寻这些启动选项的来源。在系统启动前,该文件是定义内核启动参数的关键位置。
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
售后无忧
立即购买>office旗舰店
正版软件
正版软件
正版软件
正版软件
正版软件
1
2
3
4
5
6
7
8
9