/proc/config.gz 是 0 字节

Tiw*_*ari 5 linux kernel proc files

我有一个 Android TV stck 我从https://github.com/Galland/rk3x_kernel_3.0.36为 IT 编译了 Linux

但是当我启动该映像时,我发现 /proc/config.gz 是 0 字节

有人可以解释一下内核源代码中 .config 文件中的命令行参数是如何挂载到 /proc 的。我的意思是在后台发生了什么?

Vol*_*gel 7

中的文件/proc通常没有文件大小,并且在 中显示为 0 大小ls -l,但无论如何您都可以从中读取数据(请参阅 参考资料man 5 proc)。

尝试,例如:

zcat /proc/config.gz | wc

或者:

$ ls -l /proc/cmdline
-r--r--r-- 1 root root 0 Aug  4 10:16 /proc/cmdline
Run Code Online (Sandbox Code Playgroud)

看起来很空。但:

$ cat /proc/cmdline | wc
      1       5     114
Run Code Online (Sandbox Code Playgroud)

它包含数据。让我们来看看:

$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-3.13.0-24-generic root=UUID=fc48808f-8f06-47fc-a1fe-5d08ee9e0a50 ro noirqdebug nomodeset
Run Code Online (Sandbox Code Playgroud)

感觉就像一个普通的文件——除非你想做任何特别的事情,比如按块读取、seek() 或查看大小。


如果您无法读取/proc/config.gz,则有一个文件通常包含相同内容:

less /lib/modules/$(uname -r)/build/.config

详情请参阅man proc