010.Vmware-Linux 内核编译四

Subject:Vmware-Linux 内核编译四

Date:     28-Mar-2011

By:        [email protected]

 

1.本文在Vmware-Linux-2.4.20-8的基础上将内核重新编译升级到2.6.14.1

编译平台:Vmware_6.0 + Redhat 9.0(Linux-2.4.20-8)

 

 

2.准备相关文件并复制至/tmp目录下

kernel:linux-2.6.14.1.tar.gz  

下载地址:www.kernel.org/pub/linux/kernel/v2.6/

modutils:modutils-2.4.5-1.src.rpm  (v2.6内核升级需要)

下载地址:www.kernel.org/pub/linux/utils/kernel/modutils/v2.4/

module-init-tools:module-init-tools-3.2.2.tar.gz (depmod insmod lsmod modinfo modprobe rmmod)

下载地址:www.kernel.org/pub/linux/utils/kernel/module-init-tools/

device-mapper:device-mapper-1.00.19-2.i386.rpm

lvm2:lvm2-2.00.25-1.01.i386.rpm

mkinitrd:mkinitrd-4.1.18-2.i386.rpm (mkinitrd依赖device-mapper及lvm2)

下载地址:http://rpm.pbone.net/

binutils:binutils-2.17.tar.gz(虚拟机用文件)

下载地址:http://ftp.gnu.org/gnu/binutils/

010.Vmware-Linux 内核编译四_第1张图片

 

3.安装modutils-2.4.5-1.src.rpm

A. 查看当前modutils版本

 

B. 卸载当前modutils

 

C.将源代码安装到/usr/src/redhat目录下:rpm –ivh modutils-2.4.5-1.src.rpm

010.Vmware-Linux 内核编译四_第2张图片

 

D.进入规范文件目录下:cd /usr/src/redhat/SPECS

 

E.生成二进制的RPM包:rpmbuild –-bb modutils.spec

  

F.进入生成的RPM包目录下:cd /usr/src/redhat/RPMS/i386

 

G.安装RPM包:rpm –ivh modutils*.rpm

 

H.安装成功

 

4.解压缩并安装module-init-tools-3.2.2.tar.gz

tar –zxpf module-init-tools-3.2.2.tar.gz

cd module-init-tools-3.2.2

./configure –prefix=/

make moveold

make all install

./generate-modprobe.conf  /etc/modprobe.conf

 

 

5.安装device-mapper-1.00.19-2.i386.rpm

rpm –ivh device-mapper-1.00.19-2.i386.rpm

 

6.安装lvm2-2.00.25-1.01.i386.rpm

rpm –ivh lvm2-2.00.25-1.01.i386.rpm

010.Vmware-Linux 内核编译四_第3张图片

rpm –ivh –-nodeps –-force lvm2-2.00.25-1.01.i386.rpm

 

 

7.卸载当前mkinitrd并安装mkinitrd-4.1.18-2.i386.rpm

rpm –e –-nodeps mkinitrd

rpm –ivh mkinitrd-4.1*.rpm

 

 

8.解压并安装binutils-2.17.tar.gz

tar –zxpf binutils-2.17.tar.gz

cd binutils-2.17

./configure

make

make install

 

9.解压linux-2.6.14.1.tar.gz并将linux-2.6.14.1移至/usr/src目录下

tar –zxpf linux-2.6.14.1.tar.gz

mv linux-2.6.14.1 /usr/src

 

10.进入linux-2.6.14.1目录并编译 cd /usr/src/linux-2.6.14.1

make clean

make mrproper

make menuconfig(暂不作任何改动)

make bzImage

make modules

make modules_install

make install

 

11.进入/boot目录并编辑grub/grub.conf文件 vi grub/grub.conf

010.Vmware-Linux 内核编译四_第4张图片

注:安装Redhat9.0时,根目录/安装在/dev/sda3上,fdisk –l

 010.Vmware-Linux 内核编译四_第5张图片

 

12.reboot

010.Vmware-Linux 内核编译四_第6张图片

 

 

13. 在新内核挂载cdrom mount /mnt/cdrom 出错

暂找不出解决方案。

将vmware-tools源文件复制到/tmp目录下,解压并安装在linux-2.6.14.1内核下,与windows操作系统共享的Shared文件夹可正常工作。但回到linux-2.4.20-8内核后,找到Shared文件夹。

 

14. 测试驱动程序

010.Vmware-Linux 内核编译四_第7张图片

 

insmod hello.ko

 

lsmod

010.Vmware-Linux 内核编译四_第8张图片

 

rmmod hello

出错

 

15.配置menuconfig,make menuconfig添加如下选项

 010.Vmware-Linux 内核编译四_第9张图片

 

16.重新编译

make bzImage

make modules

make modules_install

make install

 

17.重复第11步

 

18.reboot 并重新测试rmmod命令

insmod hello.ko

 

lsmod

010.Vmware-Linux 内核编译四_第10张图片

 

rmmod hello

 

19.可参考文档:http://www.linuxeden.com/html/develop/20080402/53826.html

 

 

 

你可能感兴趣的:(010.Vmware-Linux 内核编译四)