Linux内核基本编译安装


一、编译内核前我们要先了解自己系统的相关硬件信息:

1)lspci 列出硬件设备信息

这里列出了,有IDE信息,网卡信息,PCI信息等等。

2)hal-device 列出的更详细,分常多就不列举了,他有个图形化的工具是hal-device-manager

3)dmidecode 查看主板相关信息

可以-t 指定相关参数

比如查看CPU dmidecode -t 4 或者 dmidecode -t porcessor

4)x86info 查看64位的相关信息

二、编译内核,我们可以再www.kernel.org上获得最新的内核。

1)下载后解压到/usr/src下,这里我以2.6.28为例

#tar -xf linux-2.6.28.10.tar.gz -C /usr/src/

#cd /usr/src

#ln -s linux-2.6.28.10/ linux (创建连接)

之后进入Linux目录就和以开始编译了

2)配置内核选项

make config 文本

make menuconfig 文本菜单

make xconfig 图形话的需要安装相关软件rpm -qa | grep qt

3)纯文本的是交互式的要一个个问非常慢,这里就以make menuconfig 文本菜单来做

另注意如果我们是用的软件连接的话要注意窗口的大小,默认显示在25行和80列的显示其上,所以建议使用的大点,要不会报错。

4)之后就可以看到我们的选项信息了

这里Y表示选着进内核,M表示编译成模块,N 表示不选着

在make menuconfig 下*表示Y,M表示M,空白为N

[ ] 编译或者移除

< > 编译或者模块化或者移除

{ } 编译或者模块化(被其他特性选着)

- - 被其他特性选着

至于选什么就不列举出来了,就使用默认的了,后面给个编译手册非常详细的

5)选着好之后会在当前目录产生一个.config的文件,这里面就是相关的信息,之后就可以此次执行:

# make 编译内核

# make modules_install 安装内核模块

# make install 安装新内核

6) 默认自动在/boot/grub/grub.conf里添加好相关信息了,查看一下有没有,之后就可以重新启动了,在grub菜单选着我们的新内核启动,进入后# uname -r 看到内核信息就成功了。

三,补充make 相关信息

1)如果编译失败的怎么办?

#make mrproper 清理源码树

#make clean 清理后就可以继续了(会清理掉.config文件,建议备份后在清理)

2)如果我们用的是软件连接的话,正在编译中终端关闭了怎么办?

这里我们推荐个screen命令,没有的话yum 安装同名软件即可

直接#screen会产生个新的终端,我们在里面make即可

Ctrl+a在按d推出,做其他的也可以

#screen -ls 查看终端的信息会显示进程号

#screen -r 进程号即可恢复,如果只有一个的话不用加进程号直接恢复

在其他终端页可是查看进入,这样我们关闭当前终端也不会怕有问题了。

相关内容