确定内核版本
首先,确定你要使用的内核版本,一般情况下,建议使用最新版本的。
截至到今天,gentoo的最新内核版本是: v2.6.24-gentoo-r4
你也可以通过以下指令获取最新的版本。
emerge -s gentoo-source
如果你已经在正常使用gentoo,那么,新版本也会在你更新emerge时,被下载下来。
emerge -avtuDN world
具体内核的位置在 /usr/src 下
当你经常update merge时,这个目录下应该会有各种版本的内核,所以,我们要建立一个软连接,到我们需要
编译的内核上。
比如,上面的 linux 指向到了 /usr/src/linux-2.6.24-gentoo-r4
配置编译选项
如果你是第一次编译,或者没有保存 .config 编译选项配置文件。
那么请到内核目录下(/usr/src/linux)先运行一下:
make defconfig
生成默认的配置文件。
它可以为我们节省很多定制时间,但是,只采用默认配置,往往都是有问题。
比如cpu类型和文件系统,网卡驱动这些很容易产生兼容性问题,所以最好还是自己经手定制过。
定制内核编译选项:
make menuconfig
1,cpu类型
这里选择根目录下的 Processor type and features 按回车
然后根据自己处理器的类型选择 Processor family
2,网卡驱动
选择根目录下的 Device Driver , 然后选择 Network Device Support
选择 Ethernet (10 or 100Mbit)
下面,取消所有的勾选,只留图中显示的AMD驱动(因为vmware默认用这个驱动虚拟网卡)
3,文件系统
这里可以根据自己想要的文件系统,进行勾选,图中,我只保留了 ext2 和 reiserFS。
其他配置,可以根据自己的需求来设置。
当我们编译选项的配置后,就可以开始漫长的编译过程了。
make && make modules_install && make install
启用新内核
编译安装完成后,make指令会刷新 /boot下的系统符号表,内核配置,内核文件。
接下来,需要检查一下引导工具的配置是否正确。
一般来说,make install 生成的内核文件名为 vmlinuz,所以,引导工具上配置的内核应该还是vmlinuz。
我使用的是 grub, 所以到 /boot/grub下查看 grub.conf 配置到新内核上。
到这里为止,一个新的linux内核已经升级完成了。接下来,当然就是重启了看效果。
shutdown -r now
注意:
重启时,可能会出现
Use “update-modules force” to regeneration.
原因是,新内核的模块有变化,但/etc/modprobe.conf已经存在了,无法自动生成。
只要进入到系统后,删除 /etc/modprobe.conf,然后执行以下命令就可以了。
update-modules
转载请注明:爱开源 » 虚拟机下编译gentoo内核