内核编译的步骤及遇到的问题

分类: LINUX

linux内核编译,2.6.38内核测试有效,时间2013-7-31。

1 下载源码:

https://www.kernel.org/,我下载当时最新的 2.6.38版本。

2 解压:

下载下来的文件名为;linux-2.6.38.tar.gz,将下载的文件放在 /usr/src/目录中。
在这里要强调一下编译时会占用大量的磁盘空间(几个G),可以用df -hl查看一下,要是解压文件所在分区较小,可有将编译的源代码放入别的较大的分区,然后编译,要不在编译过程中会出现磁盘空间不足的错误。

3 编译前配置:

tar解压之后会生成一个目录, linux-3.10.4, 进入目录,就是源码的根目录了。
# cd /usr/include 
# rm -Rf asm linux 
# ln -s /usr/src/linux/include/asm-i386 asm 
# ln -s /usr/src/linux/include/linux linux 
# ln -s /usr/src/linux/include/scsi scsi 
编译前配置就相当于对linux内核进行一些裁剪定制,增加自己需要的模块,删除自己不需要的模块。
make menuconfig
如果是新手,这一步可以直接忽略。

4 编译:

       建立编译时的所需的从属文件
make dep
清除内核编译的.o文件
make clean
编译 
make bzImage

5 安装内核模块:

       make modules
make modules_install 

6 安装内核:

安装内核就会把新编译生成的内核文件,拷贝到/boot 目录下,并且自动帮你配置好启动文件。
ma ke install 

7 使用新内核:

直接重启电脑,然后选择新编译的内核启动即可。
reboot
选择3.10.4内核启动。在启动过程中遇到问题 mount: could not find filesystem ‘/dev/root’, 编 译时修改.config文件中的“CONFIG_SYSFS_DEPRECATED_V2”“CONFIG_SYSFS_DEPRECATED”,默认该选项为not set,被注释掉的,将其改为y。即修改为“CONFIG_SYSFS_DEPRECATED_V2=y”和“CONFIG_SYSFS_DEPRECATED=y”,修改后,再编译,重启即正常了。                                                                                                                   
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值