我有一个 Android TV stck,我从中编译了 Linux for IThttps://github.com/Galland/rk3x_kernel_3.0.36
但是当我启动该映像时,我发现 /proc/config.gz 是 0 字节
请解释一下内核源中 .config 文件中的命令行参数如何安装到 /proc。我的意思是后台发生了什么?
答案1
中的文件/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
看上去空荡荡的。但:
$ cat /proc/cmdline | wc
1 5 114
它包含数据。让我们来看看:
$ cat /proc/cmdline
BOOT_IMAGE=/boot/vmlinuz-3.13.0-24-generic root=UUID=fc48808f-8f06-47fc-a1fe-5d08ee9e0a50 ro noirqdebug nomodeset
感觉就像一个普通文件 - 除非您想做任何特殊的事情,例如按块读取、seek() 或查看大小。
如果您无法读取/proc/config.gz
,有一个文件通常包含相同的内容:
less /lib/modules/$(uname -r)/build/.config
看man proc
了解详情。