如何显示为当前引导给出的 Linux 内核命令行参数?

col*_*mik 86 linux linux-kernel

grub.conf配置文件中,我可以指定内核将使用的命令行参数,即:

kernel /boot/kernel-3-2-1-gentoo root=/dev/sda1 vga=791
Run Code Online (Sandbox Code Playgroud)

启动给定内核后,有没有办法显示首先传递给内核的命令行参数?我找到了 sysctl,

sysctl --all
Run Code Online (Sandbox Code Playgroud)

但是 sysctl 显示了所有可能的内核参数。

mrb*_*mrb 132

$ cat /proc/cmdline
root=/dev/xvda xencons=tty console=tty1 console=hvc0 nosep nodevfs ramdisk_size=32768 ip_conntrack.hashsize=8192 nf_conntrack.hashsize=8192 ro  devtmpfs.mount=1 
$
Run Code Online (Sandbox Code Playgroud)


Cir*_*郝海东 11

内核还在引导开始时打印它们,请参阅:

dmesg | grep "Command line"
Run Code Online (Sandbox Code Playgroud)

示例输出:

[    0.000000] Command line: BOOT_IMAGE=/vmlinuz-4.4.0-112-generic root=/dev/mapper/vg00-root ro
Run Code Online (Sandbox Code Playgroud)

如果您正在破解某些东西并且内核崩溃而不是启动,这可能是有关串行的有用信息:-)

相关:如何找到正在运行的内核使用的引导参数?| 询问 Ubuntu