请容许我说一些废话,呵呵,很久以来都说要自己手动更新一下linux的kernel,这个情节现在总算是了了。
如果操作过程中提示缺少什么东西,请自行用apt-get install 安装,该安装问题不在本文范围内,请问google即可。
2:步骤
A: get kernel from
B: 解压 :
cd /usr/src tar -xjf /home/mayer/all/smb_share/linux-2.6.36.2.tar.bz2 #我下载的文件放在了这里 cd linux-2.6.36.2/
C: 编译
su #切换到root用户,以免每次在下面的命令前都加sudo pwd
/usr/src/linux-2.6.36.2 #该行是pwd的输出,不是命令哦,下划线输出的均是命令的输出,下同ls /usr/src/ | grep 'linux'
linux-2.6.36.2linux-headers-2.6.32-25
linux-headers-2.6.32-25-generic
linux-headers-2.6.32-27
linux-headers-2.6.32-27-generic
cp /usr/src/linux-headers-2.6.32-27-generic/.config .config #拷贝一个上一个的config文件过来,注意文件有一个点,是个隐藏文件 cp /boot/config-`uname -r` .oldconfig #这两步cp拷贝的动作不是必须的,只是减少一些在下面的kernel的配置中省事一些,如果你不进行这两步也没关系 make menuconfig #在这里你要根据直接的需求决定是否需要新的kernel的某些新功能(输入N/m/y来决定),如果你进行了上面两步的话。否则会让你在界面中选择你需要的东东 make bzImage #编译kernel make modules #编译模块
D: 安装kernel
make modules_install #必须先安装模块,成功后会在/lib/modules/目录生成一个以kernel名字命名的目录 ls /lib/modules
2.6.32-21-generic 2.6.32-25-generic 2.6.32-27-generic 2.6.36.2
ls /boot/
abi-2.6.32-25-generic memtest86+.binabi-2.6.32-27-generic System.map-2.6.32-25-generic
config-2.6.32-25-generic System.map-2.6.32-27-generic
config-2.6.32-27-generic vmcoreinfo-2.6.32-25-generic
grub vmcoreinfo-2.6.32-27-generic
initrd.img-2.6.32-25-generic vmlinuz-2.6.32-25-generic
initrd.img-2.6.32-27-generic vmlinuz-2.6.32-27-generic
make install
sh /usr/src/linux-2.6.36.2/arch/x86/boot/install.sh 2.6.36.2 arch/x86/boot/bzImage System.map "/boot"
ls /boot/
abi-2.6.32-25-generic System.map-2.6.32-25-generic
abi-2.6.32-27-generic System.map-2.6.32-27-generic
config-2.6.32-25-generic System.map-2.6.36.2
config-2.6.32-27-generic vmcoreinfo-2.6.32-25-generic
config-2.6.36.2 vmcoreinfo-2.6.32-27-generic
grub vmlinuz-2.6.32-25-generic
initrd.img-2.6.32-25-generic vmlinuz-2.6.32-27-generic
initrd.img-2.6.32-27-generic vmlinuz-2.6.36.2
memtest86+.bin