ubuntu 12.04 内核升级小记

 

最近需要研究lguest虚拟机,但是ubuntu12.04内核貌似没有集成,故重新升级内核,逐有此小记一篇

环境:vmware workstation下ubuntu桌面版12.04 

第一步:在http://www.kernel.org/ 上下载最新稳定内核源代码,我下载的最新稳定版为3.7.10


第二步:解压源码包,并将解压过的内核代码放置 /user/src 目录下

第三步:打开终端进入/usr/src/linux-3.7.10

   znn@ubuntu:~$ cd /usr/src/linux-3.7.10

以上为准备工作

第四步:以管理员身份运行后续命令,或者在命令前加sudo亦可

 znn@ubuntu:/usr/src/linux-3.7.10$ sudo su
[sudo] password for znn: 

输入命令make mrproper,

        root@ubuntu:/usr/src/linux-3.7.10# make mrproper

该命令的功能在于清除当前目录下残留的.config和.o文件,这些文件一般是以前编译时未清理而残留的。

第五步:配置

配置编译选项,因为操作系统内核功能及结构非常复杂,配置选项很多,配置特别繁琐,为了简单起见使用make menuconfig或者make xconfig,我的系统已经安装ncurses,故使用make menuconfig,没有安装的同学可以到http://invisible-island.net/ncurses/下载

 

                                     

 

或者http://ftp.gnu.org/pub/gnu/ncurses/ 下载再或者在软件中心找到软件安装也行,如下输入关键字出来好多,自己看着需要的就装上吧:

                                      

我下载的为5.8,然后解压缩后安装就ok啦。

然后进入重点:make menuconfig

  root@ubuntu:/usr/src/linux-3.7.10# make menuconfig

配置界面如下,选项太多,找起来实在是麻烦,木有办法撒

       

具体配置看个人需求,我是安装lguest虚拟机需要配置的,然后保存退出,我的配置选项如下:    

"General setup":

     "Prompt for development and/or incomplete code/drivers" = Y

        (CONFIG_EXPERIMENTAL=y)

 

  "Processor type and features":

     "Paravirtualized guest support" = Y

        "Lguest guest support" = Y

     "High Memory Support" = off/4GB

     "Alignment value to which kernel should be aligned" = 0x100000

        (CONFIG_PARAVIRT=y, CONFIG_LGUEST_GUEST=y, CONFIG_HIGHMEM64G=n and

         CONFIG_PHYSICAL_ALIGN=0x100000)

 

  "Device Drivers":

     "Staging drivers"=N

     "Block devices"

        "Virtio block driver (EXPERIMENTAL)" = M/Y

     "Network device support"

        "Universal TUN/TAP device driver support" = M/Y

        "Virtio network driver (EXPERIMENTAL)" = M/Y

           (CONFIG_VIRTIO_BLK=m, CONFIG_VIRTIO_NET=m and CONFIG_TUN=m)

 

  "Virtualization"

     "Linux hypervisor example code" = M/Y

        (CONFIG_LGUEST=m)

第五步:确定依赖性:建立模块间的依赖信息

      make dep    

Step 六:清除编译中间文件 :删除配置时留下的一些不用的文件
            make clean      

Step 七:生成新内核,此处内核较小时可以用make zImage,时间较长,请耐心等待,抓狂

             make bzImage     

Step 八:编译内核模块
       make modules   

Step 九:安装内核模块

      make modules_install  

Step 十:建立ramdisk映像

              mkinitramfs -o /boot/initrd-linux3.7.10.img

Step 11:安装新内核

     make install 

大功告成了有没有,O(∩_∩)O~,最后一步

Step 12:重新启动虚拟机

      reboot

以上命令都是以管理员身份运行的,登陆重启后的系统,查看内核版本:

root@ubuntu:~# uname -r
3.7.10

 

 

对于双系统或多系统来说,还需修改grub配置文件,在此不多说。 

 

你可能感兴趣的:(linux,技巧,内核)