用Slackware官方提供的内核源码和脚本来打造适合自己机器的内核。现在的机器配置越来越高,一个小小的笔记本,可能也能上到2G内存,另外服务器的应用,经常用到大内存,从实践的情况来看,Slackware用默认的内核是不支持大内存的,最高支持800多M,可能1G都不到。另外Slackware在默认的情况下也不支持多CPU,如果您有多CPU的机器,也要编译内核;让Slackware支持1G或者超过1G内存的机器,其实解决办法也极为简单。要重新编译一下内核,让其支持 4G就好了。当然如果有有超过4G的,可以选64G的那个。
让Slackware支持多CPU的机器,无非是在配置内核时让他支持SMP,就是这个[*] Symmetric multi-processing support 选项;只说如何如何解决还不行,一篇文章如果没有操作实例,新手弟兄读起来实在是困难。我写的文章都是写给新手的,我总怕我写的文章新手看不懂,对老鸟来说又一文不值;如果真是新手弟兄看不懂,老手又不值得一看,我看我写的东西一文不值。因此我写东西的时候能详细就详细,最好是写到初次用Linux的弟兄看了我所写的文档,也能一步到位的完成。
在Slackware系统中最省力气编译内核的办法,是用Slackware现有的官方资源来进行编译,其它的软件遇到问题,如果Slackware的官方有资源,我们同样可以用这种解决办法;毕竟从 http://www.kernel.org 直接下载,自己配置内核还是有点辛苦。如果是初学Linux的弟兄可能要花好长时间来配置,但还不能保证成功。所以我们这些slack的追随者来说,要充分利用Slackware的资源。
有内核编译经验的弟兄都知道,如果配制好后,编译成功了,要把.config文件保存下来,以便下次为了解决一些小问题,重编同一版本的内核而用;相信Slackware ,相信Slacware的官方资源;这样能让我们事倍功半,尤其对初学Slackware的弟兄。其实Slackware的内核更新并不是太积极,这和 Slackware的传统(安全)有关。其实一般的情况下,我们有一个比较稳定的内核足够用,如果不是为了解决特定的问题,我们没有必要整天升级来升级去的。在我写本文的时候,Slackware 10.1的内核版本是 2.4.29;而current(也就是开发版本)的test内核是 2.6.12.3 。由况下此看来Slackware不是追新族,是以安全和稳定为主。
在本文我们以Slackware的current的test内核来简要的说明应用slackware的官方资源的好处,以及顺便也解决一下大内存支持的问题;
一、下载官方current 的testing内核的源码
地址:http://www.slackware.com/getslack/从上面的地址找镜像,一般的情况下美国和日本的要快一点。比如我们通过下面的地址得到 testing的内核 linux-2.6.12.3的源码目录:ftp://slackware.mirrors.tds.net/pub/...inux-2.6.12.3/
我们要把他里面的所有东西都下载下来,Slackware所提供我们的安装包就是通过这些文件编译生成的;人都都把配置文件和脚本写好了,我们没有必要不用。比如我们FTP镜像中的 linux-2.6.12.3所有文件都按他FTP提供的目录结构存放在到 /usr/src/kernel26中。下载好了,我们进入下一步。
二、利用Slackware官方提供的 config文件来简单配置自己的内核配置文件 .config
1.解压内核及一些基础工作;
bash-3.00# pwd /usr/src/kernel26 bash-3.00# ls config-2.6.12.3 kernel-generic linux-2.6.12.3.tar.bz2.sign kernel-modules linux-2.6.12.3.tar.bz2 bash-3.00#tar jxvf linux-2.6.12.3.tar.bz2
bash-3.00# mv linux-2.6.12.3 .. 把解压手内核目录移到上一级目录中,也就是/usr/src中 bash-3.00# cd ..
bash-3.00# ls kernel26 linux-2.4.29 linux-2.6.12.3.tar.bz2 speakup-2.4.29 linux linux-2.6.12.3 rpm
bash-3.00#cd linux-2.6.12.3 bash-3.00# pwd /usr/src/linux-2.6.12.3
bash-3.00# cp ../kernel26/config-2.6.12.3 . 把内核配置文件复制到当前工作目录linux-2.6.12.3 bash-3.00#cp config-2.6.12.3 .config 把config-2.6.12.3复制为.config
|