手斧Linux – 从LFS到Funtoo (135)

本文详细解析了Linux内核配置的过程以及mount命令的执行机制,深入探讨了busybox与kernel之间的关系,以及如何追踪mount命令的执行过程。通过分析initramfs和busybox的作用,解释了mount命令如何指向busybox,并进一步介绍了如何在genkernel中配置内核,以及如何通过修改特定文件来实验不同的内核配置。
摘要由CSDN通过智能技术生成

/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。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值