步骤1:配置内核编译选项。


配置内核


可选步骤:排除编译后的结果文件(o)等之间的依赖关系。


让mrproper


可选步骤:清除历史编译结果。


使清洁


步骤2:编译内核。


让# bzImage内核


使模块#编译内核模块,如驾驶等。


让modules_install #编译的模块安装到/ lib /模块/ x.xx X目录。


步骤3:生成初始磁盘镜像initrd.img。


CD linux-source-x.xx。X /。配置#将配置文件复制到 /启动目录


sudo cp配置/启动/ config-x.xx X。


# x.xx。X对应 / lib /模块/ x.xx X目录。


# O表示图像的输出目录。


sudo mkinitramfs O / /初始化启动。img-x.xx x.xx X。X。


步骤4:修改幼虫配置。


在启动 / / grub.cfg蛴螬,现有的启动项,复制,修改内核相关文件地址到新内核相关文件的位置。


如:


复制以下段落:


menuentry'ubuntu,Linux,Ubuntu 3.2.0-36-generic-pae类类类类GNU Linux GNU操作系统{


recordfail


gfxmode linux_gfx_mode美元


insmod gzio


insmod part_msdos


insmod ext2


设置根=(hd0,msdos1)


搜索--没有软盘,FS UUID --集=根7b4e922c-d943-4b84-9c75-4fdc57cf1a3f


Linux /启动/ vmlinuz-3.2.0-36-generic-pae根= UUID = 7b4e922c-d943-4b84-9c75-4fdc57cf1a3f RO安静飞溅vt_handoff美元


initrd / / initrd.img-3.2.0-36-generic-pae启动


}


修改:


menuentry'test,Linux,Ubuntu——3.7.4类类类类-- GNU Linux GNU操作系统


recordfail


gfxmode linux_gfx_mode美元


insmod gzio


insmod part_msdos


insmod ext2


设置根=(hd0,msdos1)


搜索--没有软盘,FS UUID --集=根7b4e922c-d943-4b84-9c75-4fdc57cf1a3f


Linux /启动/核心/ vmlinuz-3.7.4root = UUID = 7b4e922c-d943-4b84-9c75-4fdc57cf1a3f RO安静飞溅vt_handoff美元


initrd /启动/核心/ img-3.7.4 initrd。


}


步骤5:测试


当虚拟机启动时,按Esc将其强制加载到启动引导菜单中。


在菜单中,选择',测试,Linux 3.7.4、使用新编译的内核初始化系统,检查启动过程,看看是否有任何异常。如果一切正常,则表示内核已正确编译,否则,它需要继续修改编译器选项。