﻿<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/"><channel><title>IT博客-twinhawks-文章分类-linux安装</title><link>http://www.cnitblog.com/twinhawks/category/2367.html</link><description>不知何时特别的喜欢上了twin这个词，跟那个组合没有多大关系，我不喜欢only，太少，世间没有相呼应的；也不喜欢more，太多以至于显得太滥，多了就不珍惜了</description><language>zh-cn</language><lastBuildDate>Mon, 26 Sep 2011 16:16:48 GMT</lastBuildDate><pubDate>Mon, 26 Sep 2011 16:16:48 GMT</pubDate><ttl>60</ttl><item><title>Fedora Core 4 内核安装配置手记</title><link>http://www.cnitblog.com/twinhawks/articles/8907.html</link><dc:creator>twinhawks</dc:creator><author>twinhawks</author><pubDate>Sun, 09 Apr 2006 11:03:00 GMT</pubDate><guid>http://www.cnitblog.com/twinhawks/articles/8907.html</guid><wfw:comment>http://www.cnitblog.com/twinhawks/comments/8907.html</wfw:comment><comments>http://www.cnitblog.com/twinhawks/articles/8907.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.cnitblog.com/twinhawks/comments/commentRss/8907.html</wfw:commentRss><trackback:ping>http://www.cnitblog.com/twinhawks/services/trackbacks/8907.html</trackback:ping><description><![CDATA[
		<div>
				<font size="3">原文作者：Mauriat Miranda (</font>
				<a href="http://www.mjmwired.net/contact.php">
						<font size="3">http://www.mjmwired.net/contact.php</font>
				</a>
				<font size="3">)</font>
		</div>
		<div> </div>
		<div>叶清翻译</div>
		<div> </div>
		<div>
				<font size="2">感谢Mauriat Miranda允许我翻译其作品，并允许我将自己的翻译进行有条件发布。</font>
		</div>
		<div>Special Thanks To The Original Author: <font size="3"><strong>Mauriat Miranda.</strong></font></div>
		<div> </div>
		<div>Revision: 24 June 2005<br />修订：2005年6月24日</div>
		<div>编译一个自定义的内核<br />这个指南介绍了我是如何编译我的内核的。我的FC4的安装手记可以在“个人FC4安装指南”中找到。你可以找到关 于FC3和FC2的类似指导。本页包含“技术性和棘手的过程”。时刻记得，这个只是对于我来说运行的很好，所以，请在尝试操作的时候，对重要的文件进行适 当的备份。<br />编译你自己的内核可以让你完全调制你的linux系统。这个过程包含了添加使你的系统运行的更好或者加速你的系统运行的特征，删除那些影响你系统运行或者拖慢你的系统的某些特征。<br />我的计算机系统是速龙XP（Athlon XP）的系统，以及NV（nVidia）的显卡，我没有使用任何额外的内核补丁和nVidia的显卡驱动。<br />完成这些操作你可能需要有大约350-400MB的空闲空间。</div>
		<div>内核版本</div>
		<div>kernel.org提供的官方的内核，通常被称为vanilla kernel（香草内核），而大多数的发行版会修改他们的内核。对于Redhat，Fedora，SuSE等都是如此。大多数修改的发行版内核通常是已经 安装了改变某些功能的补丁。某些硬件可能需要内有修改过的内核才能工作。在这个指南中，我将同时编译vanilla内核和Fedora内核。选择你觉得适 合你的一种。</div>
		<div>Fedora 内核源代码</div>
		<div>我使用的是Fedora的内核的源RPM提供的.config文件来编译内核。不管我编译的是哪一种内核，我都会保留一份安装的Fedora内核源代码拷贝。<br />确定你是不是已经正确安装了FC4的kernel.src.rpm，请参考：FC4: Install Kernel Source.<br />为了方便，我把内核源代码移动到/usr/src/<br />[root@charon src]# cd /usr/src<br />[root@charon src]# mv /usr/src/redhat/BUILD/kernel-2.6.11/linux-2.6.11 /usr/src/linux-2.6.11</div>
		<div>Vanilla Kernel</div>
		<div>如果你想编译一个Vanilla内核，到kernel.org获取最新的2.6内核源代码（FC4使用2.6内核）。请选择一个竞相站点获取源代码。<br />最新的稳定版linux内核版本是：2.6.12.1   2005-06-22 22:00 UTC<br />以root身份，将其解压缩到/usr/src/<br />[root@charon download]# bzip2 -cd linux-2.6.12.1.tar.bz2 | tar xvf - -C /usr/src/<br />转移到新内核目录<br />[root@charon download]# cd /usr/src/linux-2.6.12.1/<br />如果你想使用一些内核补丁，请在进行后续步骤之前按照如下方法应用补丁<br />[root@charon linux-2.6.12.1]# patch -p0 &lt; kernel.patch<br />使内核处于proper/clean 状态：<br />[root@charon linux-2.6.12.1]# make mrproper</div>
		<div>建立/usr/src/linux的软连接<br />注意：不管你编译哪种内核，确信你已经建立了一个正确的/usr/src/linux 的软连接。这个指南的所有操作都将在那里进行。你不能让同一个软连接指向两个不同的目录。<br />[root@charon ~]# cd /usr/src/<br />[root@charon src]# pwd<br />/usr/src<br />(以下针对Fedora内核)<br />[root@charon src]# ln -s linux-2.6.11 linux<br />(以下针对vanilla内核)<br />[root@charon src]# ln -s linux-2.6.12.1 linux</div>
		<div>建立初始的.config文件</div>
		<div>.config文件包含了你所编译的内核的所有的特定配置。你必须有一个可以开始配置的.config文件，否则，这将会使对不同的选项进行正确的设定变得非常的困难。<br />可以使用在先前在fedora的kernel.src.rpm中的.config文件，它将成为你自定义内核的起点。<br />一些名词：SMP:并行多处理器（2个CPU以上），PPC：Motorola PowerPC处理器，x86_64: Athlon 64，xen:Xen虚拟机。确信你找到了合适自己的那个配置文件。<br />[root@charon src]# ls /usr/src/redhat/BUILD/kernel-2.6.11/linux-2.6.11/configs/<br />kernel-2.6.11-i586.config       kernel-2.6.11-ppc64iseries.config<br />kernel-2.6.11-i686.config       kernel-2.6.11-ppc.config<br />kernel-2.6.11-i686-smp.config   kernel-2.6.11-ppc-smp.config<br />kernel-2.6.11-i686-xen0.config  kernel-2.6.11-s390.config<br />kernel-2.6.11-i686-xenU.config  kernel-2.6.11-s390x.config<br />kernel-2.6.11-ia64.config       kernel-2.6.11-x86_64.config<br />kernel-2.6.11-ppc64.config      kernel-2.6.11-x86_64-smp.config<br />[root@charon src]# uname -m<br />i686<br />[root@charon src]# cd /usr/src/linux<br />[root@charon linux]# cp /usr/src/redhat/BUILD/kernel-2.6.11/linux-2.6.11/configs/kernel-2.6.11-i686.config .config<br />注意：如果已经存在一个.config文件，并且不是你自己创建的，你可以用新文件覆盖它。<br />注意：如果你有另一个内核源代码，不管是来自另一个RPM还是先前下载的内核源代码，你可以使用那个.config，而不用Fedora的。例如：<br />[root@charon linux]# cp /usr/src/linux-2.6.10/.config /usr/src/linux/.config</div>
		<div>内核名称</div>
		<div>最为一个可选项，你可以改变连接在内核主版本号之后的那个额外的名字，例如：1.1369_FC4。使用任何一种文本编辑（gedit，kwrite，nano等）打开 /usr/src/linux/Makefile，找到第四行：<br />对于Fedora内核：<br />EXTRAVERSION = -prep<br />对于vanilla内核：<br />EXTRAVERSION = .1<br />你可以把这个值改称任何你喜欢的名字。最后，你的内核名称，将会像这样的：2.6.11-prep or 2.6.12.1有时为了测试，我会使用 -mjm。当你如下文安装NV驱动的时候，确信你已经注意到了所有的改变。</div>
		<div>配置.config文件</div>
		<div>让.config文件更新以适合新内核。下面将出现许多新的选项。如果你知道它们到底是什么，请正确选择，否则，直接按下“回车”。如果你没有看到提示，就OK了。<br />[root@charon linux]# make oldconfig<br />一旦完成，就可以通过下面的任何一个命令，配置必要的内核选项了：<br />基于文字界面的对话形式: make config<br />基于文字界面的GUI:  make menuconfig<br />基于GTK的GUI:  make gconfig<br />基于QT的GUI:  make xconfig (推荐)<br />注意：要运行make xconfig，你必须安装有qt-devel的RPM包。<br />禁用或启用任何你不想要或者你想要的特征。当你对你不熟悉的选项作出改变的时候，你一定要“非常小心”。如果你不知道你修改的时什么，请保持其默认值。下面是一些我个人所做的修改：<br />* Processor type and features (重要！)<br /> - Processor family: Athlon/Duron/K7 (MK7)</div>
		<div>* Power management options (ACPI, APM)<br /> - Enable: Software Suspend <br /> - Disable: CPU Frequency scaling (我的速龙不支持这个)</div>
		<div>* 我没有的硬件或者我不能安装的硬件，我禁用了所有下面的这些:<br /> - PCCARD (PCMCIA/CardBus) support<br /> - PCI Hotplug Support<br /> - Memory Technology Devices (MTD)<br /> - Fusion MPT device support<br /> - IEEE 1394 (FireWire) support<br /> - Amateur Radio Support<br /> - Bluetooth subsystem support<br /> - Token Ring devices<br /> - ATM drivers<br /> - ISDN subsystem<br /> - Watchdog Cards<br /> - Digital Video Broadcasting Devices<br /> - InfiniBand support</div>
		<div>* 一些我强烈推荐的选项:<br /> - "File systems &gt; DOS/FAT/NT Filesytems &gt; NTFS file system support (NTFS_FS)"<br /> (不要启用NTFS read/write)<br /> - 像"NFS", "SMB" and "CIFS"之类的对网络的文件存取是必须的。(如Samba, 等)</div>
		<div>* Kernel Hacking and Kernel Debugging<br /> -Disable Kernel debugging (DEBUG_KERNEL)<br /> 这个选项是不能启用的，但是我发现它打开着，请确信它已经被禁用了。<br />        如果你启用了这个选项，内河将变得非常的巨大。<br />注意：如果你是从较新的内核（例如： 2.6.10 to 2.6.11）升级过来的，而且，你的正确拷贝了那个.config文件，那么，大多数的选项都不用修改了，你只要修改一些新的特征。保存.config文件，编译。</div>
		<div>编译和安装</div>
		<div>这个步骤可能需要15分钟到2小时不等，取决于你的系统的运行速度。<br />[root@charon linux]# make all<br />如果这样没有用，请重新检查错误，试着在上面的配置步骤中禁用一些惹麻烦的模块。如果一切顺利，你就可以安装了。<br />[root@charon linux]# make modules_install<br />[root@charon linux]# make install</div>
		<div>安装nVidia驱动</div>
		<div>你必须在新内核中安装nVidia驱动，否则，X-server在你重启到新内核的时候将无法启动。获取和你安装在你当前使用的FC4系统中完全相同的nVidia驱动(FC4: Nvidia Driver)。下面的步骤将告诉安装程序为你的新内核编译nVidia驱动<br />[root@charon fc4]# sh NVIDIA-Linux-x86-1.0-7667-pkg1.run -a -n -K -k [内核名字]<br />你必须首先知道上面的“内核名字”。如果你使用Fedora内核，这已经包含在上面提到的Makefile中了。如：2.6.11-prep。如果你使用vanilla内核，内核版本号将是这个：2.6.12.1。如果你不能确定，请查看/lib/modules/<br />[root@charon fc4]# ls /lib/modules/<br />2.6.11-1.1369_FC4  2.6.11-prep  2.6.12.1<br />(对Fedora内核)<br />[root@charon fc4]# sh NVIDIA-Linux-x86-1.0-7667-pkg1.run -a -n -K -k 2.6.11-prep<br />(对vanilla内核)<br />[root@charon fc4]# sh NVIDIA-Linux-x86-1.0-7667-pkg1.run -a -n -K -k 2.6.12.1<br />在重新引导系统之前先用modinfo检查nVidia模块。下面我列出两种内核的不同的输出：<br />[root@charon fc4]# modinfo -F vermagic /lib/modules/2.6.11-prep/kernel/drivers/video/nvidia.ko <br />2.6.11-prep K7 REGPARM gcc-4.0<br />[root@charon fc4]# modinfo -F vermagic /lib/modules/2.6.12.1/kernel/drivers/video/nvidia.ko <br />2.6.12.1 K7 REGPARM gcc-4.0<br />注 意：如果上面的方法对你不起作用，或者你得到了一个不同的nVidia驱动的版本号，那你就必须使用在“FC3内核安装配置手记”中提到的方法了（滚动到 接近结束的地方阅读）。不同的是你需要在用新内核重新引导的时候，强制X-server不要启动，然后再手动安装驱动。</div>
		<div>重新引导到新内核</div>
		<div>重新引导到新内核。但是在做这个之前，你得确信你的nVidia驱动（或者其他的任何驱动）易于取得。如果新内核引导失败，阅读错误信息，回到以前的内核。回到配置的那一步，试着改变那些可能导致问题的器件或者特征。<br />一旦进入新内核，任何其他已经安装过的驱动都必须重新按装。所有Fedora默认内核不包含的驱动，大都需要重新安装。</div>
		<div>编辑Grub</div>
		<div>将新内核作为默认内核，编辑/boot/grub/grub.conf，修改：default=1行为default=0。这个值对于不同的计算机可能有微小的差异</div>
<img src ="http://www.cnitblog.com/twinhawks/aggbug/8907.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.cnitblog.com/twinhawks/" target="_blank">twinhawks</a> 2006-04-09 19:03 <a href="http://www.cnitblog.com/twinhawks/articles/8907.html#Feedback" target="_blank" style="text-decoration:none;">发表评论</a></div>]]></description></item></channel></rss>