class="22032">
by;Paul;Gortmaker.
v1.14,;1;February;1998;
--------------------------------------------------------------------------------
這份文件是啟動提示說明(BootPrompt-Howto),;它整理了所有可以在啟動時期傳給;Linux;核心的啟動時期參數(arguments)。;包含所有核心與設備的參數。也包含關於核心如何排序(sorts);啟動時期參數的討論,;還有一些啟動;Linux;核心常用軟體概述。;
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
1.;簡介
核心有能力在啟動時以`指令列'方式接受有限的參數資訊,類似執行程式時所給予的一些參數(argument;list)。通常這是用來提供核心一些它沒有辦法自己確定的硬體參數資訊,或是避免/變更(override)核心自己偵測所獲得的值。;
然而,如果你直接把核心映像(kernel;image)拷貝到軟碟上,(例如;cp;zImage;/dev/fd0)那麽你將沒有機會指定任何參數給核心。所以大部份的;Linux;使用者都使用像是;LILO;或是;loadlin;一類能夠把這些參數傳給核心,然後啟動它的軟體。;
模組(MODULE)使用者請注意:;典型的啟動提示參數只能用於直接編譯到核心裡的硬體驅動程式。它們對使用模組方式載入的驅動程式沒有影響。大部份的發行套件(distributions);都使用模組。如果你無法確定,可以對照;/etc/conf.modules;的內容查閱;man;depmod;以及;man;modprobe。;
目前這版說明文件涵蓋到;v2.0.33;為止的核心。同時也包含部份到;v2.1.84;為止,發展/測試版核心的特性。;
這份啟動提示說明的作者是:;
Paul;Gortmaker,;
[email protected];
[請注意,特別給非;i386;機器或設備(尤其是;Atari/Amiga)用的啟動提示參數目前並沒有寫進來。];
1.1;宣言與版權;
這份文件並非絕對正確的真理。然而它大概是你所能找到最新的資訊。沒有人必須對你硬體所發生的事負責,除了你自己以外。如果你的硬體冒煙燒掉了(...這幾乎不可能!)我也沒有責任。也就是說根據這份文件中所提供的資訊去實行而造成的任何損害作者概不負責。;
這份文件的版權;Copyright;(C);1995-1998;屬於;Paul;Gortmaker。;
這份文件可依第二版;GNU;通用公開授權(General;Public;License)的條件,包括此聲明,進行拷貝。細節請參閱隨附於;Linux;核心的;linux/COPYING;檔案。;
如果你想把這份文件集結出版,請與我聯絡,我會確認你取得的是否為最新的資訊。過去曾經有過時的;Linux;說明文件版本出版,造成發展者為了在新版文件中已有答案的問題想破頭殼。;
This;document;is;not;gospel.;However,;it;is;probably;the;most;up;to;date;info;that;you;will;be;able;to;find.;Nobody;is;responsible;for;what;happens;to;your;hardware;but;yourself.;If;your;hardware;goes;up;in;smoke;(...nearly;impossible!);I;take;no;responsibility.;ie.;THE;AUTHOR;IS;NOT;RESPONSIBLE;FOR;ANY;DAMAGES;INCURRED;DUE;TO;ACTIONS;TAKEN;BASED;ON;THE;INFORMATION;INCLUDED;IN;THIS;DOCUMENT.;
This;document;is;Copyright;(C);1995-1998;by;Paul;Gortmaker.;
This;document;may;be;copied;according;to;the;conditions;of;the;GNU;General;Public;License,;version;2,;included;herein;by;reference.;See;the;file;linux/COPYING;that;comes;with;the;Linux;kernel;for;full;details.;
If;you;are;intending;to;incorporate;this;document;into;a;published;work,;please;contact;me,;and;I;will;make;an;effort;to;ensure;that;you;have;the;most;up;to;date;information;available.;In;the;past,;out;of;date;versions;of;the;Linux;howto;documents;have;been;published,;which;caused;the;developers;undue;grief;from;being;plagued;with;questions;that;were;already;answered;in;the;up;to;date;versions.;
1.2;相關文件;
最新版的文件永遠是核心的原始程式碼本身。等一下!先不要害怕。閱讀原始檔裡的注解不需要懂任何程式設計。例如,如果你要找可以傳給;AHA1542;SCSI;驅動程式的參數,那就到;linux/drivers/scsi;目錄下去看;aha1542.c;這個檔,在前面;100;行裡就可以找到一段原文說明此;1542;驅動程式所接受的啟動時期參數。;
下個絕佳的參考是核心本身隨附的任何文件檔。目前並不多,大部份可以在;linux/Documentation;目錄及其下的子目錄中找到。;linux;目錄通常可以在;/usr/src/;下找到。有時候也可以在相關驅動程式目錄裡找到;README.foo;檔案(例如;linux/drivers/XXX/;,其中的;XXX;可能是;scsi,;char,;or;net)。;
如果你已經找到想要使用的啟動參數,而現在想知道如何把這些資訊傳給核心的話,那就看看你用來啟動核心的軟體(例如;LILO;或者是;loadlin;)所隨附的文件。下面有簡短的概述,但不能替代啟動軟體所隨附的文件。;
1.3;Linux;新聞群組;
如果你有關於傳遞參數給核心這方面的問題,請先讀一讀這份文件。如果它以及前面所提到的相關文件都沒能回答你的問題,那麽你可以試試;Linux;新聞群組。當然,在輕率的貼出你的問題前應該先閱讀該新聞群組,因為可能已經有人問過這個問題,或者這可能已經是個常見問題(a;FAQ)。張貼之前先快速浏覽;linux;常見問題會是個好習慣。你應該能夠在鄰近這份文件的某處找到常見問題集。;
關於如何配置系統的一般性問題應該直接貼到;comp.os.linux.setup;新聞群組。;請你尊重這個有關張貼內容的一般慣例,並且,不要把你的需求交叉張貼(cross-post)到其它群組去。;
1.4;新版文件;
新版文件可由匿名檔案傳輸服務(anonymous;FTP)從;sunsite.unc.edu;這個站取得,在;/pub/Linux/docs/HOWTO/;目錄裡。注意,SunSITE;的負載經常很大,所以建議你最好找個;Linux;檔案傳輸映射(mirror)節點取得此文件。有新的資訊以及/或是驅動程式時就會補充資料。如果你現在讀的這份拷貝已經有幾個月之久,你可能得確認一下是否有新的。;
這份文件系使用一套特別為;Linux;說明文件計畫修改的;SGML;系統所產生的,有各種不同的輸出格式,包括;postscript,;dvi,;ascii,;html,;以及將要出現的;Texinfo。我建議以;html(經由全球資訊網浏覽器)或;Postscript/dvi;格式閱讀。這兩者都包含;ascii;轉換過程中失去的交互參考(cross-references)。;
如果你想從;sunsite;取得正式的拷貝,位址(URL)在此。;BootPrompt-HOWTO
--------------------------------------------------------------------------------
--------------------------------------------------------------------------------
2.;啟動提示參數概觀
這一節介紹一些可以用來傳遞啟動時期參數給核心本身的軟體□例。也給你有關這些參數系如何被處理,啟動參數有什麽樣的限制,以及它們如何被轉送到各個適當設備的觀念。;
有一點很重要得注意的是在啟動參數中不應該使用空白,只有在各別的參數之間可以。單一參數其值的列表(A;list;of;values)是在各值之間以逗號格開的,再一次,沒有任何空白。參見下面的□例。;
--------------------------------------------------------------------------------
ether=9,0x300,0xd0000,0xd4000,eth0;;root=/dev/hda1
*RIGHT*
ether;=;9,;0x300,;0xd0000,;0xd4000,;eth0;;root;=;/dev/hda1
*WRONG*
--------------------------------------------------------------------------------
2.1;LILO;(LInux;LOader);
最常用的是;Werner;Almesberger;所寫的;LILO(LInux;LOader);程式。它有能力啟動不同的核心,而且配置資訊存放在一個純文字檔裡。大部份的發行套件都附有;LILO;作為預設的啟動載入程式(boot-loader)。;LILO;可以一視同仁地啟動;DOS,;OS/2,;Linux,;FreeBSD;等等,而且相當有彈性。;
在你開機之後,典型的配置會讓;LILO;停住並印出;LILO:。然後等個幾秒看看使用者有沒有輸入任何選項,沒有的話就啟動預設的系統。在;LILO;配置檔裡典型的系統標簽是;linux;以及;backup;和;msdos。如果你想要輸入啟動參數,可以打在這,在輸入你要;LILO;啟動的系統之標簽後面,像下面這個□例所顯示的。;
--------------------------------------------------------------------------------
LILO:;linux;root=/dev/hda1
--------------------------------------------------------------------------------
LILO;隨附有絕佳的文件,而且為了這裡所討論的啟動參數之使用,當你想要把啟動時期參數加到;LILO;配置檔裡永久使用時;LILO;的;append=;指令就非常重要。只要簡單地在;/etc/lilo.conf;檔中加入像;append;=;"foo=bar";這樣的東東即可。可以加在該檔的最前面,使它對每一節區(section)都生效,或是加在某;image=;節區裡使它對該節區生效。請參閱;LILO;文件裡更完整的說明。;
2.2;LoadLin;
另一個常用的;Linux;載入程式;`LoadLin';則是一支有能力從;DOS;提示符號(prompt)下啟動;Linux;核心(可以給予啟動參數)的;DOS;程式,假如某些系統資源可用的話就行。這對使用;DOS;並想從;DOS;下啟動進入;Linux;的人而言很好用。;
如果你擁有一些需要使用其所提供的;DOS;驅動程式來初使化以進入可用狀態;(known;state)的硬體那麽它也很有用。一個常見的例子是需要使用;DOS;驅動程式設定(twiddle);幾個