⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 0540kernel.htm

📁 鸟哥LINUX 学习课本
💻 HTM
📖 第 1 页 / 共 5 页
字号:
2.4.26 这一版的核心来做升级的动作,所以以下是以 2.4.26 来做示范!</font></ul></ul><hr width="100%"><a name="startsettings"></a><img src="0540kernel_files/penguin-m.gif" alt="" nosave="" align="middle" height="34" width="25"><font size="+1" color="#000099">开始设定核心的内容</font><ul><font color="#000000">由于 VBird 都是在安装完 Linux 之后立刻就给他编译核心的,所以通常我都是直接将该核心档案烧录起来,或者是先捉到自己的计算机中,再以ftp 等等的动作将该档案传输到 Linux 系统下!好了!目前我就假设您已经可以上网了,所以您可以使用底下的方式来下载核心,并将之解开在/usr/src 当中!此外,由于编译核心的行为必须要是 root 才可以进行,所以底下的动作使用者身份为root 呦!</font><br>&#160;<table bgcolor="#000000" border="1" cols="1" width="800"><tbody><tr><td><font size="-1" color="#ffff99" face="SimSun">1. 下载核心:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# wget http://aerosol.ev.ncku.edu.tw/~vbird/download/linux-2.4.18.tar.gz</font><font color="#ffff00">&lt;==由本站下载核心</font></font><br><font size="-1" color="#ffffff" face="SimSun">--02:55:31--&#160;http://aerosol.ev.ncku.edu.tw/%7Evbird/download/linux-2.4.18.tar.gz</font><br><font size="-1" color="#ffffff" face="SimSun">&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;&#160;=&gt; `linux-2.4.18.tar.gz'</font><br><font size="-1" color="#ffffff" face="SimSun">Connectingto aerosol.ev.ncku.edu.tw:80... connected!</font><br><font size="-1" color="#ffffff" face="SimSun">HTTP requestsent, awaiting response... 200 OK</font><br><font size="-1" color="#ffffff" face="SimSun">Length: 30,108,170[application/x-gzip]</font><p><font size="-1" color="#ffffff" face="SimSun">&#160;&#160;&#160;0K .......... .......... .......... .......... ..........&#160; 0% @&#160;49.65 KB/s</font><br><font size="-1" color="#ffffff" face="SimSun">&#160;&#160;50K .......... .......... .......... .......... ..........&#160; 0% @&#160;26.25 KB/s</font><br><font size="-1" color="#ffffff" face="SimSun">&#160; 100K.......... .......... .......... .......... ..........&#160; 0% @&#160;39.90 KB/s</font></p><p><font size="-1" color="#ffff00" face="SimSun">最后在您的 /root底下会产生一个名为 linux-2.4.18.tar.gz 的档案!那就适合新的 source 了!</font></p><p><font size="-1" color="#ffff99" face="SimSun">2. 解压缩:</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/root]# cd /usr/src              </font><font color="#ffff00">&lt;==kernel的预设 source 档案放置目录</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/src]# mv linux linux.old           </font><font color="#ffff00">&lt;==将旧的核心编译的目录搬移成其它目录</font></font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/src]# tar -zxvf /root/linux-2.4.18.tar.gz  </font><font color="#ffff00">&lt;==将核心档案解压缩吧!</font></font><br><font size="-1" color="#ffffff" face="SimSun">[root @test/src]# mv linux linux-2.4.18</font><br><font size="-1" face="SimSun"><font color="#ffffff">[root @test/src]# ln -s linux-2.4.18 linux        </font><font color="#ffff00">&lt;==建立连结!</font></font></p></td></tr></tbody></table><p><font color="#000000">需要比较留意的是,核心所放置的地点『一定是 </font><b><font color="#3333ff" face="SimSun">/usr/src/linux</font></b><font color="#000000">』这一个目录,然而由于不论哪一版核心编译都是这一个目录底下编译的,所以我个人相当的建议将每一版的核心都使用不同的目录来指定,然后以<a href="http://linux.vbird.org//linux_basic/0220filemanager.php#ln">link</a>的方式将该目录 link 到 linux 就可以啦!较为简单而且明了!底下的动作请都在/usr/src/linux 底下进行呦!</font></p></ul><ul><font color="#000000">另外,在开始设定核心内容之前,先来说明一下什么是『</font><b><font color="#000099">模块</font></b><font color="#000000">』?以方便大家了解核心编译的选择!由于核心的更新速度虽然很快,然而有些硬件的出版却是不定时的,另外,有些软件需要的加载程序可能也需要核心的支持才有办法提供!然而如果每次一有新的硬件或者软件推出,则需要编译一次核心,那不是挺麻烦的吗?要晓得的是,编译一次核心小一点的也要30分钟左右(这与你的机器速度有关!),每次这么编译不是挺麻烦的吗?所以啰,就有所谓的『模块』出现了!由于目前的核心已经都具有『外挂模块』的功能(这个等一下我们在实际编译的时候会提到!),所以,只要将您『可能会用到』的功能的选项,将他编译成模块!那么往后真的需要该功能的时候,再将他加载到核心就可以啦!这么做最大的优点就是,当没有使用到该功能的时候,核心并不会主动的加载,所以真正在核心内工作的程序就不会太多而耗掉系统资源!另外,当您目前不需要的功能可以先编译成模块,未来真的有需要的时候,就可以将他直接加载!嘿嘿!可以免除再一次编译的繁复手续呢!!很棒吧!所以啰!如果可以编译成为模块的,那么就直接先编成模块也是可以的哩!但是,如果是『肯定不会』使用到的功能,那么就不需要编译进来了!例如我的旧计算机当中根本就没有AGP 插槽,那么我自然就不需要在我的核心里面编译上 AGP 的支持啰!</font></ul><ul><li><b><font color="#000099">编译之前</font></b><font color="#000000">:</font></li><br><font color="#000000">在 Linux 当中安装任何软件的铁则:『注意看套件解压缩之后的INSTALL 或 README 档案!』,好了,那么请进入 /usr/src/linux 当中去瞧一瞧README 先!再来,由于害怕不小心前面有人已经先编译过了核心,则由于编译过程当中会产生目的档案(档名为.o ),为了避免此一问题,请先执行 make mrproper 这个指令:</font><br>&#160;<table bgcolor="#000000" border="1" cols="1" width="500"><tbody><tr><td><font size="-1" color="#ffffff" face="SimSun">[root @testlinux]# make mrproper</font><br><font size="-1" color="#ffff00" face="SimSun">......</font><br><font size="-1" color="#ffff00" face="SimSun">会显示相当多的rm 去除档案的讯息....</font></td></tr></tbody></table><p><font color="#000000">好了!现在您就已经具有相当完整的 Kernel sourcecode 啰!接着下来则是选择编译模式咯!</font></p></ul><ul><li><b><font color="#000099">特别留意:</font></b></li><br><font color="#000000">很奇怪呦!我老是写『特别留意』的字样?真是伤脑筋,鸟哥大概算老人了吧,粉容易碎碎念的….好啦,要强调的还是得强调,是这样的,在上面的介绍里,我们不是说过Kernel 的外挂模块是放在 </font><font color="#000066" face="SimSun">/lib/modules/`uname–r`</font><font color="#000000"> 吗?好了,那么现在来想一想,如果你的『同</font><font color="#000066">一版本的核心编译两次』</font><font color="#000000">的情况下,会怎样?这是很可能的情况呢!怎么说?万一你的第一次的编译没有成功的话,那总得编译第二次吧?而由于第一次编译完成之后,你的一些模块已经放在/lib/modules/2.4.18 当中了( 以这一次我们使用的核心版本为例 ),那么下次在编译完成后,核心的模块还是会放在/lib/modules/2.4.18 这个目录下,那不是重复了吗?有些模块会被重复放置,导致问题重重的~因此上,如果同一个版本的核心被编译两次以上的话,那么请将/lib/modules 里面的该版核心先移动掉吧!举个例子来说,假如你的核心版本是2.4.18 ,而又要对 2.4.18 重新编译一次,那么就必需要:</font><br><font color="#000000"> </font><ul><font color="#000066" face="SimSun">cd /lib/modules</font><br><font color="#000066" face="SimSun">mv 2.4.19 2.4.19.old</font></ul><font color="#000000"> </font><br><font color="#000000">这样才行呢!不然安装之后还是会有问题的呦!请特别留意呢!</font></ul><ul><li><font color="#000099"><b>设定编译模式</b>:</font></li><br>目前的 Kernel 可以允许多种编译的模式,包括了:</ul><ul><ul><li><b><font color="#3333ff" face="SimSun">make config</font></b>:这种模式需要逐行输入所需要设定的项目,无法往前修改设定,所以目前很少使用这种方式来设定Kernel 的项目了;</li><li><b><font color="#3333ff" face="SimSun">make xconfig</font></b>:这种模式则是使用 X-Window 为主要环境的设定模式!除非你有 X-Window 在执行,否则没有办法使用这种模式;</li><li><b><font color="#3333ff" face="SimSun">make menuconfig</font></b>:这种模式有点像是文字界面的选单模式,较为简便,而且可以在纯文字界面下面执行编辑动作!是目前最常使用的模式。</li></ul></ul><ul>由于我们是在文字接口下工作,因此,我们就使用 <b><font color="#000099">makemenuconfig</font></b> 来进行核心的编译设定内容吧!这个选单模式较为简单的啦!<br>&#160;<table bgcolor="#000000" border="1" cols="1" width="500"><tbody><tr><td><font size="-1" face="SimSun"><font color="#ffffff">[root @testlinux]# </font><font color="#ffff00">make menuconfig</font></font></td></tr></tbody></table><p><font color="#000000">出现如下图示:</font><br><font color="#000000"> </font><br><img src="0540kernel_files/0540kernel_1.jpg" nosave="" height="394" width="709"><br> <br>看到上面的图示之后,你会发现有两个画面,一个是大框框内的反白光柱,另一个则是底下的Select, Exit, 与 Help 光标,这几个组件的用法如下:</p></ul><ul><ul><li><font color="#000066" face="SimSun">最底下的 <b>&lt;Select&gt; &lt;Exit&gt;&lt;Help&gt;</b> :可以使用『<b>左右键</b>』来移动光标;</font></li><li><font color="#000066" face="SimSun"><b>上下键</b>可以移动上面大框框部分的Code maturity level options 那一行!,有箭头『 ---&gt; 』则表示该行内部还有其它细项需要来设定的意思。</font></li><li><font color="#000066" face="SimSun">当以『<b>上下键</b>』选择好想要设定的项目之后,并以『<b>左右键</b>』选择<b>&lt;Select&gt;</b>之后,按下『

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -