/usr/share/genkernel/default/busy-config。
6 . 如何追踪mount命令的执行过程?
这个问题,从简说明一下。initramfs里执行mount命令,其实是由busybox提供的,也就是说,mount实际上是指向busybox的一个符号链接。而busybox里,实现mount功能少不了kernel里对文件系统的支撑,相关的实现代码在/var/tmp/portage/sys-kernel/debian-sources-3.2.29/work/linux-3.2.29/fs/namespace.c里。
7 . kernel是如何被配置的?
与busybox不同,kernel的配置不完全归genkernel管。在ebuild里,调用genkernel之前,生成一个config文件放在/var/tmp/portage/sys-kernel/debian-sources-3.2.29/temp/config,调用genkernel时,通过--kernel-config="/var/tmp/portage/sys-kernel/debian-sources-3.2.29/temp/config"来指定。因此,要在这个文件里查验内核的配置情况,genkernel kernel之前,要需临时修改配置进行实验,也要修改这个文件。
而对于genkernel来说,如果没有指定--kernel-config=,最优先使用/etc/kernels/带版本号的kernel-config,然后会优先使用/usr/share/genkernel/arch/x86_64/下有带相应版本号的kernel-config,次优先使用/usr/share/genkernel/default/kernel-config,最后会尝试/usr/share/genkernel/arch/x86_64/kernel-config。最后生成的/var/tmp/portage/sys-kernel/debian-sources-3.2.29/work/build/.config。