?? 2.htm
字號:
clean</SAMP>)或者將它們拷貝到另一個機器的<CODE>/var/cache/apt/archives/</CODE>目錄中以備以后的安裝。
<HR>
<A name=s-keepingalog></A>
<H3>2.3.8 升級記錄</H3>
<P><CODE>dpkg</CODE>會對軟件包的解包、配置、刪除、完全刪除進行記錄,但不能(目前是這樣)記錄在包操作的過程中活躍終端的行為。
<P>最簡單的解決方法是在運行<CODE>dpkg</CODE>、<CODE>dselect</CODE>、<CODE>apt-get</CODE>等工具的會話中加入<CODE>script(1)</CODE>程序。
<HR>
<A name=s-boot></A>
<H2>2.4 Debian系統(tǒng)引導(dǎo)進程</H2>
<HR>
<A name=s-init></A>
<H3>2.4.1 <SAMP>init</SAMP>程序</H3>
<P>同所有的Unix一樣,Debian啟動要執(zhí)行init程序。<SAMP>init</SAMP>的配置文件(<SAMP>/etc/inittab</SAMP>)中指定的第一個執(zhí)行腳本應(yīng)該是<SAMP>/etc/init.d/rcS</SAMP>。該腳本跟據(jù)<SAMP>/etc/rcS.d/</SAMP>目錄中各腳本的擴展名回溯或分流子進程完成諸如檢查并掛載文件系統(tǒng)、裝載內(nèi)核模塊、啟動網(wǎng)絡(luò)服務(wù)、設(shè)定時鐘等系統(tǒng)初始化工作。接著,為了兼容性考慮,它運行<SAMP>/etc/rc.boot/</SAMP>目錄下的文件(除了那些文件名中包含“.”的文件),目錄中的腳本通常是供系統(tǒng)管理員使用的,用于有兼容性問題的軟件包。更多信息參見<A
href="http://qref.sourceforge.net/Debian/reference/ch-tune.zh-cn.html#s-init-hints">系統(tǒng)初始化提示,
第 9.1 節(jié)</A>。
<HR>
<A name=s-runlevels></A>
<H3>2.4.2 運行級別</H3>
<P>完成系統(tǒng)啟動進程后,<SAMP>init</SAMP>執(zhí)行默認運行級別(該運行級別由<SAMP>/etc/inittab</SAMP>中的<SAMP>id</SAMP>給出)指定的所有的啟動腳本。同所有System
V兼容Unix一樣,Linux有7個運行級別:
<UL>
<LI>0(關(guān)閉系統(tǒng)),
<LI>1(單用戶模式 single-user mode),
<LI>2(各種多用戶模式 multi-user modes),
<LI>6(重啟系統(tǒng))。 </LI></UL>
<P>Debian系統(tǒng)運行<SAMP>id=2</SAMP>,它表示進入多用戶模式時默認運行級別為2,所以將運行<SAMP>/etc/rc2.d/</SAMP>中的腳本。
<P>實際上,任意目錄<CODE>/etc/rc<VAR>N</VAR>.d/</CODE>中的腳本都是指向<CODE>/etc/init.d/</CODE>的符號鏈接。然而,每個<CODE>/etc/rc<VAR>N</VAR>.d/</CODE>目錄中文件的<STRONG>名稱</STRONG>用來指定<CODE>/etc/init.d/</CODE>相應(yīng)腳本的運行<STRONG>方式</STRONG>。特別是,在進入任何運行級別之前,所有名稱以“K”打頭的腳本均被運行,這些腳本的工作是中止進程。然后,所有名稱以“S”打頭的腳本被運行,這些腳本的工作是啟動進程。名稱中跟在“K”或“S”后的兩位數(shù)規(guī)定了腳本運行的先后次序,數(shù)字小的腳本先運行。
<P>采用這種工作方式是因為<SAMP>/etc/init.d/</SAMP>中的腳本均有一個參數(shù)規(guī)定腳本“start”、“stop”、“reload”、“restart”或“force-reload”,腳本按各自參數(shù)的賦值執(zhí)行任務(wù)。這些腳本甚至可以在系統(tǒng)啟動后用來控制多進程。
<P>例如,使用帶“reload”參數(shù)的命令 <PRE> # /etc/init.d/sendmail reload
</PRE>
<P>發(fā)給sendmail daemon進程一個信號,要它重讀配置文件。
<HR>
<A name=s-custombootscripts></A>
<H3>2.4.3 自定義系統(tǒng)引導(dǎo)進程</H3>
<P>Debian沒有使用BSD風(fēng)格的BSD-style <SAMP>rc.local</SAMP>目錄來自定義系統(tǒng)引導(dǎo)進程;它提供自己的自定義機制。
<P>假設(shè)系統(tǒng)要在啟動時運行foo腳本,或進入指定的(System V)運行級別。那系統(tǒng)管理員可以這樣:
<OL type=1>
<LI>將<SAMP>foo</SAMP>腳本加入<CODE>/etc/init.d/</CODE>目錄。 </LI></OL>
<OL type=1 start=2>
<LI>使用合適的參數(shù)運行Debian命令<CODE>update-rc.d</CODE>,這樣就在(命令行指定的)<SAMP>rc<VAR>?</VAR>.d</SAMP>目錄和<CODE>/etc/init.d/foo</CODE>之間建立了鏈接,這里<VAR>?</VAR>是0到6中的一個數(shù)字,對應(yīng)于System
V的各個運行級別。 </LI></OL>
<OL type=1 start=3>
<LI>重啟系統(tǒng)。 </LI></OL>
<P><SAMP>update-rc.d</SAMP>命令會在<SAMP>rc<VAR>?</VAR>.d</SAMP>目錄中文件與<CODE>/etc/init.d/</CODE>目錄中的腳本之間目錄建立鏈接,每個鏈接名會以“S”或“K”打頭,接下來是一個數(shù)字,再就是腳本名。當(dāng)系統(tǒng)進入某個運行級別<VAR>N</VAR>時,<CODE>/etc/rc<VAR>N</VAR>.d/</CODE>中以“K”打頭的腳本執(zhí)行<SAMP>停止</SAMP>(stop)指令,接下來以“S”打頭的腳本執(zhí)行<SAMP>開始</SAMP>(start)指令。
<P>還可以這樣來做,將腳本放在<CODE>/etc/init.d/</CODE>下然后使用<SAMP>update-rc.d foo defaults
19</SAMP>建立鏈接,讓<SAMP>foo</SAMP>腳本在系統(tǒng)啟動期間執(zhí)行。參數(shù)<SAMP>defaults</SAMP>指默認運行級別,它可以是2到5中某個值。參數(shù)<SAMP>19</SAMP>確保<SAMP>foo</SAMP>在其它參數(shù)大于20的腳本之前執(zhí)行。
<HR>
<A name=s-diverse></A>
<H2>2.5 多樣性支持</H2>
<P>Debian提供幾種途徑,在不破壞系統(tǒng)的前提下滿足系統(tǒng)管理員各種要求。
<UL>
<LI><CODE>dpkg-divert</CODE>,參閱<A
href="http://qref.sourceforge.net/Debian/reference/ch-package.zh-cn.html#s-dpkg-divert"><CODE>dpkg-divert</CODE>命令,
第 6.5.1 節(jié)</A>。 </LI></UL>
<UL>
<LI><CODE>equivs</CODE>,參閱<A
href="http://qref.sourceforge.net/Debian/reference/ch-package.zh-cn.html#s-equivs"><CODE>equivs</CODE>軟件包,
第 6.5.2 節(jié)</A>。 </LI></UL>
<UL>
<LI><CODE>update-alternative</CODE>,參閱<A
href="http://qref.sourceforge.net/Debian/reference/ch-package.zh-cn.html#s-alternatives">自選命令,
第 6.5.3 節(jié)</A>。 </LI></UL>
<UL>
<LI><CODE>make-kpkg</CODE>可以支持多啟動引導(dǎo)。參閱<CODE>make-kpkg(1)</CODE>和<A
href="http://qref.sourceforge.net/Debian/reference/ch-kernel.zh-cn.html#s-kernel-debian">Debian標準方式,
第 7.1.1 節(jié)</A>。 </LI></UL>
<P>Any files under
<CODE>/usr/local/</CODE>目錄下的所有文件均屬于系統(tǒng)管理員,Debian不會改動它們。<CODE>/etc</CODE>下的大部分(或全部)文件屬于<SAMP>conffiles</SAMP>,Debian不會在升級后覆蓋它們,除非系統(tǒng)管理員明確要求覆蓋。
<HR>
<A name=s-i18n></A>
<H2>2.6 國際化</H2>
<P>Debian系統(tǒng)是國際化產(chǎn)品,不論是在控制臺下還是在X下,它都提供多種語言的字符顯示和輸入支持。許多文檔、幫助頁面以及系統(tǒng)消息都被翻譯成各種語言。在安裝過程中,Debian提示用戶選擇安裝語言(有時是當(dāng)?shù)卣Z言變量)。
<P>如果你安裝的系統(tǒng)提供的語言特性支持不能滿足你的需要,或者你要改變當(dāng)前語言或安裝別的鍵盤方案以適應(yīng)你的語言,參閱<A
href="http://qref.sourceforge.net/Debian/reference/ch-tune.zh-cn.html#s-l10n">本地化(localization)及國家語言支持,
第 9.7 節(jié)</A>。
<HR>
<A name=s-kernel-details></A>
<H2>2.7 Debian和系統(tǒng)內(nèi)核</H2>
<P>See <A
href="http://qref.sourceforge.net/Debian/reference/ch-kernel.zh-cn.html">Debian下的Linux內(nèi)核,
第 7 章</A>.
<HR>
<A name=s-non-debian-kernel></A>
<H3>2.7.1 編譯非Debian源碼包內(nèi)核代碼</H3>
<P>首先你必須了解Debian policy有關(guān)頭文件的規(guī)定。
<P>Debian C libraries是依據(jù)<STRONG>內(nèi)核</STRONG>頭文件最新<STRONG>stable</STRONG>發(fā)布版創(chuàng)建的。
<P>例如,Debian 1.2發(fā)布版使用版本號為5.4.13的頭文件。它基于所有Linux
FTP文件站點發(fā)布的Linux內(nèi)核源碼包,這些源碼包使用了最新的頭文件。跟隨內(nèi)核源碼發(fā)布的內(nèi)核頭文件位于<CODE>/usr/include/linux/include/</CODE>。
<P>如果你編譯某個程序所用的內(nèi)核頭文件比<CODE>libc6-dev</CODE>提供的頭文件還新,在編譯時你必須在命令行中加上<SAMP>-I/usr/src/linux/include/</SAMP>。這些情況是存在的,例如,對于automounter
daemon(<CODE>amd</CODE>)軟件包而言,當(dāng)新內(nèi)核改變了對NFS的內(nèi)部操作方式,<CODE>amd</CODE>需要知道這些改變。這時就需要引用新的內(nèi)核頭文件。
<HR>
<A name=s-customkernel></A>
<H3>2.7.2 自定義內(nèi)核創(chuàng)建工具</H3>
<P>對于希望(或必須)使用自定義內(nèi)核的用戶,推薦下載<CODE>kernel-package</CODE>軟件包。該軟件包包含了創(chuàng)建內(nèi)核包的腳本。有了它,新建Debian內(nèi)核鏡像包只需在內(nèi)核源碼目錄的一級目錄運行
<PRE> # make-kpkg kernel_image
</PRE>
<P>在內(nèi)核源碼所在目錄的頂層,執(zhí)行下述命令可獲得有關(guān)幫助 <PRE> # make-kpkg --help
</PRE>
<P>或閱讀<CODE>make-kpkg(8)</CODE>幫助頁面以及<A
href="http://qref.sourceforge.net/Debian/reference/ch-kernel.zh-cn.html">Debian下的Linux內(nèi)核,
第 7 章</A>。
<P>如果所需的kernel-source-<VAR>version</VAR>(version代表內(nèi)核版本號)包不存在,用戶就得從Linux文件站點分別下載最新的(或需要的)內(nèi)核源碼。Debian的<CODE>initrd</CODE>啟動腳本需要一個專門的內(nèi)核路徑調(diào)用<CODE>initrd</CODE>;參閱<CODE><A
href="http://bugs.debian.org/149236">http://bugs.debian.org/149236</A></CODE>。
<P>有關(guān)<CODE>kernel-package</CODE>包的用法詳述見于<SAMP>/usr/doc/kernel-package/README</SAMP>。
<HR>
<A name=s-alt-boot></A>
<H3>2.7.3 多系統(tǒng)引導(dǎo)器</H3>
<P>要使用多系統(tǒng)引導(dǎo)器如<CODE>grub</CODE>或<CODE>loadlin</CODE>,請將編譯好的Linux內(nèi)核<CODE>bzimage</CODE>拷貝到相應(yīng)的地方(例如<CODE>/boot/grub</CODE>或MS-DOS分區(qū))。
<HR>
<A name=s-custombootdisk></A>
<H3>2.7.4 制做引導(dǎo)軟盤</H3>
<P>Debian的<CODE>boot-floppies</CODE>軟件包可以幫你制作一張自定義啟動軟盤,該軟件包通常位于Debian
FTP包文件站點的<SAMP>admin</SAMP>分類。軟件包中的Shell腳本按<CODE>syslinux</CODE>格式制作啟動軟盤。對于那些使用MS-DOS格式化的軟盤,其主引導(dǎo)扇區(qū)的記錄將被修改為直接引導(dǎo)Linux(或是其它在盤中<SAMP>syslinux.cfg</SAMP>文件里的操作系統(tǒng))。該軟件包中的其它腳本可制作急救盤甚至重建基本系統(tǒng)。
<P>安裝該軟件包后,閱讀<CODE>/usr/doc/boot-floppies/README</CODE>文件可獲得更多信息。
<HR>
<A name=s-modules></A>
<H3>2.7.5 模塊加載規(guī)定</H3>
<P>Debian的<CODE>modconf</CODE>軟件包提供了一個shell腳本(<CODE>/usr/sbin/modconf</CODE>),它可以用來自定義內(nèi)核模塊配置。該腳本使用菜單界面,用戶通過它給出系統(tǒng)中可掛載設(shè)備驅(qū)動的有關(guān)細節(jié),它再將這些細節(jié)信息生成<CODE>/etc/modules.conf</CODE>文件(其中列出了別名aliases和其它參數(shù),用于連接各種模塊),該配置文件用來加載<CODE>/etc/modutils/</CODE>目錄下和<CODE>/etc/modules</CODE>(其中列出了需要在系統(tǒng)啟動時加載的模塊)目錄的相關(guān)模塊。
<P>新版的配置幫助文件可為構(gòu)造自定義內(nèi)核提供幫助,同樣,<CODE>modconf</CODE>軟件包中也有一系列幫助文件(位于<CODE>/usr/share/modconf/</CODE>目錄下),告訴你如何對模塊設(shè)定合適的參數(shù)。參閱<A
href="http://qref.sourceforge.net/Debian/reference/ch-kernel.zh-cn.html#s-kernel-modules">模塊化的2.4內(nèi)核,
第 7.2 節(jié)</A>中的例子。
<HR>
<A name=s-removeoldkernel></A>
<H3>2.7.6 卸載舊內(nèi)核</H3>
<P><SAMP>kernel-image-<VAR>NNN</VAR>.prerm</SAMP>腳本可用來檢查當(dāng)前運行的內(nèi)核版本,以確定是否與你打算卸載的內(nèi)核版本相同。因此你可以使用如下命令刪除不想要的內(nèi)核鏡像包:
<PRE> dpkg --purge --force-remove-essential kernel-image-<VAR>NNN</VAR>
</PRE>
<P>(當(dāng)然,要將<VAR>NNN</VAR>替換成你的內(nèi)核版本號和修訂版號。)
<HR>
[ <A
href="http://qref.sourceforge.net/Debian/reference/ch-preface.zh-cn.html">上一頁</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/reference.zh-cn.html#contents">目錄</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-preface.zh-cn.html">1</A>
] [ 2 ] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-install.zh-cn.html">3</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-tutorial.zh-cn.html">4</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-woody.zh-cn.html">5</A> ]
[ <A
href="http://qref.sourceforge.net/Debian/reference/ch-package.zh-cn.html">6</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-kernel.zh-cn.html">7</A> ]
[ <A
href="http://qref.sourceforge.net/Debian/reference/ch-tips.zh-cn.html">8</A> ] [
<A href="http://qref.sourceforge.net/Debian/reference/ch-tune.zh-cn.html">9</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-gateway.zh-cn.html">10</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-edit.zh-cn.html">11</A> ]
[ <A
href="http://qref.sourceforge.net/Debian/reference/ch-vcs.zh-cn.html">12</A> ] [
<A
href="http://qref.sourceforge.net/Debian/reference/ch-program.zh-cn.html">13</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-gnupg.zh-cn.html">14</A> ]
[ <A
href="http://qref.sourceforge.net/Debian/reference/ch-support.zh-cn.html">15</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ap-appendix.zh-cn.html">A</A>
] [ <A
href="http://qref.sourceforge.net/Debian/reference/ch-install.zh-cn.html">下一頁</A>
]
<HR>
<P>Debian 參考手冊
<ADDRESS>CVS, 星期三 四月 28 19:36:38 UTC 2004<BR><BR>Osamu Aoki <CODE><A
href="mailto:osamu@debian.org">osamu@debian.org</A></CODE><BR>Translator: Hao
"Lyoo" Liu <CODE><A
href="mailto:iamlyoo@163.net">iamlyoo@163.net</A></CODE><BR><A
href="http://qref.sourceforge.net/Debian/reference/ap-appendix.zh-cn.html#s-authors">作者,
第 A.1 節(jié)</A><BR><BR></ADDRESS>
<HR>
</BODY></HTML>
?? 快捷鍵說明
復(fù)制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -