相關(guān)軟件 >Linux核心安裝 創(chuàng)建者:webmaster 更新時(shí)間:2005-05-17 23:16 Linux對(duì)于許多用戶的介紹是十分強(qiáng)大的、可配置的操作系統(tǒng)。在過(guò)去,一套類似于Unix的操作系統(tǒng)對(duì)大多數(shù)人來(lái)說(shuō)是不可能實(shí)現(xiàn)的。不是該操作系統(tǒng)4位數(shù)的標(biāo)價(jià),而是它的硬件,即使是現(xiàn)在使用個(gè)人免費(fèi)的SCO Unixware它還需要SCSI設(shè)備,我們中的許多人為減少花費(fèi)而使用IDE設(shè)備。隨著Linux的日益強(qiáng)大有件工作不得不在這簡(jiǎn)單的操作系統(tǒng)上完成:根據(jù)你的硬件和操作配置你的核心。 當(dāng)前安裝的核心是1.2.x或更早的建議更新;不管怎樣,用新的2.0.x核心,更新是必要的。核心可以從安裝包中取得,如Red Hat、Caldera、Debian 等等,這是一樣的(幾乎包含一切)核心。當(dāng)更新核心看起來(lái)是一件讓人氣餒的事時(shí),使用已經(jīng)安裝的核心也不壞,更新對(duì)于你的系統(tǒng)來(lái)說(shuō)是好的。 -------------------------------------------------------------------------------- 為什么自找麻煩? 標(biāo)準(zhǔn)的核心安裝是一種嘗試工作(就象許多系統(tǒng)一樣),盡可能安裝一套可用的Linux系統(tǒng),就這一點(diǎn)而論,核心很膨脹它包含對(duì)于一般機(jī)器所不需要的代碼。標(biāo)準(zhǔn)安裝也可能沒(méi)有一些用戶所需的代碼。 當(dāng)然,當(dāng)你購(gòu)置了新的硬件等你就需要升級(jí)你的核心了。在同一個(gè)系列中升級(jí)通常相當(dāng)直觀,當(dāng)你升級(jí)時(shí),比如說(shuō)從1.2.x到2.0.x,這工作正是本文章的范圍,需要有點(diǎn)悟性(哈哈)。最好找一張最新銷售的CD開(kāi)始——這對(duì)于更新到試用的2.1.x核心一樣實(shí)用。 -------------------------------------------------------------------------------- 核心的版本號(hào) 所有的Linux核心包含由點(diǎn)隔開(kāi)的三個(gè)數(shù)字。第一個(gè)數(shù)是核心的版本。我們現(xiàn)在是第三版(2.),一些人可能使用版本號(hào)為1的核心,并且我知道至少還有人在用版本0核心。 第二個(gè)號(hào)碼是核心的主號(hào),主號(hào)也是數(shù)字(包括0)表示穩(wěn)定性。這樣,這些核心將沒(méi)有一些BUGS,他們經(jīng)過(guò)相當(dāng)大量的測(cè)試。當(dāng)某個(gè)版本含有一些小BUGS,它們將被升級(jí),以使硬件兼容或加強(qiáng)核心對(duì)付黑客。如,核心2.0.30,避開(kāi)對(duì)2.0.29報(bào)表BUG的支持,它包含幾個(gè)補(bǔ)丁包括保護(hù)SYN避免服務(wù)器受攻擊。核心帶有零主號(hào)是發(fā)展中的核心。這些可能未經(jīng)測(cè)試,可能但不經(jīng)常中斷你正運(yùn)行的軟件包,有時(shí)候,為了更好的工作,用戶需要采用在下一個(gè)穩(wěn)定的核心發(fā)表之前的最新的、最好的支持核心。這就向?qū)φ胬硪粯記](méi)有異議,這對(duì)系統(tǒng)有本質(zhì)上的改變。 最后一個(gè)號(hào)碼是次號(hào)它因每一次改動(dòng)而增加。如果你看到核心版本2.0.8,你知道它是核心2.0,穩(wěn)定的核心,它已經(jīng)是第九次發(fā)表了(我們從零開(kāi)始記數(shù))。 -------------------------------------------------------------------------------- 假設(shè) 我憎恨作任何假設(shè),它們通常令我心痛。所以我需要提到一些事情那樣我們不會(huì)在同樣的遭遇下工作。為了編譯一個(gè)核心,你需要一些東西,首先,我假設(shè)你已經(jīng)安裝了2.0.x核心,所有的基礎(chǔ)包也許更多,你還需要安裝gcc 2.7和所有支持gcc的庫(kù)。你還需要libc庫(kù)和binutils、bin86包(通常是標(biāo)準(zhǔn)銷售版安裝的一部分)。如果你是下栽的或從CD上拷的,你還需要tar和gunzip包,當(dāng)然你還需要磁盤空間,建議7MB下栽,20MB解壓,更多一些用來(lái)編譯。 無(wú)須多說(shuō),我們研究的許多事情需要以root登錄。如果以非特權(quán)用戶下載 了核心并且你有/usr/src目錄的寫(xiě)權(quán)力,你仍能在成為root之前做許多事。對(duì)于Linux新手,我非常建議盡可能以非特權(quán)用戶(type:su -face)使用僅當(dāng)一些工作必須使用root??傆幸惶?,你將高興有此習(xí)慣。謹(jǐn)記,有二種系統(tǒng)管理員,當(dāng)以root登錄時(shí)能不經(jīng)意的使安裝失事,這樣誰(shuí)愿意做呢。 -------------------------------------------------------------------------------- 獲得/升級(jí)源程序 Linxu核心源程序可以從大量的FTP站點(diǎn)和幾乎每一張Linux銷售CD上得到。新手可到ftp.funet.fi最主要的站點(diǎn)上找Linux核心,你可以從該站點(diǎn)上一系列鏡象站點(diǎn)上下栽Linux核心。選擇一個(gè)最近的站點(diǎn)有助于減少internet整體通信量。 一旦你獲得源程序,拷入/usr/src目錄。創(chuàng)建一個(gè)目錄放置你用tar解壓的源文件。我建議目錄以版本號(hào)命名如 linux-2.0.30 或kernel-2.0.30,用以下命令為目錄建立一個(gè)叫l(wèi)inux連接 ln -sf linux-2.0.30 linux 我在連接命令中使用了-f因?yàn)槟阋呀?jīng)在/usr/src中有了一個(gè)核心源連接,(一些版本的ln(如3.13),強(qiáng)制選項(xiàng)(-f)將不起作用,你不得不必須首先解除連接再建立連接。在版本3.16中運(yùn)行正確)現(xiàn)在你僅僅有一個(gè)問(wèn)題就是如果linux是一個(gè)目錄,不是連接,如果你有這個(gè)問(wèn)題,你不得不在繼續(xù)前更改目錄的名字: mv linux linux-2.0.8 現(xiàn)在執(zhí)行下列命令: tar xzvf linux-kernel-source.tar.gz 我有一習(xí)慣總是在tar參數(shù)中包括w(等待確認(rèn))。下來(lái)讓我們看著.tar.gz 或.tgz文件解壓到自己的目錄,用ctrl-C中斷再去掉w繼續(xù)命令。這樣一來(lái)我能阻止解壓到當(dāng)前目錄。 一旦你解開(kāi)了核心,這正是你執(zhí)行修補(bǔ)程序的最佳時(shí)機(jī)如果你需要的話。假如你不希望運(yùn)行2.0.30核心,但你希望使用tcp-sy-cookies.把該補(bǔ)?。╰cp-syn-cookies-pathc-1)拷貝到/usr/src目錄執(zhí)行以下命令: patch < tcp-syn-cookeis-patch-1 該命令實(shí)現(xiàn)修補(bǔ)核心。在/usr/src目錄中尋找以擴(kuò)展名為.rej的文件。這些文件嚴(yán)格的說(shuō)不是修補(bǔ)文件。它們也許并補(bǔ)重要,但需要細(xì)心的閱讀。如果你安裝了Red Hat系統(tǒng)并裝了一些并不是全部的核心源程序,(SPARC,PowerPC,etc.),你將看到一些募?,染J獠皇悄闥枰模木托辛恕? -------------------------------------------------------------------------------- 準(zhǔn)備工作 給你一個(gè)忠告,在我們轉(zhuǎn)到核心源程目錄和開(kāi)始編譯前,讓我們檢查所需的連接,在你的/usr/include子了目錄有以下連接: asm - /usr/src/linux/include/asm linux - /usr/src/linux/include/linux scsi - /usr/src/linux/include/scsi 現(xiàn)在,你要知到為什么要標(biāo)準(zhǔn)的文件檢索路徑。如果你不把最新的核心放入/usr/src/linux(通過(guò)連接),上面的連接將不會(huì)找到目標(biāo)文件核心編譯將會(huì)失敗。 -------------------------------------------------------------------------------- 怎樣進(jìn)行下一步 一旦萬(wàn)事俱備,轉(zhuǎn)到/usr/src/linux?,F(xiàn)在你也許想停下細(xì)讀一下文檔文件,實(shí)際上如果你有些特別的硬件,或幾種光驅(qū)驅(qū)動(dòng)程需要自己動(dòng)手設(shè)置,他們通常這樣做,當(dāng)引導(dǎo)時(shí)這些驅(qū)動(dòng)程序?qū)⒔o出警告,這并不礙事他們照常工作少,閱讀擴(kuò)展名為.txt .h .c的文件。通常我發(fā)現(xiàn)他們具有共性且易于配置。如果你不想冒險(xiǎn),你沒(méi)必要做。記住你照樣可以解開(kāi)tar文件(或再次安裝.rpm文件)恢復(fù)前的文件。 -------------------------------------------------------------------------------- 開(kāi)始編譯 我建議首先執(zhí)行以下命令: make mrproper 當(dāng)核心源程序在以前條件下這條命令不是必需的,但這培養(yǎng)一個(gè)好習(xí)慣。這命令保證舊的文件不在使用。 -------------------------------------------------------------------------------- 配置核心 現(xiàn)在,你可以配置核心,首先,你要了解一點(diǎn)關(guān)于模塊的知識(shí)。楔塊就像你特意插入核心中的某些東西,如果你家中一個(gè)小網(wǎng)絡(luò)并且有時(shí)想用一下(但并不經(jīng)常),也許你想把網(wǎng)卡編譯成一個(gè)模塊。使用這個(gè)模塊,機(jī)器必運(yùn)行和存取/libs下的模塊,意思是驅(qū)動(dòng)程序(IDE,SCSI等但必須是NFS支持的網(wǎng)卡),文件系統(tǒng)(通常是ext2但也可以是nfs)和核心類型(最好是elf)必須編譯在內(nèi)并且不能是模塊,模塊只有核心引導(dǎo)時(shí)才起作用,驅(qū)動(dòng)程序(來(lái)網(wǎng)絡(luò))的存取,和文件系統(tǒng)安裝。這些文件必須編譯在核心內(nèi)否則將能安裝啟動(dòng)分區(qū)。如果安裝啟動(dòng)分區(qū)和網(wǎng)絡(luò),你需要網(wǎng)絡(luò)系統(tǒng)文件,和己經(jīng)編譯的網(wǎng)卡。 為什么要使用模塊?模塊化使核心變的更簡(jiǎn)捷,它減少核心釋放大量的受保護(hù)的空間。模塊的安裝和卸載使用的空間是可重復(fù)分配利用的。如果你打開(kāi)機(jī)器有90%以上的時(shí)間用到一個(gè)模塊,編譯它。運(yùn)用這類模塊是浪費(fèi)內(nèi)存的,原因是一旦你編譯了楔塊它們同樣將占用大量的內(nèi)存,核心需要一些代碼來(lái)掛上模塊。記住,核心在保護(hù)空間運(yùn)行,但模塊并不是。這么說(shuō),我并不經(jīng)常使用我的設(shè)備。我把它編譯成只支持ext2,ide和elf。而我一直使用網(wǎng)卡,我把其它的編譯成模塊:如out,java,floppy,iso9960,msdos,minix,vfat,smb,nfs,smc-ultra(ethernet card),serial,printer,sound,ppp,等等。它們?cè)S多只是在這或那用上那么幾分鐘。 下一步是配置核心。這而我們有三種選擇--目的相同,我建議使用一種圖形方法。以前是簡(jiǎn)單的輸入:make config。開(kāi)始一系列提問(wèn)。而且,如果你答錯(cuò)了,你只有按ctrl-c從新再來(lái)一遍。你甚至不能按一定順序重復(fù),一些問(wèn)題與以前的提問(wèn)有關(guān)。如果你有絕對(duì)的理由不能使用任何一種圖形方式,那碰到麻煩你一定會(huì)找我的。 我建議使用make menuconfig 或make xconfig中的一種。假如使用menuconfig,你必須安裝ncurses-dev和tk4-dev庫(kù)。如果你沒(méi)有裝入上面的庫(kù),而且你又不想用下一種方法,我建議現(xiàn)在就你安裝上面的庫(kù)。在稍后你仍然可以卸載它們。 要運(yùn)行xconfig,你必須安裝配置X,因?yàn)閄需要大量?jī)?nèi)存,我安裝,配置X僅僅在一部分時(shí)間運(yùn)行X,當(dāng)編譯核心時(shí)我回到以前的控制臺(tái),因?yàn)榫幾g需要內(nèi)存。我的觀點(diǎn)是xconfig菜單是最好最簡(jiǎn)單的途徑來(lái)配置核心。在menuconfg,如果你去掉一個(gè)選項(xiàng),它的從選項(xiàng)將不會(huì)顯示。在xconfig,如果你去掉所有選項(xiàng),從選項(xiàng)依舊顯示,它們成灰色顯示。我喜歡它的原因是使我能知道新加了什么。我可以打開(kāi)一個(gè)選項(xiàng)得到一個(gè)新的從選項(xiàng)來(lái)試用一下。 我將花一點(diǎn)文字描述一下核心配置的一些部分,告訴你一些我(艱難的)發(fā)現(xiàn)的事。 第一節(jié)是code-maturity-level選項(xiàng)。僅有的一個(gè)問(wèn)題是你是否想使用開(kāi)發(fā)的驅(qū)動(dòng)程序和代碼。如果你有令你出血的硬件,你可能不得不作出一個(gè)選擇。如果你選擇“no”,試驗(yàn)代碼將成灰色或不顯示。如果你核心尋求通訊產(chǎn)品支持,你可能選擇“no”。 第二節(jié)涉及模塊,如果你想模塊化,在問(wèn)題1和3選擇“yes”。如果你想使用所有得模塊,比如Calderas OpenLinux的Netwar支持,第二個(gè)問(wèn)題回答“yes這樣不需要從新編譯模塊。 第三節(jié)是一般的設(shè)置。編譯模塊成ELF和編譯支持ELF二進(jìn)制。不編譯適當(dāng)?shù)闹С帧眊otcha“是明智的,如果你的機(jī)器結(jié)構(gòu)是Pentium或486你將得到高效的代碼,但一個(gè)386的核心將運(yùn)行在32-bit compatible clone;一個(gè)Pentium核心將不。為大多機(jī)器制作一張緊急啟動(dòng)盤(就象銷售商的安裝盤)最好在386下編譯,而386并不能運(yùn)行在Pentium下編譯的核心。 下一個(gè)是塊設(shè)備--這兒并不要特別說(shuō)明什么。如果你的啟動(dòng)設(shè)備是IDE硬盤,確定編譯它就行。 下來(lái)是網(wǎng)絡(luò)。對(duì)于一些沒(méi)有連接網(wǎng)絡(luò)的用戶,你不必要在這停留,除非你計(jì)劃使用計(jì)算機(jī)撥號(hào)連接其它用戶。在這兒,你需要讀懂并照建議的指導(dǎo)使用。 緊接著是SCSI,至于為什么不直接跟在塊設(shè)備后面我也不知道。如果你的啟動(dòng)分區(qū)是SCSI設(shè)備,不要選擇SCSI模塊支持。 在一般的SCSI后是SCSI低級(jí)設(shè)備驅(qū)動(dòng)程序。再次重申,模塊僅僅是用在不在啟動(dòng)分區(qū)的設(shè)備。 下一節(jié)令我們回到再次回到網(wǎng)絡(luò),我想你會(huì)再這找你特殊的網(wǎng)卡,象其它一樣支持ppp,slip,等等,如果你使用nfs安裝你的啟動(dòng)設(shè)備,把網(wǎng)卡編譯在內(nèi)。 對(duì)于那些需要ISDN支持的幸運(yùn)的人,ISDN從選項(xiàng)就需要編譯。 在下一節(jié)支持更早的CD-ROM,如果你使用SCSI或IDE CD-ROM,你可以跳過(guò)這里。 下面是文件系統(tǒng)。同樣,編譯你所需要的,通常是ext2而讓其余的使用模塊。 字符設(shè)備是下一個(gè)選項(xiàng)。非串行的鼠標(biāo),支持象PS/2??匆豢茨闶髽?biāo)的鍵。許多雙鍵鼠標(biāo)是PS/2,即使它們的連接看起來(lái)象串行的。你當(dāng)然期望最低限度支持串行。列表中支持普通的打印機(jī)。 最后第二節(jié)經(jīng)常制造麻煩:它就是聲卡。閱讀幫助文件從列表中小心的選取。確信為你聲卡真確的選擇了I/O和IRQ。聲卡的MPU I/O是0選項(xiàng)。一般是330,如果不對(duì)不必?fù)?dān)心。模塊的好處就是在核心編譯以后你還能重新編譯、安裝模塊并掛上核心。(模塊是不是很偉大?) 最后一節(jié)的一個(gè)問(wèn)題必須這樣回答“no,kernel hacking"。 保存你的配置并退出。 譯者:以上只是作者使用的核心編譯情況,如果不同請(qǐng)查看你的HOWTO。 我在menuconfig或xconfig的幾個(gè)地方修改數(shù)字遇到了麻煩,但我確信它是對(duì)的。無(wú)論如何,我不能改變數(shù)字或配置不接受數(shù)字,并告訴我非法。列如,把聲卡的默認(rèn)IRQ從7改變到5,MPU I/O從0到300。如果經(jīng)歷過(guò)這問(wèn)題,但一切仍很好,不要失望。你剛才存盤退出的文件是一個(gè)可以編輯的文本文件。你可以用你的文本編輯器如:Emacs,vi,CrispLite,joe,等等。配置文件在/usr/src/linux目錄名字是.config。前面的點(diǎn)使普通的(ls)無(wú)法顯示,加上-a選項(xiàng)就能看見(jiàn)。編輯文件中在配置時(shí)遇到麻煩的數(shù)字。然后,make dep 把你的配置信息從.config傳送到特定的子目錄完成安裝。最后,make clean 準(zhǔn)備最后的核心編譯。 -------------------------------------------------------------------------------- 編譯核心 現(xiàn)在我們準(zhǔn)備編譯核心。這兒有幾個(gè)選項(xiàng)來(lái)進(jìn)行該工作: make zImage 制作基礎(chǔ)的,壓縮的核心它將留在/usr/src/linux/arch/i386/boot目錄名為zImage。 make zlilo 拷貝zImage到根目錄 (除非你編輯上層的Makefile) 運(yùn)行LILO。如果你用了這項(xiàng),你不得不確信/etc/lilo.conf是先配置 make zdisk 寫(xiě)zImage到軟盤在/dev/fd0 (就是DOS中第一軟驅(qū)A:)。在開(kāi)始之前你必須有張盤在軟驅(qū)中。你可以同樣用make zImage 然后把它拷貝到軟盤cp /usr/src/linux/arch/i386/boot/zImage /dev/fd0 記住是高密度的,底密度的720k磁盤將不能啟動(dòng)核心(嘿都這時(shí)候了誰(shuí)還用這玩藝兒,不要告訴我你有) make boot 和zImage一樣。 make bzImage 使用和zImage一樣的大核心,你要知道使用這項(xiàng)通常提示映象文件太大而失敗 make bzdisk 使用和zdisk一樣的大核心,你要知道使用這項(xiàng)通常提示映象文件太大而失敗 其它make選項(xiàng)也是可用的,但是特殊的,并且不在這兒出現(xiàn)。當(dāng)然如果你需要特別支持,就象RAM disk ,SMP,閱讀適當(dāng)?shù)奈臋n,編輯在/usr/src/linux下相應(yīng)的Makefile(也叫作top-level Makefile)。上面我討論的選項(xiàng)和zImage選項(xiàng)一樣基礎(chǔ),剩下部分是處理make zImage--重建核心最容易的方法。 對(duì)于那些想加快進(jìn)程速度的人將不做其它事情(如配置其它應(yīng)用程序),建議你查看man手冊(cè)使用-j選項(xiàng)(也許有限制比如5)和-l選項(xiàng)。 如果配置過(guò)程中選擇了模塊,你可執(zhí)行以下命令: make modules make modules_install 把模塊放入默認(rèn)查找路徑/lib/modules/2.0.x/,x是核心的次號(hào)。如果你已經(jīng)有了這個(gè)子目錄并且它有block,net,scsi,cdrom,等等子目錄。除非你安裝所有的模塊,那么你可以刪掉2.0.x和下面所有的東西,其實(shí)也不必刪掉。當(dāng)模塊裝入時(shí),子目錄被創(chuàng)建覆蓋。 你可以簡(jiǎn)單的結(jié)合使用三條命令: make zImage:make modules:make modules_install 磁盤插入完成后在回到這,分號(hào)使在同一行上的命令分開(kāi),并執(zhí)行每一條命令,這樣你在下一條命令執(zhí)行前就不必等了。 一旦你的核心重建并且安裝了模塊,有幾點(diǎn)必須小心。首先,把你的核心拷貝到root(或/boot/或/etc/,隨你想); cp /usr/src/linux/arch/i386/boot/zImage 同樣你需要把/usr/src/linux/System.map拷貝到同意目錄用作核心的鏡象。改變路徑(cd)到/etc目錄配置LILO。這一步很重要。如果我們?cè)谛潞诵闹胁话惭bpointer,它將不啟動(dòng)。通常,核心安裝叫做vmlinuz。過(guò)去Unix使用者共同起了這名字。"z"表示壓縮,"v"和"m"意思是"virtual"(虛擬)和"sticky(粘性的)",各自屬于內(nèi)存和磁盤管理。我建議保留vmlinuz核心,直到知道它工作。 編輯/etc/lilo.conf文件并加入新核心。使用從image=/vmlinuz到下一個(gè)或最后的image= 的行。把看到的記錄下來(lái),把第一行改成image=/zImage(假設(shè)你的核心在根目錄)為label=.選一個(gè)不同的名字,第一個(gè)image是默認(rèn)的。啟動(dòng)它們有特定的順序。保存執(zhí)行命令: lilo 你將看到核心標(biāo)簽,第一個(gè)是星號(hào)。如果你沒(méi)有看到新核心的標(biāo)簽或LILO出現(xiàn)錯(cuò)誤,你需要重新對(duì)/etc/lilo.conf工作(看LILO幫助頁(yè))。 我們已經(jīng)準(zhǔn)備重新引導(dǎo)。這時(shí)如果你知道你的系統(tǒng)僅要求一次啟動(dòng)作準(zhǔn)備,你可以執(zhí)行: depmod -a 2.0.x x是正是你重建的核心的次號(hào)。這條命令創(chuàng)建一些模塊所需的文件。你當(dāng)然想確信啟動(dòng)時(shí)不是直接進(jìn)入xdm.對(duì)于Red Hat系統(tǒng),它的意思是保證文件/etc/inittab不在第5層運(yùn)行,或者你記住在啟動(dòng)時(shí)運(yùn)行。對(duì)于Debian系統(tǒng),你可以輸入: mv /etc/init.d/xdm /eetc/init.d/xdm.orig 現(xiàn)在把它移回去。 -------------------------------------------------------------------------------- 重新啟動(dòng)新核心 重新啟動(dòng)機(jī)器: shutdown -r now 我不建議使用熱啟動(dòng)或ctrl+alt+del鍵。在一些情況下,文件系統(tǒng)不完全卸栽會(huì)損壞打開(kāi)的文件。在LILO提示時(shí),如果你需要啟動(dòng)舊的核心或使用一些參數(shù)啟動(dòng),如果你沒(méi)看見(jiàn)啟動(dòng)提示,你可以試用shift或ctrl鍵,這樣啟動(dòng)提示就出現(xiàn)了。一旦出現(xiàn),按tab看核心標(biāo)簽。輸入標(biāo)簽和可選參數(shù)啟動(dòng)。通常,在/etc/lilo.conf文件指定的時(shí)間后自動(dòng)啟動(dòng)核心。啟動(dòng)時(shí),你可能看見(jiàn)一些出錯(cuò)信息就象SIOCADDR。這常常顯示模塊(一般是網(wǎng)絡(luò)模塊)沒(méi)有引導(dǎo)。處理這事很簡(jiǎn)單,如果有此一錯(cuò),"VFS,cannot mount root",你就不要在核心中編譯適當(dāng)?shù)拇疟P或文件系統(tǒng)支持。 -------------------------------------------------------------------------------- 發(fā)現(xiàn)并修理故障 由于從/etc/initab啟動(dòng)時(shí)有多種分配的方法,很難在本章覆蓋所有可能的原因如你不能正常啟動(dòng)和它的原因. 首先,運(yùn)行 depmod -a 確信你有up-to-date,模塊從屬文件(它被創(chuàng)建在特定的目錄).如果你決定從屬時(shí)遇到一串錯(cuò)誤,如果你沒(méi)有在配置核心時(shí)打開(kāi)"Module Versions".這并不完全錯(cuò)誤,你編譯安裝的模塊是好的.檢查/etc/conf.modules文件中的每行指向/lib/modules都很完全: /lib/modules/`uname -r`/xx (注意:uname -r 二邊的~符號(hào),它位于U.S鍵盤左邊的TAB鍵和SHIFT鍵的上面.) 確信kerneld運(yùn)行,且在啟動(dòng)進(jìn)行時(shí)早被引導(dǎo).如果是這樣,系統(tǒng)不需要明確引導(dǎo)模塊,核心會(huì)處理的.在第一個(gè)rc腳本調(diào)用核心時(shí)要小心.核心會(huì)中止啟動(dòng)進(jìn)程,熱啟動(dòng)或用reset鍵或關(guān)電源,如果它是在系統(tǒng)知道主機(jī)名之前.如果這事發(fā)生在你生上,你可以重新啟動(dòng)在LILO時(shí)使用-b參數(shù)阻止任何rc腳本使用init.然后,rc的/etc/rc.d/,rc.sysinit和rc.modules文件.有許多方法可以指出一個(gè)目錄如/etc/modules/~uname -r~ /~uname -v~列出檢索到的啟動(dòng)模塊.你可以把舊的目錄去覆蓋新的. mkdir /etc/modules/`uname -r` ;cp /etc/modules/2.0.xx/g#1 Thu 3 Sep 1997. default /etc/modules/`uname -r`/ `uname -v`.default"" 你的系統(tǒng)將含有不同日期的模塊,可能或不使用默認(rèn)的擴(kuò)展.在上例特別注意使用~和成對(duì)的~,在適當(dāng)?shù)牡胤剿鼈兪切枰黄鸪霈F(xiàn)的.一旦你發(fā)現(xiàn)了系統(tǒng)的這一關(guān)鍵,你就可以啟動(dòng)一個(gè)有特殊功能的系統(tǒng)了.如果你經(jīng)歷更進(jìn)一步的問(wèn)題,最好最直接的地方是,在一個(gè)mailing list上面有專家詳細(xì)的建議。他們成功的運(yùn)行著一個(gè)特殊的區(qū)域通常很高新援助新手,當(dāng)遇到問(wèn)題是可以問(wèn)他們。為什么這樣,因?yàn)樗麄兪且粋€(gè)整體在許多問(wèn)題上注意并提供幫助。祝你在list上好運(yùn),如果你的問(wèn)題還沒(méi)有其它人提到,那就自己?jiǎn)柊?。首先檢查是否有mail-list archives,這些檔案提供常見(jiàn)的問(wèn)題答案。 結(jié)論 當(dāng)為你系統(tǒng)編譯定制的核心,對(duì)于管理員中的新手來(lái)說(shuō)是一個(gè)使人畏縮的挑戰(zhàn),但花些時(shí)間是值得的。你的系統(tǒng)運(yùn)行將更高效,更重要的是,你會(huì)對(duì)自己的編譯更滿意。 在一些地方你會(huì)遇到麻煩,記住安裝核心后回到LILO,不要覆蓋你的舊核心,這樣你能從LILO提示恢復(fù)到其中的一個(gè)。在第一次重新啟動(dòng)時(shí)遇到的銷售商明確的問(wèn)題通常早被解決了。銷售商通常僅使用E-mailt提供幫助但他不是技術(shù)支持。 相關(guān)文章 本頁(yè)查看次數(shù):