前言
正文 注意:/usr/src;一般而言、我们制做linux内核的时候源码一般放在这个路径下、并且有一个链接叫linux什么的、所以展开时应该放在这个路径下。
我这里下载有一个3.13.2版本的内核、展开时指定一个展开路径就可以了,文件比较大、70多M、可能需要点时间的。
展开之后在/usr/src/这个目录下就看到了生成一个linux-3.13.2的文件了
为以后使用方便、我们给他创建一个链接:
我们cd到linux目录里面看一下里面的文件看:
里面的目录我这里就不一一介绍了、有兴趣的朋友可以去了解一下哦。
到下一步就是去配置内核了、这步配置内核的方法有多种、每一个make就是一种方法、我们只在选一种就可以了: menuconfig:使用这个命令的话、如果是新安装的系统就要安装gcc和ncurses-devel这两个包才可以打开、然后再里面选择就可以了、通这个方法也是用得比较多的:
如果想方便点又不想用别的方法那就复制当前系统上的/boot/config-版本-平台,这个文件到/usr/src/linux/.config覆盖这个文件,再改一下里面的配置信息;哪些用得着就保留、哪些用不着就删除了都可以、有什么新的也可以加进来、这就是按自己的需求来配置了;
注意:如果编译是在远程连接上的话、make会出问题的、如果远程连接断开的话那运行的进程是不是也都断开了、这个make的进程一定是当前系统上运行的子进程、有些一旦父进程挂了、子进程也将不复存在、俗话说:皮之不存毛将焉附,是这个道理吧;
所以我们使用一个叫screen这个命令来操作,没安装自己安装上就是了、可以在一个窗口上启动n个虚拟的桌面,即使退出了也会保留之前的内容,切换进screen就可以看到窗口标题栏上的screen标志了:
# screen -ls:可以查看当前启用了多少个screen 因为编译内核需要比较长的时间、所以我们在screen上编译、然后再把screen桌面隐藏就可以了;
重新接入screen: 然后我们就开始编译吧;(我这里编译差不多用了两小时、make的时候我不指定cpu的核心数、默认就是用一个核来编译、所以很久) # make
编译好了之后我们就可以进行下一步了: 这步完了之后你可以查看一下/lib/modules/目录下就会生成一个以版本号命名的一个文件模块了
modules之后再往下走、敲命令吧
安装完之后会在/boot/目录下生成一个内核文件vmlinuz-3.13.2、还有几个跟你当前编译的版本一样的文件、可以ls去看一下:
如果没出什么问题到这里我们应该算是编译好了一个新内核了;可以到grub.conf配置文件时看一下:
好了、要不我们重启一下看看、OK、重启吧!如果顺利的话就可以进到内核选择界面了,选项我们编译的新内核就OK了,好了、到这就结束了!
总结一下我们的安装步骤:
结束: |