https://wiki.archlinux.org/api.php?action=feedcontributions&user=Henry40408&feedformat=atom
ArchWiki - User contributions [en]
2024-03-28T23:27:44Z
User contributions
MediaWiki 1.41.0
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=116085
Official Installation Guide (正體中文)
2010-08-31T11:47:18Z
<p>Henry40408: /* CPU等級 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
[[Category:Getting and installing Arch (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,本文件將保留原文並附上中文翻譯)<br />
<br />
Arch Linux and scripts are copyright<br />
<br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br />
<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
Arch Linux與內附腳本皆以GNU通用公共授權條款(GNU GPL)發布,版權屬於Judd Vinet、Aaron Griffin所有。<br />
<br />
==安裝前準備==<br />
<br />
===CPU等級===<br />
<br />
由於AL是款專為i686/x86-64等級之CPU最佳化過的Linux發行版,因此'''AL並不保證能在等級較低(如i386,i486或i586)或是不相容的CPU上正常執行'''。但若要正常執行AL,'''PentiumPro、PentiumII或AMDAthlon(K7)等級的CPU是最低需求'''。(技術上來說,一款不支援cmov命令的CPU如AMDK6和viaC3也都是i686等級的CPU,但我們在開發時所使用的GCC卻會使用到cmov這個前述兩者皆未支援的命令。因此,我們並不保證AL能在這兩款CPU上正常執行)在安裝AL之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您必須先決定將採取何種安裝方式。就目前來說,我們提供了兩大類的安裝映像檔:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何'''備有 USB 開機功能 BIOS''' 的電腦上運作。<br />
<br />
The GRUB bootloader is used, but for those having problems with GRUB not loading with certain CD-rom drives, ISO images with the ISOLINUX bootloader are offered as well. <br />
There are two variants of each installation medium which only differ in terms of supplied packages.<br />
<br />
這兩個映像檔都以 GRUB 作為開機程式,但在某些光碟機上,GRUB 有可能無法正常執行。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''上傳套裝軟體'''<br />
<br />
若是想要上傳套裝軟體,請看一下 AUR:Arch User Repository (Arch 使用者套件庫) 與它的指南。新的套裝軟體應要上傳至 AUR。<br />
<br />
若你正想上傳套裝軟體,請做以下的指示<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=116083
Official Installation Guide (正體中文)
2010-08-31T11:46:30Z
<p>Henry40408: /* CPU 等級 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
[[Category:Getting and installing Arch (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,本文件將保留原文並附上中文翻譯)<br />
<br />
Arch Linux and scripts are copyright<br />
<br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br />
<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
Arch Linux與內附腳本皆以GNU通用公共授權條款(GNU GPL)發布,版權屬於Judd Vinet、Aaron Griffin所有。<br />
<br />
==安裝前準備==<br />
<br />
===CPU等級===<br />
<br />
由於AL是款專為i686/x86-64等級之CPU最佳化過的Linux發行版,因此'''AL並不保證能在等級較低(如i386,i486或i586)或是不相容的CPU上正常執行'''。但若要正常執行AL,'''PentiumPro、PentiumII或AMDAthlon(K7)等級的CPU是最低需求'''。(技術上來說,一款不支援cmov命令的CPU如AMDK6和viaC3也都是i686等級的CPU,但我們在開發時所使用的GCC卻會使用到cmov這個前述兩者皆未支援的命令。因此,我們並不保證AL能在這兩款CPU上正常執行)在安裝AL之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您必須先決定將採取何種安裝方式。就目前來說,我們提供了兩大類的安裝映像檔:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何'''備有 USB 開機功能 BIOS''' 的電腦上運作。<br />
<br />
The GRUB bootloader is used, but for those having problems with GRUB not loading with certain CD-rom drives, ISO images with the ISOLINUX bootloader are offered as well. <br />
There are two variants of each installation medium which only differ in terms of supplied packages.<br />
<br />
這兩個映像檔都以 GRUB 作為開機程式,但在某些光碟機上,GRUB 有可能無法正常執行。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''上傳套裝軟體'''<br />
<br />
若是想要上傳套裝軟體,請看一下 AUR:Arch User Repository (Arch 使用者套件庫) 與它的指南。新的套裝軟體應要上傳至 AUR。<br />
<br />
若你正想上傳套裝軟體,請做以下的指示<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=115972
Official Installation Guide (正體中文)
2010-08-30T12:22:08Z
<p>Henry40408: /* 授權協議 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
[[Category:Getting and installing Arch (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,本文件將保留原文並附上中文翻譯)<br />
<br />
Arch Linux and scripts are copyright<br />
<br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br />
<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
Arch Linux與內附腳本皆以GNU通用公共授權條款(GNU GPL)發布,版權屬於Judd Vinet、Aaron Griffin所有。<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您必須先決定將採取何種安裝方式。就目前來說,我們提供了兩大類的安裝映像檔:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何'''備有 USB 開機功能 BIOS''' 的電腦上運作。<br />
<br />
The GRUB bootloader is used, but for those having problems with GRUB not loading with certain CD-rom drives, ISO images with the ISOLINUX bootloader are offered as well. <br />
There are two variants of each installation medium which only differ in terms of supplied packages.<br />
<br />
這兩個映像檔都以 GRUB 作為開機程式,但在某些光碟機上,GRUB 有可能無法正常執行。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''上傳套裝軟體'''<br />
<br />
若是想要上傳套裝軟體,請看一下 AUR:Arch User Repository (Arch 使用者套件庫) 與它的指南。新的套裝軟體應要上傳至 AUR。<br />
<br />
若你正想上傳套裝軟體,請做以下的指示<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=113583
The Arch Way (正體中文)
2010-08-10T00:41:06Z
<p>Henry40408: /* 正確的程式碼比日後的修補和華麗的介面來的重要 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
李奧納多·達文西曾說:"簡單是複雜的至高境界。"<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分"簡單",但是"簡單"本身卻有多種定義。<br />
<br />
'''AL 對"簡單"的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的設計比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==使用者至上(準備翻譯)==<br />
<br />
鑑於許多 GNU/Linux 發行版都在加強貼近使用者習慣的圖形介面, AL 卻一直保持以使用者為中心的一貫態度。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Arch_Linux_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=113582
Arch Linux (正體中文)
2010-08-10T00:27:37Z
<p>Henry40408: /* Arch Linux 的優勢 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|Arch Linux}}<br />
<br />
== 什麼是 Arch Linux? ==<br />
<br />
Arch Linux (以下簡稱 '''''AL''''' )是款具有以下特點的原生社群發行版:<br />
#特別針對 i686 與 x86-64 平台做了最佳化處理。<br />
#以'''迴圈式發行版模型'''( rolling-release model ,直譯,以下簡稱 '''RRM''' )作為開發基礎。這表示系統安裝完成之後,任何套件的更新也不會對系統造成任何重大的影響甚至毀損。<br />
#提供了一個類似 ports 的套件管理系統。<br />
#規模龐大且內容豐富的套件庫,使用者得以自由地選擇最適合自己習慣的套件組合。<br />
簡而言之,開發團隊致力於將 AL 開發成一款集'''極簡主義'''( minimalism )、'''典雅'''( elegance )且永遠保持在'''最新、最穩定狀態'''( modernity )的 Linux 發行版。 AL 的 0.1 版(代號 Homer )於 2002 年 3 月 11 日釋出。<br />
<br />
== Arch Linux 的優勢 ==<br />
<br />
AL 針對 i686/x86-64 平台提供了一個極為迷你、親切的文字介面安裝程序。 AL 非常的'''輕巧'''( lightweight )、'''靈活'''( flexible )、'''簡單'''( simple )與 UNIX-like ,這些設計哲學讓 AL 具有很高的可塑性。您可以將它塑造成僅有文字介面但功能強大的伺服器,或者是親切且適合初學者使用的圖形介面。 AL 不會將使用者限制在系統安裝時就一并安裝的預設套件,這表示進階使用者也能夠透過套件的裝卸自由地製作一個專屬於自己的 AL 。只有'''''使用者'''''才有權力決定自己的 AL 該長成什麼樣子、擁有什麼功能!<br />
<br />
== 獨一無二的套件管理程式 ==<br />
<br />
AL 所使用的是一款以 C 語言製作、輕巧、快速、易於使用的套件管理程式 Pacman ,這款程式甚至可以只讓您使用一個指令就升級整個 AL 。我們也提供了一款類似 ports 的套件建置系統 ABS ( [[Arch Build System (正體中文)|Arch Build System]] ),這表示您也可以非常簡單地以原始碼為基礎來建立與安裝套件或只用一個指令來同步整個 AL 。有了 Pacman 和 ABS ,所有的工作都能在極為簡潔的過程中完成。除此之外, AL 的 RRM 也讓您不必在對系統做整體升級時重新下載並安裝整套系統──只需透過 Pacman 下載某些經重大更新後的套件,就能讓您的系統保持在最新且最穩定的狀態。<br />
<br />
== 最新與最穩定 ==<br />
<br />
開發團隊努力地維護所有已釋出與即將釋出的版本。在 RRM 的幫助下,我們同時也致力於讓所有套件保持在最新且最穩定的狀態。我們提供了相當精簡的 core 套件庫給最為精簡的 i686/x86-64 系統、開發者或使用者向套件庫提供的各種高品質的擴充套件、眾多利於使用者從原始碼建立與包裝任何套件的 PKGBUILD 腳本。 AL 所提供的大部分是來源可信、經作者正式發布、非經補強的穩定套件。但在某些極少發生的特定情況之下,舊的套件有可能會因為版本相容的問題而導致 RRM 無法針對這個套件作升級或補強,此時為了維持 RRM 的順利運作,我們才會發布補強套件進行修補。<br />
<br />
AL 也應用了許多已被 GNU/Linux 支援的新技術,如檔案系統方面有 Ext 2/3/4 、 Reiser 、 XFS 、 JFS 等,硬碟管理方面有 LVM2/EVMS 、 RAID 等,設備管理方面則有 udev 支援和 initcpio 等。總而言之, AL 無論是在軟體或是硬體方面,最新最穩定與套件更新的連貫性永遠是我們的最高指導原則。<br />
<br />
== 簡單就是美 ==<br />
<br />
AL 的設計哲學之一即'''簡單就是美'''。即便 AL 的基本系統非常地輕巧與迷你,但 GNU 工具包、一些有用的擴充命令工具如 '''Vi''' 和 '''links''' 等卻一個也沒少。這些不可忽略的實用工具對使用者擴充 AL 成為較為合適自己的版本這件事情大有幫助。<br />
<br />
AL 的 init 的設計靈感來自於 *BSD 系列。AL 的 init 在進入每個 runlevel 時僅從'''單一檔案'''(如[[rc.conf]])而非包含了'''一堆符號連結( symlinks )的資料夾'''中讀取設定。如此一來, init 與 AL 開機速度即可得到有效的提升。<br />
<br />
AL 的系統設定也統一包含在幾個文字檔案之中。對進階使用者而言,這表示您再也不必在茫茫的硬碟當中為了一個小小的設定尋找失落的設定檔案了。<br />
<br />
== 其他參考資料 ==<br />
<br />
AL 的官方網站在 [http://www.archlinux.org/ ArchLinux.org] 。在官方網站上你也可以找到其他相關資源的連接,例如官方提供的[http://bbs.archlinux.org/ 使用者論壇],官方文件和其他 AL 的相關資源。你也可以參閱 [[The Arch Way (正體中文)|Arch Linux 的設計哲學]] 這一篇文章以獲得更多關於 AL 的資訊與設計哲學。<br />
<br />
== 中文方面的資料 ==<br />
<br />
中文方面的資料目前可分為正體中文( 台灣 )和簡體( 中國大陸 )兩部分。<br />
<br />
正體中文的部分主要是由 [http://cle.linux.org.tw CLE] 來負責。目前提供的資源有官方 ftp 的 mirror,一個討論區和一個 wiki 來作中文方面得資源整合。<br />
<br />
簡體中文主要是由 [http://www.linuxsir.org Linuxsir] 來負責。目前提供了一個入口網頁作中文資源整合,和一個討論區。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Arch_Linux_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=111912
Arch Linux (正體中文)
2010-07-14T06:39:56Z
<p>Henry40408: /* 什麼是 Arch Linux? */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|Arch Linux}}<br />
<br />
== 什麼是 Arch Linux? ==<br />
<br />
Arch Linux (以下簡稱 '''''AL''''' )是款具有以下特點的原生社群發行版:<br />
#特別針對 i686 與 x86-64 平台做了最佳化處理。<br />
#以'''迴圈式發行版模型'''( rolling-release model ,直譯,以下簡稱 '''RRM''' )作為開發基礎。這表示系統安裝完成之後,任何套件的更新也不會對系統造成任何重大的影響甚至毀損。<br />
#提供了一個類似 ports 的套件管理系統。<br />
#規模龐大且內容豐富的套件庫,使用者得以自由地選擇最適合自己習慣的套件組合。<br />
簡而言之,開發團隊致力於將 AL 開發成一款集'''極簡主義'''( minimalism )、'''典雅'''( elegance )且永遠保持在'''最新、最穩定狀態'''( modernity )的 Linux 發行版。 AL 的 0.1 版(代號 Homer )於 2002 年 3 月 11 日釋出。<br />
<br />
== Arch Linux 的優勢 ==<br />
<br />
AL 針對 i686/x86-64 平台提供了一個極為迷你、親切的文字介面安裝程序。 AL 非常的'''輕巧'''( lightweight )、'''靈活'''( flexible )、'''簡單'''( simple )並非常的 UNIX-like ,這些設計哲學讓 AL 具有很高的可塑性。您可以將它塑造成僅有文字介面但功能強大的伺服器,或者是親切且適合初學者使用的圖形介面。 AL 不會將使用者限制在系統安裝時就一并安裝的預設套件,這表示進階使用者也能夠透過套件的裝卸自由地製作一個專屬於自己的 AL 發行版。畢竟,決定自己的 AL 該長成什麼樣子、擁有什麼功能的人永遠是'''''使用者'''''!<br />
<br />
== 獨一無二的套件管理程式 ==<br />
<br />
AL 所使用的是一款以 C 語言製作、輕巧、快速、易於使用的套件管理程式 Pacman ,這款程式甚至可以只讓您使用一個指令就升級整個 AL 。我們也提供了一款類似 ports 的套件建置系統 ABS ( [[Arch Build System (正體中文)|Arch Build System]] ),這表示您也可以非常簡單地以原始碼為基礎來建立與安裝套件或只用一個指令來同步整個 AL 。有了 Pacman 和 ABS ,所有的工作都能在極為簡潔的過程中完成。除此之外, AL 的 RRM 也讓您不必在對系統做整體升級時重新下載並安裝整套系統──只需透過 Pacman 下載某些經重大更新後的套件,就能讓您的系統保持在最新且最穩定的狀態。<br />
<br />
== 最新與最穩定 ==<br />
<br />
開發團隊努力地維護所有已釋出與即將釋出的版本。在 RRM 的幫助下,我們同時也致力於讓所有套件保持在最新且最穩定的狀態。我們提供了相當精簡的 core 套件庫給最為精簡的 i686/x86-64 系統、開發者或使用者向套件庫提供的各種高品質的擴充套件、眾多利於使用者從原始碼建立與包裝任何套件的 PKGBUILD 腳本。 AL 所提供的大部分是來源可信、經作者正式發布、非經補強的穩定套件。但在某些極少發生的特定情況之下,舊的套件有可能會因為版本相容的問題而導致 RRM 無法針對這個套件作升級或補強,此時為了維持 RRM 的順利運作,我們才會發布補強套件進行修補。<br />
<br />
AL 也應用了許多已被 GNU/Linux 支援的新技術,如檔案系統方面有 Ext 2/3/4 、 Reiser 、 XFS 、 JFS 等,硬碟管理方面有 LVM2/EVMS 、 RAID 等,設備管理方面則有 udev 支援和 initcpio 等。總而言之, AL 無論是在軟體或是硬體方面,最新最穩定與套件更新的連貫性永遠是我們的最高指導原則。<br />
<br />
== 簡單就是美 ==<br />
<br />
AL 的設計哲學之一即'''簡單就是美'''。即便 AL 的基本系統非常地輕巧與迷你,但 GNU 工具包、一些有用的擴充命令工具如 '''Vi''' 和 '''links''' 等卻一個也沒少。這些不可忽略的實用工具對使用者擴充 AL 成為較為合適自己的版本這件事情大有幫助。<br />
<br />
AL 的 init 的設計靈感來自於 *BSD 系列。AL 的 init 在進入每個 runlevel 時僅從'''單一檔案'''(如[[rc.conf]])而非包含了'''一堆符號連結( symlinks )的資料夾'''中讀取設定。如此一來, init 與 AL 開機速度即可得到有效的提升。<br />
<br />
AL 的系統設定也統一包含在幾個文字檔案之中。對進階使用者而言,這表示您再也不必在茫茫的硬碟當中為了一個小小的設定尋找失落的設定檔案了。<br />
<br />
== 其他參考資料 ==<br />
<br />
AL 的官方網站在 [http://www.archlinux.org/ ArchLinux.org] 。在官方網站上你也可以找到其他相關資源的連接,例如官方提供的[http://bbs.archlinux.org/ 使用者論壇],官方文件和其他 AL 的相關資源。你也可以參閱 [[The Arch Way (正體中文)|Arch Linux 的設計哲學]] 這一篇文章以獲得更多關於 AL 的資訊與設計哲學。<br />
<br />
== 中文方面的資料 ==<br />
<br />
中文方面的資料目前可分為正體中文( 台灣 )和簡體( 中國大陸 )兩部分。<br />
<br />
正體中文的部分主要是由 [http://cle.linux.org.tw CLE] 來負責。目前提供的資源有官方 ftp 的 mirror,一個討論區和一個 wiki 來作中文方面得資源整合。<br />
<br />
簡體中文主要是由 [http://www.linuxsir.org Linuxsir] 來負責。目前提供了一個入口網頁作中文資源整合,和一個討論區。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Arch_Linux_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=111911
Arch Linux (正體中文)
2010-07-14T06:36:41Z
<p>Henry40408: /* 什麼是 Arch Linux? */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|Arch Linux}}<br />
<br />
== 什麼是 Arch Linux? ==<br />
<br />
Arch Linux (以下簡稱 '''''AL''''' )是款具有以下特點的原生社群發行版:<br />
#特別針對 i686 與 x86-64 平台做了最佳化處理。<br />
#以'''迴圈式發行版模型'''( rolling-release model ,直譯,以下簡稱 '''RRM''' )作為開發基礎。這表示系統安裝完成之後,任何套件的更新也不會對系統造成任何重大的影響甚至毀損。<br />
#提供了一個類似 ports 的套件管理系統。<br />
#以規模龐大且內容豐富的套件庫,自由地選擇最適合自己習慣的套件組合。<br />
簡而言之,開發團隊致力於將 AL 開發成一款集'''極簡主義'''( minimalism )、'''典雅'''( elegance )且永遠保持在'''最新、最穩定狀態'''( modernity )的 Linux 發行版。 AL 的 0.1 版(代號 Homer )於 2002 年 3 月 11 日釋出。<br />
<br />
== Arch Linux 的優勢 ==<br />
<br />
AL 針對 i686/x86-64 平台提供了一個極為迷你、親切的文字介面安裝程序。 AL 非常的'''輕巧'''( lightweight )、'''靈活'''( flexible )、'''簡單'''( simple )並非常的 UNIX-like ,這些設計哲學讓 AL 具有很高的可塑性。您可以將它塑造成僅有文字介面但功能強大的伺服器,或者是親切且適合初學者使用的圖形介面。 AL 不會將使用者限制在系統安裝時就一并安裝的預設套件,這表示進階使用者也能夠透過套件的裝卸自由地製作一個專屬於自己的 AL 發行版。畢竟,決定自己的 AL 該長成什麼樣子、擁有什麼功能的人永遠是'''''使用者'''''!<br />
<br />
== 獨一無二的套件管理程式 ==<br />
<br />
AL 所使用的是一款以 C 語言製作、輕巧、快速、易於使用的套件管理程式 Pacman ,這款程式甚至可以只讓您使用一個指令就升級整個 AL 。我們也提供了一款類似 ports 的套件建置系統 ABS ( [[Arch Build System (正體中文)|Arch Build System]] ),這表示您也可以非常簡單地以原始碼為基礎來建立與安裝套件或只用一個指令來同步整個 AL 。有了 Pacman 和 ABS ,所有的工作都能在極為簡潔的過程中完成。除此之外, AL 的 RRM 也讓您不必在對系統做整體升級時重新下載並安裝整套系統──只需透過 Pacman 下載某些經重大更新後的套件,就能讓您的系統保持在最新且最穩定的狀態。<br />
<br />
== 最新與最穩定 ==<br />
<br />
開發團隊努力地維護所有已釋出與即將釋出的版本。在 RRM 的幫助下,我們同時也致力於讓所有套件保持在最新且最穩定的狀態。我們提供了相當精簡的 core 套件庫給最為精簡的 i686/x86-64 系統、開發者或使用者向套件庫提供的各種高品質的擴充套件、眾多利於使用者從原始碼建立與包裝任何套件的 PKGBUILD 腳本。 AL 所提供的大部分是來源可信、經作者正式發布、非經補強的穩定套件。但在某些極少發生的特定情況之下,舊的套件有可能會因為版本相容的問題而導致 RRM 無法針對這個套件作升級或補強,此時為了維持 RRM 的順利運作,我們才會發布補強套件進行修補。<br />
<br />
AL 也應用了許多已被 GNU/Linux 支援的新技術,如檔案系統方面有 Ext 2/3/4 、 Reiser 、 XFS 、 JFS 等,硬碟管理方面有 LVM2/EVMS 、 RAID 等,設備管理方面則有 udev 支援和 initcpio 等。總而言之, AL 無論是在軟體或是硬體方面,最新最穩定與套件更新的連貫性永遠是我們的最高指導原則。<br />
<br />
== 簡單就是美 ==<br />
<br />
AL 的設計哲學之一即'''簡單就是美'''。即便 AL 的基本系統非常地輕巧與迷你,但 GNU 工具包、一些有用的擴充命令工具如 '''Vi''' 和 '''links''' 等卻一個也沒少。這些不可忽略的實用工具對使用者擴充 AL 成為較為合適自己的版本這件事情大有幫助。<br />
<br />
AL 的 init 的設計靈感來自於 *BSD 系列。AL 的 init 在進入每個 runlevel 時僅從'''單一檔案'''(如[[rc.conf]])而非包含了'''一堆符號連結( symlinks )的資料夾'''中讀取設定。如此一來, init 與 AL 開機速度即可得到有效的提升。<br />
<br />
AL 的系統設定也統一包含在幾個文字檔案之中。對進階使用者而言,這表示您再也不必在茫茫的硬碟當中為了一個小小的設定尋找失落的設定檔案了。<br />
<br />
== 其他參考資料 ==<br />
<br />
AL 的官方網站在 [http://www.archlinux.org/ ArchLinux.org] 。在官方網站上你也可以找到其他相關資源的連接,例如官方提供的[http://bbs.archlinux.org/ 使用者論壇],官方文件和其他 AL 的相關資源。你也可以參閱 [[The Arch Way (正體中文)|Arch Linux 的設計哲學]] 這一篇文章以獲得更多關於 AL 的資訊與設計哲學。<br />
<br />
== 中文方面的資料 ==<br />
<br />
中文方面的資料目前可分為正體中文( 台灣 )和簡體( 中國大陸 )兩部分。<br />
<br />
正體中文的部分主要是由 [http://cle.linux.org.tw CLE] 來負責。目前提供的資源有官方 ftp 的 mirror,一個討論區和一個 wiki 來作中文方面得資源整合。<br />
<br />
簡體中文主要是由 [http://www.linuxsir.org Linuxsir] 來負責。目前提供了一個入口網頁作中文資源整合,和一個討論區。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Arch_Linux_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=111908
Arch Linux (正體中文)
2010-07-14T06:21:16Z
<p>Henry40408: /* 什麼是 Arch Linux? */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|Arch Linux}}<br />
<br />
== 什麼是 Arch Linux? ==<br />
<br />
Arch Linux (以下簡稱 '''''AL''''' )是款具有以下特點的原生社群發行版:<br />
#特別針對 i686 與 x86-64 平台做了最佳化處理。<br />
#以'''迴圈式發行版模型'''( rolling-release model ,直譯,以下簡稱 '''''RRM''''' )作為開發基礎。這表示系統安裝完成之後,任何套件的更新也不會對系統造成任何重大的影響甚至毀損。<br />
#提供了一個類似 ports 的套件管理系統。<br />
#以規模龐大且內容豐富的套件庫,自由地選擇最適合自己習慣的套件組合。<br />
簡而言之,開發團隊致力於將 AL 開發成一款集'''極簡主義'''( minimalism )、'''典雅'''( elegance )且永遠保持在'''最新最穩定狀態'''( modernity )的 Linux 發行版。 AL 的 0.1 版(代號 Homer )於 2002 年 3 月 11 日釋出。<br />
<br />
== Arch Linux 的優勢 ==<br />
<br />
AL 針對 i686/x86-64 平台提供了一個極為迷你、親切的文字介面安裝程序。 AL 非常的'''輕巧'''( lightweight )、'''靈活'''( flexible )、'''簡單'''( simple )並非常的 UNIX-like ,這些設計哲學讓 AL 具有很高的可塑性。您可以將它塑造成僅有文字介面但功能強大的伺服器,或者是親切且適合初學者使用的圖形介面。 AL 不會將使用者限制在系統安裝時就一并安裝的預設套件,這表示進階使用者也能夠透過套件的裝卸自由地製作一個專屬於自己的 AL 發行版。畢竟,決定自己的 AL 該長成什麼樣子、擁有什麼功能的人永遠是'''''使用者'''''!<br />
<br />
== 獨一無二的套件管理程式 ==<br />
<br />
AL 所使用的是一款以 C 語言製作、輕巧、快速、易於使用的套件管理程式 Pacman ,這款程式甚至可以只讓您使用一個指令就升級整個 AL 。我們也提供了一款類似 ports 的套件建置系統 ABS ( [[Arch Build System (正體中文)|Arch Build System]] ),這表示您也可以非常簡單地以原始碼為基礎來建立與安裝套件或只用一個指令來同步整個 AL 。有了 Pacman 和 ABS ,所有的工作都能在極為簡潔的過程中完成。除此之外, AL 的 RRM 也讓您不必在對系統做整體升級時重新下載並安裝整套系統──只需透過 Pacman 下載某些經重大更新後的套件,就能讓您的系統保持在最新且最穩定的狀態。<br />
<br />
== 最新與最穩定 ==<br />
<br />
開發團隊努力地維護所有已釋出與即將釋出的版本。在 RRM 的幫助下,我們同時也致力於讓所有套件保持在最新且最穩定的狀態。我們提供了相當精簡的 core 套件庫給最為精簡的 i686/x86-64 系統、開發者或使用者向套件庫提供的各種高品質的擴充套件、眾多利於使用者從原始碼建立與包裝任何套件的 PKGBUILD 腳本。 AL 所提供的大部分是來源可信、經作者正式發布、非經補強的穩定套件。但在某些極少發生的特定情況之下,舊的套件有可能會因為版本相容的問題而導致 RRM 無法針對這個套件作升級或補強,此時為了維持 RRM 的順利運作,我們才會發布補強套件進行修補。<br />
<br />
AL 也應用了許多已被 GNU/Linux 支援的新技術,如檔案系統方面有 Ext 2/3/4 、 Reiser 、 XFS 、 JFS 等,硬碟管理方面有 LVM2/EVMS 、 RAID 等,設備管理方面則有 udev 支援和 initcpio 等。總而言之, AL 無論是在軟體或是硬體方面,最新最穩定與套件更新的連貫性永遠是我們的最高指導原則。<br />
<br />
== 簡單就是美 ==<br />
<br />
AL 的設計哲學之一即'''簡單就是美'''。即便 AL 的基本系統非常地輕巧與迷你,但 GNU 工具包、一些有用的擴充命令工具如 '''Vi''' 和 '''links''' 等卻一個也沒少。這些不可忽略的實用工具對使用者擴充 AL 成為較為合適自己的版本這件事情大有幫助。<br />
<br />
AL 的 init 的設計靈感來自於 *BSD 系列。AL 的 init 在進入每個 runlevel 時僅從'''單一檔案'''(如[[rc.conf]])而非包含了'''一堆符號連結( symlinks )的資料夾'''中讀取設定。如此一來, init 與 AL 開機速度即可得到有效的提升。<br />
<br />
AL 的系統設定也統一包含在幾個文字檔案之中。對進階使用者而言,這表示您再也不必在茫茫的硬碟當中為了一個小小的設定尋找失落的設定檔案了。<br />
<br />
== 其他參考資料 ==<br />
<br />
AL 的官方網站在 [http://www.archlinux.org/ ArchLinux.org] 。在官方網站上你也可以找到其他相關資源的連接,例如官方提供的[http://bbs.archlinux.org/ 使用者論壇],官方文件和其他 AL 的相關資源。你也可以參閱 [[The Arch Way (正體中文)|Arch Linux 的設計哲學]] 這一篇文章以獲得更多關於 AL 的資訊與設計哲學。<br />
<br />
== 中文方面的資料 ==<br />
<br />
中文方面的資料目前可分為正體中文( 台灣 )和簡體( 中國大陸 )兩部分。<br />
<br />
正體中文的部分主要是由 [http://cle.linux.org.tw CLE] 來負責。目前提供的資源有官方 ftp 的 mirror,一個討論區和一個 wiki 來作中文方面得資源整合。<br />
<br />
簡體中文主要是由 [http://www.linuxsir.org Linuxsir] 來負責。目前提供了一個入口網頁作中文資源整合,和一個討論區。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Arch_Linux_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=111907
Arch Linux (正體中文)
2010-07-14T06:19:11Z
<p>Henry40408: /* 什麼是 Arch Linux? */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|Arch Linux}}<br />
<br />
== 什麼是 Arch Linux? ==<br />
<br />
Arch Linux (以下簡稱 '''''AL''''' )是款具有以下特點的原生社群發行版:<br />
#特別針對 i686 與 x86-64 平台做了最佳化處理。<br />
#以''迴圈式發行版模型''( rolling-release model ,直譯,以下簡稱 '''''RRM''''' )作為開發基礎。這表示系統安裝完成之後,任何套件的更新也不會對系統造成任何重大的影響甚至毀損。<br />
#提供了一個類似 ports 的套件管理系統。<br />
#以規模龐大且內容豐富的套件庫,自由地選擇最適合自己習慣的套件組合。<br />
簡而言之,開發團隊致力於將 AL 開發成一款集'''極簡主義'''( minimalism )、'''典雅'''( elegance )且永遠保持在'''最新最穩定狀態'''( modernity )的 Linux 發行版。 AL 的 0.1 版(代號 Homer )於 2002 年 3 月 11 日釋出。<br />
<br />
== Arch Linux 的優勢 ==<br />
<br />
AL 針對 i686/x86-64 平台提供了一個極為迷你、親切的文字介面安裝程序。 AL 非常的'''輕巧'''( lightweight )、'''靈活'''( flexible )、'''簡單'''( simple )並非常的 UNIX-like ,這些設計哲學讓 AL 具有很高的可塑性。您可以將它塑造成僅有文字介面但功能強大的伺服器,或者是親切且適合初學者使用的圖形介面。 AL 不會將使用者限制在系統安裝時就一并安裝的預設套件,這表示進階使用者也能夠透過套件的裝卸自由地製作一個專屬於自己的 AL 發行版。畢竟,決定自己的 AL 該長成什麼樣子、擁有什麼功能的人永遠是'''''使用者'''''!<br />
<br />
== 獨一無二的套件管理程式 ==<br />
<br />
AL 所使用的是一款以 C 語言製作、輕巧、快速、易於使用的套件管理程式 Pacman ,這款程式甚至可以只讓您使用一個指令就升級整個 AL 。我們也提供了一款類似 ports 的套件建置系統 ABS ( [[Arch Build System (正體中文)|Arch Build System]] ),這表示您也可以非常簡單地以原始碼為基礎來建立與安裝套件或只用一個指令來同步整個 AL 。有了 Pacman 和 ABS ,所有的工作都能在極為簡潔的過程中完成。除此之外, AL 的 RRM 也讓您不必在對系統做整體升級時重新下載並安裝整套系統──只需透過 Pacman 下載某些經重大更新後的套件,就能讓您的系統保持在最新且最穩定的狀態。<br />
<br />
== 最新與最穩定 ==<br />
<br />
開發團隊努力地維護所有已釋出與即將釋出的版本。在 RRM 的幫助下,我們同時也致力於讓所有套件保持在最新且最穩定的狀態。我們提供了相當精簡的 core 套件庫給最為精簡的 i686/x86-64 系統、開發者或使用者向套件庫提供的各種高品質的擴充套件、眾多利於使用者從原始碼建立與包裝任何套件的 PKGBUILD 腳本。 AL 所提供的大部分是來源可信、經作者正式發布、非經補強的穩定套件。但在某些極少發生的特定情況之下,舊的套件有可能會因為版本相容的問題而導致 RRM 無法針對這個套件作升級或補強,此時為了維持 RRM 的順利運作,我們才會發布補強套件進行修補。<br />
<br />
AL 也應用了許多已被 GNU/Linux 支援的新技術,如檔案系統方面有 Ext 2/3/4 、 Reiser 、 XFS 、 JFS 等,硬碟管理方面有 LVM2/EVMS 、 RAID 等,設備管理方面則有 udev 支援和 initcpio 等。總而言之, AL 無論是在軟體或是硬體方面,最新最穩定與套件更新的連貫性永遠是我們的最高指導原則。<br />
<br />
== 簡單就是美 ==<br />
<br />
AL 的設計哲學之一即'''簡單就是美'''。即便 AL 的基本系統非常地輕巧與迷你,但 GNU 工具包、一些有用的擴充命令工具如 '''Vi''' 和 '''links''' 等卻一個也沒少。這些不可忽略的實用工具對使用者擴充 AL 成為較為合適自己的版本這件事情大有幫助。<br />
<br />
AL 的 init 的設計靈感來自於 *BSD 系列。AL 的 init 在進入每個 runlevel 時僅從'''單一檔案'''(如[[rc.conf]])而非包含了'''一堆符號連結( symlinks )的資料夾'''中讀取設定。如此一來, init 與 AL 開機速度即可得到有效的提升。<br />
<br />
AL 的系統設定也統一包含在幾個文字檔案之中。對進階使用者而言,這表示您再也不必在茫茫的硬碟當中為了一個小小的設定尋找失落的設定檔案了。<br />
<br />
== 其他參考資料 ==<br />
<br />
AL 的官方網站在 [http://www.archlinux.org/ ArchLinux.org] 。在官方網站上你也可以找到其他相關資源的連接,例如官方提供的[http://bbs.archlinux.org/ 使用者論壇],官方文件和其他 AL 的相關資源。你也可以參閱 [[The Arch Way (正體中文)|Arch Linux 的設計哲學]] 這一篇文章以獲得更多關於 AL 的資訊與設計哲學。<br />
<br />
== 中文方面的資料 ==<br />
<br />
中文方面的資料目前可分為正體中文( 台灣 )和簡體( 中國大陸 )兩部分。<br />
<br />
正體中文的部分主要是由 [http://cle.linux.org.tw CLE] 來負責。目前提供的資源有官方 ftp 的 mirror,一個討論區和一個 wiki 來作中文方面得資源整合。<br />
<br />
簡體中文主要是由 [http://www.linuxsir.org Linuxsir] 來負責。目前提供了一個入口網頁作中文資源整合,和一個討論區。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Arch_Linux_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=111906
Arch Linux (正體中文)
2010-07-14T06:18:45Z
<p>Henry40408: /* 什麼是 Arch Linux? */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|Arch Linux}}<br />
<br />
== 什麼是 Arch Linux? ==<br />
<br />
Arch Linux(以下簡稱 '''''AL''''' )是款具有以下特點的原生社群發行版:<br />
#特別針對 i686 與 x86-64 平台做了最佳化處理。<br />
#以迴圈式發行版模型( rolling-release model ,直譯,以下簡稱 '''''RRM''''' )作為開發基礎。這表示系統安裝完成之後,任何套件的更新也不會對系統造成任何重大的影響甚至毀損。<br />
#提供了一個類似 ports 的套件管理系統。<br />
#以規模龐大且內容豐富的套件庫,自由地選擇最適合自己習慣的套件組合。<br />
簡而言之,開發團隊致力於將 AL 開發成一款集'''極簡主義'''( minimalism )、'''典雅'''( elegance )且永遠保持在'''最新最穩定狀態'''( modernity )的 Linux 發行版。 AL 的 0.1 版(代號 Homer )於 2002 年 3 月 11 日釋出。<br />
<br />
== Arch Linux 的優勢 ==<br />
<br />
AL 針對 i686/x86-64 平台提供了一個極為迷你、親切的文字介面安裝程序。 AL 非常的'''輕巧'''( lightweight )、'''靈活'''( flexible )、'''簡單'''( simple )並非常的 UNIX-like ,這些設計哲學讓 AL 具有很高的可塑性。您可以將它塑造成僅有文字介面但功能強大的伺服器,或者是親切且適合初學者使用的圖形介面。 AL 不會將使用者限制在系統安裝時就一并安裝的預設套件,這表示進階使用者也能夠透過套件的裝卸自由地製作一個專屬於自己的 AL 發行版。畢竟,決定自己的 AL 該長成什麼樣子、擁有什麼功能的人永遠是'''''使用者'''''!<br />
<br />
== 獨一無二的套件管理程式 ==<br />
<br />
AL 所使用的是一款以 C 語言製作、輕巧、快速、易於使用的套件管理程式 Pacman ,這款程式甚至可以只讓您使用一個指令就升級整個 AL 。我們也提供了一款類似 ports 的套件建置系統 ABS ( [[Arch Build System (正體中文)|Arch Build System]] ),這表示您也可以非常簡單地以原始碼為基礎來建立與安裝套件或只用一個指令來同步整個 AL 。有了 Pacman 和 ABS ,所有的工作都能在極為簡潔的過程中完成。除此之外, AL 的 RRM 也讓您不必在對系統做整體升級時重新下載並安裝整套系統──只需透過 Pacman 下載某些經重大更新後的套件,就能讓您的系統保持在最新且最穩定的狀態。<br />
<br />
== 最新與最穩定 ==<br />
<br />
開發團隊努力地維護所有已釋出與即將釋出的版本。在 RRM 的幫助下,我們同時也致力於讓所有套件保持在最新且最穩定的狀態。我們提供了相當精簡的 core 套件庫給最為精簡的 i686/x86-64 系統、開發者或使用者向套件庫提供的各種高品質的擴充套件、眾多利於使用者從原始碼建立與包裝任何套件的 PKGBUILD 腳本。 AL 所提供的大部分是來源可信、經作者正式發布、非經補強的穩定套件。但在某些極少發生的特定情況之下,舊的套件有可能會因為版本相容的問題而導致 RRM 無法針對這個套件作升級或補強,此時為了維持 RRM 的順利運作,我們才會發布補強套件進行修補。<br />
<br />
AL 也應用了許多已被 GNU/Linux 支援的新技術,如檔案系統方面有 Ext 2/3/4 、 Reiser 、 XFS 、 JFS 等,硬碟管理方面有 LVM2/EVMS 、 RAID 等,設備管理方面則有 udev 支援和 initcpio 等。總而言之, AL 無論是在軟體或是硬體方面,最新最穩定與套件更新的連貫性永遠是我們的最高指導原則。<br />
<br />
== 簡單就是美 ==<br />
<br />
AL 的設計哲學之一即'''簡單就是美'''。即便 AL 的基本系統非常地輕巧與迷你,但 GNU 工具包、一些有用的擴充命令工具如 '''Vi''' 和 '''links''' 等卻一個也沒少。這些不可忽略的實用工具對使用者擴充 AL 成為較為合適自己的版本這件事情大有幫助。<br />
<br />
AL 的 init 的設計靈感來自於 *BSD 系列。AL 的 init 在進入每個 runlevel 時僅從'''單一檔案'''(如[[rc.conf]])而非包含了'''一堆符號連結( symlinks )的資料夾'''中讀取設定。如此一來, init 與 AL 開機速度即可得到有效的提升。<br />
<br />
AL 的系統設定也統一包含在幾個文字檔案之中。對進階使用者而言,這表示您再也不必在茫茫的硬碟當中為了一個小小的設定尋找失落的設定檔案了。<br />
<br />
== 其他參考資料 ==<br />
<br />
AL 的官方網站在 [http://www.archlinux.org/ ArchLinux.org] 。在官方網站上你也可以找到其他相關資源的連接,例如官方提供的[http://bbs.archlinux.org/ 使用者論壇],官方文件和其他 AL 的相關資源。你也可以參閱 [[The Arch Way (正體中文)|Arch Linux 的設計哲學]] 這一篇文章以獲得更多關於 AL 的資訊與設計哲學。<br />
<br />
== 中文方面的資料 ==<br />
<br />
中文方面的資料目前可分為正體中文( 台灣 )和簡體( 中國大陸 )兩部分。<br />
<br />
正體中文的部分主要是由 [http://cle.linux.org.tw CLE] 來負責。目前提供的資源有官方 ftp 的 mirror,一個討論區和一個 wiki 來作中文方面得資源整合。<br />
<br />
簡體中文主要是由 [http://www.linuxsir.org Linuxsir] 來負責。目前提供了一個入口網頁作中文資源整合,和一個討論區。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106260
Official Installation Guide (正體中文)
2010-05-13T06:12:20Z
<p>Henry40408: /* 可供選擇的映像檔(翻譯中) */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,本文件將保留原文並附上中文翻譯)<br />
<br />
Arch Linux and scripts are copyright<br />
<br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br />
<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
AL 與其內附腳本皆以 GNU 通用公共授權條款( GPL )發布,版權皆屬於 Judd Vinet 、 Aaron Griffin 所有。<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您必須先決定將採取何種安裝方式。就目前來說,我們提供了兩大類的安裝映像檔:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何'''備有 USB 開機功能 BIOS''' 的電腦上運作。<br />
<br />
The GRUB bootloader is used, but for those having problems with GRUB not loading with certain CD-rom drives, ISO images with the ISOLINUX bootloader are offered as well. <br />
There are two variants of each installation medium which only differ in terms of supplied packages.<br />
<br />
這兩個映像檔都以 GRUB 作為開機程式,但在某些光碟機上,GRUB 有可能無法正常執行。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106124
Official Installation Guide (正體中文)
2010-05-11T14:01:38Z
<p>Henry40408: /* 授權協議 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,本文件將保留原文並附上中文翻譯)<br />
<br />
Arch Linux and scripts are copyright<br />
<br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br />
<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
AL 與其內附腳本皆以 GNU 通用公共授權條款( GPL )發布,版權皆屬於 Judd Vinet 、 Aaron Griffin 所有。<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您需要決定將採取何種的安裝方式。就目前來說,我們提供了兩大類的安裝映像:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何備有 USB 開機功能 BIOS 的電腦上運作。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106123
Official Installation Guide (正體中文)
2010-05-11T13:58:31Z
<p>Henry40408: /* 授權協議 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
<br />
Arch Linux and scripts are copyright<br />
<br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br />
<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您需要決定將採取何種的安裝方式。就目前來說,我們提供了兩大類的安裝映像:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何備有 USB 開機功能 BIOS 的電腦上運作。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106122
Official Installation Guide (正體中文)
2010-05-11T13:58:04Z
<p>Henry40408: /* 授權協議 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br><br />
Arch Linux and scripts are copyright<br><br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br><br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您需要決定將採取何種的安裝方式。就目前來說,我們提供了兩大類的安裝映像:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何備有 USB 開機功能 BIOS 的電腦上運作。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106121
Official Installation Guide (正體中文)
2010-05-11T13:57:50Z
<p>Henry40408: /* 授權協議 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br><br />
2002-2007 Judd Vinet<br><br />
2007-2009 Aaron Griffin<br><br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您需要決定將採取何種的安裝方式。就目前來說,我們提供了兩大類的安裝映像:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何備有 USB 開機功能 BIOS 的電腦上運作。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106120
Official Installation Guide (正體中文)
2010-05-11T13:56:45Z
<p>Henry40408: /* 可供選擇的映像檔 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔(翻譯中)===<br />
<br />
在安裝 AL 之前,您需要決定將採取何種的安裝方式。就目前來說,我們提供了兩大類的安裝映像:<br />
<br />
* CD-ROM 映像( ISO 格式):幾乎可在所有備有光碟機的電腦上運作。<br />
* USB 映像( IMG 格式):可在任何備有 USB 開機功能 BIOS 的電腦上運作。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106119
Official Installation Guide (正體中文)
2010-05-11T13:52:18Z
<p>Henry40408: /* 安裝前準備 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
===可供選擇的映像檔===<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106118
Official Installation Guide (正體中文)
2010-05-11T13:50:33Z
<p>Henry40408: /* CPU 等級 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL ,''' Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求'''。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106117
Official Installation Guide (正體中文)
2010-05-11T13:50:04Z
<p>Henry40408: /* CPU 等級 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL , Pentium Pro 、 Pentium II 或 AMD Athlon ( K7 ) 等級的 CPU 是最低需求。(技術上來說,一款不支援 cmov 命令的 CPU 如 AMD K6 和 via C3 也都是 i686 等級的 CPU ,但我們在開發時所使用的 GCC 卻會使用到 cmov 這個前述兩者皆未支援的命令。因此,我們並不保證 AL 能在這兩款 CPU 上正常執行)在安裝 AL 之前,也請您選擇一種您熟悉的安裝方式。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106116
Official Installation Guide (正體中文)
2010-05-11T13:44:25Z
<p>Henry40408: /* CPU 等級 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
Arch Linux is optimized for i686 and x86_64 processors and therefore will not run on any lower or incompatible generations of x86 CPUs (i386, i486 or i586). A Pentium Pro, Pentium II or AMD Athlon (K7) processor or higher is required. (technically, cpu's without the cmov instruction such as AMD K6 and via C3 are also i686, but we use gcc and it uses cmov instructions) Before installing Arch Linux, you should decide which installation method you would like to use.<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。但若要正常執行 AL , Pentium Pro 、 Pentium II 或 AMD Athlon (K7) 等級的 CPU 是最低需求。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106115
Official Installation Guide (正體中文)
2010-05-11T13:41:10Z
<p>Henry40408: /* 在安裝之前 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===CPU 等級===<br />
<br />
Arch Linux is optimized for i686 and x86_64 processors and therefore will not run on any lower or incompatible generations of x86 CPUs (i386, i486 or i586). A Pentium Pro, Pentium II or AMD Athlon (K7) processor or higher is required. (technically, cpu's without the cmov instruction such as AMD K6 and via C3 are also i686, but we use gcc and it uses cmov instructions) Before installing Arch Linux, you should decide which installation method you would like to use.<br />
<br />
由於 AL 是款專為 i686/x86-64 等級之 CPU 最佳化過的 Linux 發行版,因此''' AL 並不保證能在等級較低(如 i386 , i486 或 i586 )或是不相容的 CPU 上正常執行'''。要正常執行 AL ,最低需求,<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106114
Official Installation Guide (正體中文)
2010-05-11T13:31:57Z
<p>Henry40408: /* 安裝 Arch Linux */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝前準備==<br />
<br />
===在安裝之前===<br />
<br />
由於 Arch Linux 針對 i686 指令集的處理器做了最佳化,因此無法在任何等級較低或不相容的 x86 CPU 上運行(例如 i386、i486、i586)。 必須 Pentium II 或 AMD K6-2 以上的處理器才行。x86-64 架構也在正式的支援範圍中。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106113
Official Installation Guide (正體中文)
2010-05-11T13:30:45Z
<p>Henry40408: /* 簡介 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
===授權協議===<br />
(為避免翻譯後造成原文文意曲解,特此保留)<br />
Arch Linux and scripts are copyright<br />
2002-2007 Judd Vinet<br />
2007-2009 Aaron Griffin<br />
and are licensed under the GNU General Public License (GPL).<br />
<br />
==安裝 Arch Linux==<br />
<br />
===在安裝之前===<br />
<br />
由於 Arch Linux 針對 i686 指令集的處理器做了最佳化,因此無法在任何等級較低或不相容的 x86 CPU 上運行(例如 i386、i486、i586)。 必須 Pentium II 或 AMD K6-2 以上的處理器才行。x86-64 架構也在正式的支援範圍中。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106011
The Arch Way (正體中文)
2010-05-09T00:42:43Z
<p>Henry40408: /* 使用者至上(準備翻譯) */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
李奧納多·達文西曾說:"簡單是複雜的至高境界。"<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分"簡單",但是"簡單"本身卻有多種定義。<br />
<br />
'''AL 對"簡單"的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==使用者至上(準備翻譯)==<br />
<br />
鑑於許多 GNU/Linux 發行版都在加強貼近使用者習慣的圖形介面, AL 卻一直保持以使用者為中心的一貫態度。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106010
The Arch Way (正體中文)
2010-05-09T00:42:21Z
<p>Henry40408: /* 使用者至上(準備翻譯) */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
李奧納多·達文西曾說:"簡單是複雜的至高境界。"<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分"簡單",但是"簡單"本身卻有多種定義。<br />
<br />
'''AL 對"簡單"的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==使用者至上(準備翻譯)==<br />
<br />
鑑於許多 GNU/Linux 發行版都在加強親近使用者的介面, AL 卻一直保持以使用者為中心的一貫態度。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106009
The Arch Way (正體中文)
2010-05-09T00:39:51Z
<p>Henry40408: /* 以使用者為中心(準備翻譯) */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
李奧納多·達文西曾說:"簡單是複雜的至高境界。"<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分"簡單",但是"簡單"本身卻有多種定義。<br />
<br />
'''AL 對"簡單"的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==使用者至上(準備翻譯)==<br />
<br />
鑑於許多 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=106008
The Arch Way (正體中文)
2010-05-09T00:31:23Z
<p>Henry40408: </p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
李奧納多·達文西曾說:"簡單是複雜的至高境界。"<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分"簡單",但是"簡單"本身卻有多種定義。<br />
<br />
'''AL 對"簡單"的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==以使用者為中心(準備翻譯)==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105988
The Arch Way (正體中文)
2010-05-08T16:25:12Z
<p>Henry40408: /* 簡單就是美 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
李奧納多·達文西曾說:"簡單是複雜的至高境界。"<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分"簡單",但是"簡單"本身卻有多種定義。<br />
<br />
'''AL 對"簡單"的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==開放性(準備翻譯)==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105987
The Arch Way (正體中文)
2010-05-08T16:24:49Z
<p>Henry40408: /* 簡單就是美 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
李奧納多·達文西曾說:"簡單是複雜的至高境界。"<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==開放性(準備翻譯)==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105986
The Arch Way (正體中文)
2010-05-08T16:23:59Z
<p>Henry40408: /* 開放性 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==開放性(準備翻譯)==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105985
The Arch Way (正體中文)
2010-05-08T16:22:49Z
<p>Henry40408: /* 正確的程式碼比日後的修補和華麗的介面來的重要 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。如果您對我們的設計哲學頗感興趣,也歡迎您除了使用 AL 以外也能加入我們,一同讓 AL 能變得更好!<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105984
The Arch Way (正體中文)
2010-05-08T16:20:47Z
<p>Henry40408: /* 正確的程式碼比日後的修補和華麗的介面來的重要 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
正因為我們將這些哲學奉為圭臬,撇開所有的外在輿論,許多 AL 的系統特性、架構設計和系統概念都以這些哲學作為基礎。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105981
Official Installation Guide (正體中文)
2010-05-08T16:06:42Z
<p>Henry40408: </p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
{{translateme}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
==安裝 Arch Linux==<br />
<br />
===在安裝之前===<br />
<br />
由於 Arch Linux 針對 i686 指令集的處理器做了最佳化,因此無法在任何等級較低或不相容的 x86 CPU 上運行(例如 i386、i486、i586)。 必須 Pentium II 或 AMD K6-2 以上的處理器才行。x86-64 架構也在正式的支援範圍中。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105871
Official Installation Guide (正體中文)
2010-05-07T03:03:32Z
<p>Henry40408: /* 什麼是 Arch Linux (以下簡稱 AL )? */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
==安裝 Arch Linux==<br />
<br />
===在安裝之前===<br />
<br />
由於 Arch Linux 針對 i686 指令集的處理器做了最佳化,因此無法在任何等級較低或不相容的 x86 CPU 上運行(例如 i386、i486、i586)。 必須 Pentium II 或 AMD K6-2 以上的處理器才行。x86-64 架構也在正式的支援範圍中。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105870
Official Installation Guide (正體中文)
2010-05-07T03:02:02Z
<p>Henry40408: /* 什麼是Arch Linux? */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
==簡介==<br />
<br />
===什麼是 Arch Linux (以下簡稱 AL )?===<br />
AL 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"( independent )社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Arch Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
==安裝 Arch Linux==<br />
<br />
===在安裝之前===<br />
<br />
由於 Arch Linux 針對 i686 指令集的處理器做了最佳化,因此無法在任何等級較低或不相容的 x86 CPU 上運行(例如 i386、i486、i586)。 必須 Pentium II 或 AMD K6-2 以上的處理器才行。x86-64 架構也在正式的支援範圍中。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Official_Installation_Guide_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105867
Official Installation Guide (正體中文)
2010-05-07T02:25:28Z
<p>Henry40408: /* 簡介 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
{{i18n|Official Arch Linux Install Guide}}<br />
==簡介==<br />
<br />
===什麼是Arch Linux?===<br />
Arch Linux 是款針對 i686 與 x86-64 微處理器最佳化過的"原生"(independent)社群發行版。其開發靈感來自於另一款 Linux 發行版 CRUX 。<br />
<br />
開發團隊致力於開發一款簡潔、典雅的 Arch Linux 。這幾個形容詞可能看起來一點也不吸引人,但是至少它們都很正確的描寫出 Arch Linux 的特點。因為 Arch 特別針對 i686 微處理器做了最佳化的處理,所以您可在使用本發行版的同時得到您的硬體所能提供的最大效能。與 Red Hat 等其他的發行版相比,Arch 顯得輕巧多了,同時它已經簡化的設計也讓您可以輕易地擴充並整合成您所需要的系統。<br />
<br />
==安裝 Arch Linux==<br />
<br />
===在安裝之前===<br />
<br />
由於 Arch Linux 針對 i686 指令集的處理器做了最佳化,因此無法在任何等級較低或不相容的 x86 CPU 上運行(例如 i386、i486、i586)。 必須 Pentium II 或 AMD K6-2 以上的處理器才行。x86-64 架構也在正式的支援範圍中。<br />
<br />
另有由社群推動的計畫,提供了於 i586 及 ppc 架構使用的套件。詳情請見本站文件。<br />
<br />
在安裝 Arch Linux 之前,您需要決定將採取何種的安裝方式。 針對光碟安裝,Arch Linux 提供了兩種不同的可開機 ISO 映像檔。<br />
<br />
首選的安裝方法是靈活的光碟安裝,我們為你提供3種不同的安裝光碟,它們唯一的區別是包含的套裝軟體不同。通過這些映像,你可以在安裝程式中指定 FTP 伺服器來使用最新的套裝軟體來安裝你的系統。並且這些映像光碟可以作為最終恢復光碟使用。<br />
<br />
*完整的映像:arch-0.8.iso(550MB),它包含了在發佈時的整個core(原文為current,這裏改為core,譯者注)套裝軟體倉庫。通過線上檢查套裝軟體列表可以瞭解所包含的套裝軟體的詳細資訊。使用這個映像來建立安裝光碟,你可以直接安裝一個功能完整的linux系統,包括視窗管理器和一些幫助程式,當然它可能沒有包括一些你需要的軟體。如果你的機器無法訪問網際網路,你最好使用這個映像,因為它提供的套裝軟體是最多的。<br />
<br />
*另一個小得多的映像:arch-0.8-base.iso(150MB),它只包含基本系統套件及核心套件。請注意,如果你打算在安裝過程中使用RAID/LVM,你不必非要下載上面的完整iso映像了,因為在不久前相關的套裝軟體已經轉移到base映像當中。使用這個映像安裝出來的是一個具有完整基本功能的linux系統,除了命令列之外它沒有其他任何附加品。這個映像適合安裝一個可工作的最小化基本系統,無法直接設定網路連接以支援FTP安裝。<br />
<br />
*最後一個映像:arch-0.8-ftp.iso(22MB),它只包含最基本的安裝環境,其他所有的套裝軟體都必須在安裝過程中從FTP伺服器上下載。因此它只適用於那些可以方便快捷地連接網際網路或者擁有區域網路鏡像站的使用者。這種安裝方式最大的優點是:在安裝過程中使用的套裝軟體都是當前最新的,安裝完成之後不必再更新系統。如果你的網路連接又快又便宜,就選擇這個映像吧。<br />
<br />
如果你的電腦上沒有CD-ROM,你就需要多費一點功夫了(如果你機器上有可運行的windows系統,可以下載iso映像,然後使用grub4dos引導進入安裝環境,譯者注)。<br />
<br />
現在就可以取得一份可啟動的Arch安裝光碟:如果你連網方便,可以從映像列表中下載一個映像,然後燒錄成光碟;如果你連網不方便或者沒有光碟燒錄機,可以請別人幫忙刻錄一張;你還可以通過OSDisk線上購買光碟。此外你不需要為使用老的ISO映像進行安裝而擔心,因為當你完成系統安裝之後只需要一條指令就可以將整個系統更新到最新狀態――當然,這需要你擁有寬頻連接。<br />
<br />
現在在安裝過程中已經支援使用PPP撥號連接網際網路,ppp工具、rp-pppoe及ISDN使用者空間工具已經被包含在安裝映像之內。<br />
<br />
0.8的ISO映像的運行方式和安裝後的arch系統相似,下面是它的一些特點:<br />
*包含pacman,這樣在安裝環境中可以通過它安裝其他所需的套裝軟體<br />
*完全支持 /etc/rc.d/ 和 /etc/rc.conf<br />
*完整的arch網路支援,包括ssh,telnet和埠映射服務<br />
*支援定制設定檔:任何位置的/config目錄及其中的檔都會被拷貝到安裝環境的/etc/中<br />
*在啟動過程中可以載入額外的套件作為附件:任何位置的/packages目錄及其中的檔都會被安裝<br />
*包含links和naim程式,可以連接網際網路<br />
*完整的kexec支持<br />
<br />
對新手來說,最有利的Arch Linux安裝方法無疑是通過光碟安裝基本系統以及所有所需的套裝軟體,然後在設定好網路連接之後再更新系統並安裝其他的套裝軟體。<br />
<br />
在試圖安裝Arch Linux之前你還要注意一點:在安裝過程中你需要回答一些諸如硬碟分割區、模組載入、修改系統關鍵檔(如grub.conf,rc.conf等)一類的問題。安裝程式不會一步一步地引導你完成這些設定,你必須獨立完成這些工作。這對新手是個不小的要求,如果你對這些內容感到為難,那麼你需要先通讀整篇文檔,整理一下不清楚的地方,然後通過IRC、論壇或者周圍的linux專家來解決這些疑問,在弄清楚所有的問題之前不要輕易嘗試以免破壞你的系統。當然你可以大膽地嘗試直到它可以正常工作,但是一定要記得我們已經警告過你了。儘管這樣說,其實一般沒有那麼糟糕。;)<br />
<br />
你需要準備的東西:<br />
*掌握一定的linux系統知識,詳細瞭解電腦的硬體設定<br />
*Arch Linux安裝媒介(見映像列表)<br />
*一台基於i686或者x86-64構架的電腦(奔騰Pro,奔騰II或者更高,Athlon/Duron等。注意:不支持AMD K6,Transmeta Crusoe,CyrixIII,VIA-C3)<br />
*至少128MB記憶體<br />
*抽出一點時間<br />
<br />
=== 取得 Arch Linux ===<br />
<br />
你可以從任何一個鏡像站下載 Arch Linux。進入iso目錄,下載對應的映像檔即可。一般來說,你最好下載最新版本的鏡像,這一方面可以減少出問題的可能,另一方面可以減少升級系統的時間。<br />
<br />
=== 準備安裝媒介 ===<br />
<br />
*下載映像: <mirror>/iso/<your_architecture>/Archlinux-<version>.iso <br />
*下載md5sum: <mirror>/iso/<your_architecture>/md5sum-<version>.txt <br />
*使用md5sum驗證iso映像的完整性:<br />
md5sum Archlinux-<version>.iso<br />
*使用燒錄機將下載的ISO映像燒錄成光碟。<br />
*如果你需要在安裝過程設定網路(如FTP安裝),記下當前的網路設定:<br />
**IP地址<br />
**子網路遮罩<br />
**閘道<br />
**乙太網路卡模組名稱(例如: eepro100, 8139too, ne2k-pci,等)<br />
<br />
=== 使用 CD-ROM ===<br />
<br />
如果你對啟動過程已經很熟悉了,可以跳過這一節,直接從“通用安裝過程”開始 Arch Linux 的安裝。<br />
<br />
將Arch Linux安裝光碟放進光碟機,然後重啟系統,確保BIOS的設定可以從光碟啟動。如果你不知道如何修改BIOS設定,請參考你的主板手冊或聯繫系統廠商。從光碟啟動之後,會出現一個引導提示字元,這時你可以輸入一些選項參數或者直接按Enter。大部分使用者直接按Enter就可以了。<br />
<br />
如果你的CD-ROM無法啟動,你可能需要檢查一下可能的原因甚至更換CD-ROM,直到可以透過CD-ROM啟動為止。<br />
<br />
在啟動過程結束後,你已經自動進入(實際上還需要按一下Enter,譯者注)一個root使用者shell,螢幕的上方會顯示一些使用說明。在這裏你已經可以開始實際的安裝了,或者手動做一些必要的準備工作。<br />
<br />
=== 通用安裝過程 ===<br />
<br />
到這裏,你的系統(安裝環境)已經啟動起來,安裝源(光碟或者FTP伺服器)和要安裝的硬碟都必須處於可用狀態。<br />
<br />
安裝步驟:<br />
#載入non-US鍵盤映射<br />
#運行安裝程式<br />
#設定網路(針對FTP安裝) <br />
#準備硬碟分割區:<br />
##自動分割區<br />
##手動分割區<br />
##設定檔案系統掛載點<br />
#選擇套裝軟體<br />
#安裝套裝軟體<br />
#設定系統<br />
#安裝核心<br />
#安裝開機管理程式<br />
#退出安裝<br />
<br />
有經驗的使用者可以在啟動安裝程式之前,在shell裏面利用一些工具手動進行硬碟分割區。如果你認為不需要進行更多的手動交互,可以跳過這一步。要注意,Arch Linux安裝介質為有經驗的使用者提供另外一個安裝腳本:/arch/quickinst。該腳本將“基本”套裝軟體安裝到指定的目錄。如果你想進行一些特殊、有趣的安裝(如RAID,LVM)或者不想使用安裝程式,你可以使用quickinst腳本。這樣的安裝方法很酷。<br />
<br />
==== 載入non-US鍵盤映射 ====<br />
<br />
如果你需要非美國鍵盤映射,你可以使用km工具載入新的鍵盤映射表。在指令提示符下輸入km,然後利用方向鍵流覽、選擇正確的鍵盤映射表或者控制臺字體。<br />
<br />
==== 運行安裝程式 ====<br />
<br />
現在你可以運行/arch/setup啟動安裝程式。在顯示過一些說明資訊之後,程式會提示你選擇安裝方法。如果你擁有快速的網路連接,可以選擇FTP安裝,使用最新的套裝軟體來構建你的系統。請注意如果你需要使用一些複雜的、需要驗證的代理設定,這可能會帶來一些問題。如果你不能使用CD-ROM或者其他任何當前可以掛載的介質,FTP安裝是你唯一的選擇。<br />
<br />
在安裝過程中,確保每完成一步後都選擇了“DONE”,這樣才會保存你當前所作的設定。此外,儘量按照安裝腳本的順序進行設定,以免安裝程式出錯。<br />
設定一個套裝軟體FTP鏡像或者根據自己需要的套裝軟體建立安裝光碟是很簡單的,這在為多台機器安裝Arch Linux的時候是非常有用的,它節省了帶寬和下載時間。為了讓你我的生活更簡單,請認真的考慮一下這些選擇吧。<br />
<br />
如果選擇了CD-ROM或者其他安裝源(一些可以掛載的介質,如DVD,USB,已存在檔案系統等),你就只能安裝介質裏面包含的比較舊的套裝軟體。這樣做的優勢在於你不需要網路連接,推薦撥號使用者或者不願意下載100MB以上套裝軟體的使用者使用這種安裝方式。<br />
<br />
在選擇一種安裝方式後,就進入安裝功能表,順序列出了要完成的安裝步驟。<br />
<br />
在安裝過程的任何一步,你都可以按ALT-F5進入第5個虛擬控制臺觀察安裝指令的輸出結果,然後按ALT-F1可以返回安裝程式正在運行的第1個控制臺。如有需要你還可以切換到其他的控制臺做一些所需的操作。<br />
<br />
==== 設定網路(針對FTP安裝) ====<br />
<br />
設定網路允許你安裝並設定網路設備。<br />
<br />
已經列出了當前所有可用的網路設備。如果沒有可用的乙太網卡或者要使用其他的網卡,你可以先切換到其他終端(如按下ALT-F2切換到第2個終端),然後手動載入需要的模組。或者你也可以直接按照說明來做:點擊“OK”,在接下來的螢幕上選擇“Probe”指令來偵測網路模組。如果安裝程式無法找到正確的網路模組,請檢查你的網卡是否正常安裝在主板上並且被核心所支持。有些時候必須從網卡製造商得到一份二進位的專有驅動,把它拷貝到安裝系統然後手動載入它。一般說來這不算什麼很痛苦的事情,使用不同的網路模型也是深思熟慮的。<br />
<br />
如果已經載入正確的模組,並且所有的網卡已經被列出來了,此時你可以選擇要設定的網卡進行詳細的設定。如果你的網路中有DHCP伺服器,那麼這裏可以直接選擇“YES”,它將自動設定你的網路;如果你使用靜態IP位址,請選擇“NO”,然後手動輸入網路資訊(和你前面記下來的一樣)。根據自己的情況設定好網路之後,可以用一些標準工具(如ping)來測試網路是否連通。<br />
<br />
由於自動化設定還不是非常完美,安裝程式有可能無法成功設定網路。如果你碰到了這樣的稀有事件也不用煩惱,可以通過其他的控制臺手動設定網路設備。這一步的目標是為安裝程式提供一個到安裝用FTP伺服器的透明連接。<br />
<br />
顯然,這一步只對FTP安裝有效。<br />
<br />
==== 準備硬碟分割區 ====<br />
<br />
選擇“Prepare Hard Drive”後將會進入一個子功能表,在這裏有2個選擇可以準備安裝的目標磁碟。<br />
<br />
第一個選擇是“Auto-Prepare”,它會自動在你的硬碟上建立3個分割區及相應的檔案系統,分別用於/boot,swap,root(即/),這些分割區會被掛載在適當的位置。更詳細一點,這一步將會建立以下分割區:<br />
*32 MB ext2 /boot 分割區<br />
*256 MB swap 分割區 <br />
*/ and /home 分割區(所有剩餘空間)<br />
<br />
根據不同的硬碟結構,各分割區實際大小可以會有輕微變化。如果你對硬碟分割區瞭解不多,可以選擇這個選項,但是要特別注意:<br />
選擇“AUTO-PREPARE”會擦除所選硬碟上所有的資料!你必須仔細閱讀安裝程式給出的警告資訊,並確保將要分割區的設備正確無誤!<br />
<br />
你可以通過下面的方法來驗證你所選擇的設備是正確的:打開另一個終端(ALT-F2),輸入 “cfdisk –P s <設備名稱>”,螢幕上會顯示出所選設備的分割區情況,這足以讓你識別正確的硬碟。<br />
<br />
如果沒有顯示任何設備名稱(即”[nothing] will be COMPLETELY ERASED!...”),並且點擊“YES”後安裝程式顯示設備不可用(”Device not valid”)的錯誤,請確認你為SCSI,RAID等類似的設備載入的正確的驅動模組。你仍然可以通過切換到另一個終端手動輸入指令來載入模組,然後再返回到安裝進程所在的終端(ALT-F1)。<br />
<br />
如果你想手動分割區,請根據自己的需要(見下面2節),使用另外兩個選項來準備目標介質:”Partition Hard Drives”,手動進行分割區;”Set Filesystem Mountpoints”,設定檔案系統掛載點。硬碟分割區準備完畢後返回到主菜單。<br />
<br />
==== 手動分割磁區 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過“Partition Hard Drives”這一步!<br />
<br />
如果你要手動分割磁區,請在這一步選擇要分割區的硬碟,然後會自動運行cfdisk程式,在這裏你可以自由的修改分割區資訊,修改完畢後依次選擇 [Write]和[Quit]返回安裝程式。<br />
<br />
你至少應該有一個根分割區(/),並且記下每個分割區的掛載位置,然後在下一步中進行設定。<br />
<br />
==== 設定檔案系統掛載點 ====<br />
<br />
如果你選擇了“Auto-Prepare”來自動分割區,請跳過”Set Filesystem Mountpoints”這一步!只有當你在控制臺或者在前一個選項中手動完成分割區的情況下你才需要進入這個功能表設定檔案系統掛載點。<br />
<br />
安裝程式首先詢問用於swap的分割區,要麼在前面建立的分割區中選擇一個作為swap分割區;要麼直接選擇”DONE”,這樣你的系統將不會使用交換分割區。安裝程式本身不支援使用交換檔,如果你想使用交換檔,需要先設定好掛載點,然後使用swapon指令啟動一個格式化好的分割區上的交換檔。<br />
<br />
設定好交換分割區之後,安裝程式將會繼續詢問根檔案系統(/)使用的分割區,這是必須要有的。<br />
<br />
接著安裝程式會建議為/boot選擇一個單獨分割區。具體如何選擇取決於使用者的分割區策略。<br />
<br />
然後安裝程式將反復詢問不同的掛載點,直到使用者選擇”DONE”為止。<br />
<br />
每當你指定一個要掛載的分割區,安裝程式都會詢問是否要在選定的分割區上建立檔案系統。如果選擇”YES”,程式會詢問檔案系統的類型(如果你不瞭解各種檔案系統的特點,那麼ext3是個不錯的選擇),然後根據指定的檔案系統類型格式化分割區,這會擦除該分割區上所有的資料!當然你可以選擇”NO”來保留分割區上已有的檔案系統。<br />
<br />
如果想保留分割區上的資料,強烈建議使用者先備份再安裝。否則一旦安裝過程中發生不可預料的錯誤,不要說我們沒有警告過你!<br />
安裝程式還會詢問是否在交換分割區(swap)上建立檔案系統,因為這個分割區使用獨有的檔案系統,這裏你應該選擇”YES”。<br />
<br />
如果你還想掛載其他的分割區,比如將/boot或者/home建立在單獨的分割區上,可以簡單地通過下面的操作來完成:<br />
*選擇一個要掛載的分割區<br />
*選擇一個檔案系統(如果你不想保留原來的資料,而是建立一個新的檔案系統) <br />
*為這個分割區輸入一個唯一的掛載點<br />
<br />
重複這個步驟直到所有的分割區掛載點都被設定好,然後選擇”DONE”,安裝程式會列出所有要格式化的分割區及相應的掛載點,仔細檢查無誤後,選擇”OK”來實際完成這上面所有的操作。完成分割區、格式化、掛載點設定後請返回到主功能表進行下一步。<br />
<br />
==== 選擇套裝軟體 ====<br />
<br />
“Select Packages”讓你選擇需要從光碟或者FTP鏡像上安裝到機器上的軟體。 <br />
<br />
如果你選擇的是光碟安裝,你必須告訴安裝程式是需要它掛載光碟自身,還是你手動將安裝介質掛載到/src目錄。根據自己的需要進行選擇,一般來說選擇”CD”即可,然後安裝程式會讓選擇正確的光碟機。<br />
<br />
如果正確的光碟機沒有出現在列表中,請確認你已經載入了所需的驅動模組(如SCSI,USB記憶體等),如果沒有可以切換到其他終端手動載入。<br />
如果選擇了FTP安裝,你需要從鏡像列表中選擇一個鏡像,或者選擇”Custom”輸入指定的鏡像FTP伺服器位址(必須是包含core.db.tar.gz的目錄的完整路徑)。安裝程式會檢測你輸入位址的有效性,如果一切正常就可以進入下一步。<br />
<br />
無論選擇了什麼樣的源,當成功得到套裝軟體列表資料後,將會進入套裝軟體類別選擇螢幕。<br />
<br />
如果在得到套裝軟體資料庫時顯示錯誤,你應該選擇其他的FTP鏡像,並確保網路可以正常工作、位址輸入無誤。在光碟安裝時需要檢查一下/src有沒有正確掛載。仔細閱讀錯誤資訊,大部分情況下只要稍微修改一下輸入路徑即可解決問題。<br />
<br />
安裝源準備好之後,就可以開始選擇要安裝的套裝軟體了。首先要選擇套裝軟體組,然後進入子功能表通過選擇/取消調整具體的套裝軟體。<br />
<br />
Base組中的套裝軟體必須全部選擇安裝,其他套裝軟體組中的套裝軟體視需要安裝。請注意:只有你選擇了對應的包組,這個包組中的套裝軟體才會出現在後面的軟體列表當中以逐一選擇。也就是說,如果你只選擇了base組,那麼在接下來的螢幕列表中不會出現base組中以外的軟體。<br />
<br />
如果你想最小化安裝,同時又想順便流覽一下所有可選擇的套裝軟體,那麼你應該把所有的套裝軟體組都選上,然後在提示”Select all packages by default?”時選擇“NOT”來手動選擇要安裝的包。<br />
<br />
對於"Select all packages by default?"的詢問,如果選擇“YES”,你選擇的包組中所有的套裝軟體預設都是被選擇的,你要做的是把不需要的套裝軟體取消掉;如果選擇“NO”,所選包組中的軟體仍然出現在列表中,除了base包中的軟體是選中的之外,其他包組的軟體全部處於未選中狀態,你要做的是把需要的套裝軟體選中。<br />
<br />
選擇“NO”對於最小化安裝系統更方便一些!<br />
<br />
建議使用者安裝base中所有的包,其他組中的包不必馬上安裝,可以在系統安裝完畢後通過pacman直接安裝最新的軟體。當然為了讓安裝後的系統能正確地存取網路,需要根據自己的網路環境安裝一些必要的包:<br />
:dhcpcd(base)<br />
::如果你需要dhcp來設定網路<br />
:isdn4k-utils(network)<br />
::如果你使用ISDN撥號<br />
:ppp(base)<br />
::如果你使用貓撥號<br />
:wvdial(network)<br />
::用貓撥號的簡單前端<br />
:rp-pppoe(base)<br />
::DSL虛擬撥號<br />
<br />
下載得到的base ISO鏡像中只包含base組中的套裝軟體,如果你在安裝過程中需要其他組中的軟體(如netwok中的isdn4k-utils),你必須下載完全版ISO鏡像。<br />
<br />
在選擇完要安裝的套裝軟體之後,選擇”DONE”進入下一步:安裝套裝軟體。<br />
<br />
==== 安裝套裝軟體 ====<br />
<br />
“Install Packages”將會把在上面選中的套裝軟體安裝到硬碟,實際安裝的套裝軟體數目可能比你直接選擇的要多,這是因為一些套裝軟體之間有依賴關係。為了你選擇的軟體能正常工作,安裝這些依賴包是必要的,所以安裝程式不會再次詢問。<br />
<br />
在選擇好套裝軟體之後,安裝程式不會檢查目標分割區是否有足夠的空間!這項看起來微不足道的工作會花費相當長的時間,因此安裝程式簡單的假定目標分割區上有足夠的剩餘空間。萬一目標分割區上沒有足夠的空間,安裝程式將會出現一些稀奇古怪的錯誤。你可以切換到另一個控制臺利用”df –h”指令來查看/mnt下掛載分割區的使用情況。如果目標分割區空間不足,請重新分割區或者減少要安裝的套裝軟體數量。<br />
<br />
錯誤資訊及調試輸出會顯示在第5個終端上(ALT-F5)。在正常情況下,如果操作成功,這裏的顯示就沒有多大意義了。當套裝軟體安裝完成後,進入下一步“設定系統”。<br />
<br />
==== 設定系統 ====<br />
<br />
“Configure System”允許你編輯一些重要的系統設定檔。首先安裝程式會詢問是否允許hwdetect腳本自動檢測硬體、生成預設設定檔。除非遇到了特殊情況或問題,否則一般情況下選擇“YES”就可以了。<br />
<br />
接下來回答一些RAID,LVM,加密卷方面的問題。如果你的根系統寄存於RAID,LVM或加密卷上,這裏要回答“YES”,安裝程式會自動將相應的HOOKS新增到mkinitcpio.conf中,以使核心可以從相應的設備上啟動根分割區。否則在新系統啟動時會出現”kernel panic”錯誤。大多數使用者可以選擇“NO”。<br />
經過這個自動化預設定後,安裝程式會讓你選擇一個喜愛的編輯器(vim,nano)來手動調整產生的設定檔。如果你沒有用過這些編輯器,那麼請選擇nano。<br />
<br />
如果你很趕時間,你可以直接跳過這一步,直接使用自動生成的設定檔,並祈禱它能正常工作。強烈建議使用者仔細的檢查所有的設定檔。詳細的設定方法請參考“系統設定”一節。<br />
<br />
==== 安裝核心 ====<br />
<br />
“Install Kernel”讓你選擇要安裝到硬碟上的核心映像。<br />
<br />
“2.6”將會安裝支持SCSI/SATA/IDE的2.6核心,更加準確的支援取決於你在初始化記憶體虛擬碟(initramfs)中的設定。預設設定支援所有的SCSI/SATA/IDE設備。詳細資訊請參考“系統設定”一節中關於虛擬映像的內容,特別是新的PATA驅動及老的IDE驅動可能帶來的問題。<br />
<br />
請注意當前放出的Arch Linux只提供一個核心,並且為了提高靈活性它被放入了initramfs當中。<br />
<br />
光碟中包含2.6.21.1核心(是vodoo的情況,以後放出的ISO都會使用當時最新的核心。譯者注),如果使用FTP安裝,可以安裝FTP鏡像上最新的核心,這可能會帶來一些不可知的變化或者相容性問題。雖然出現問題的可能性比較小,但是請留意這種可能性。<br />
<br />
==== 安裝開機管理程式 ====<br />
<br />
“Install Bootloader”將會將開機管理程式安裝到硬碟上。你可以根據自己的喜好選擇安裝GRUB(建議)或者LILO。<br />
<br />
在安裝開機管理程式之前,安裝腳本會讓你確認引導設定檔的正確性。請確保其中/系統(及/boot,如果單獨分割區的話)的設定正確。<br />
<br />
如果你選擇安裝LILO,它會根據你的設定檔自動安裝;如果安裝GRUB,你需要指定它將被安裝到哪個分割區上(如/dev/sda代表第一個硬碟的mbr,/dev/sda1代表第一個硬碟的第一個分割區的引導磁區。輸入的時候一定要再三確認,不要搞混了)。如果出現錯誤,請到5號控制臺檢查出錯資訊。<br />
如果你打算設定多系統引導,最好把開機管理程式安裝在根分割區或者/boot分割區,然後利用主引導磁區上的開機管理程式來啟動該分割區引導磁區上的grub(or lilo)。<br />
將開機管理程式安裝到MBR會覆蓋當前MBR中的開機管理程式!在這麼做的時候你必須清醒地認識到這個後果!<br />
<br />
==== 退出安裝 ====<br />
<br />
現在選擇“Exit Install” ,然後將安裝光碟從光碟機中取出,在命令列下輸入“reboot”,然後耐心地等待一會。<br />
如果你的系統成功啟動,請以root使用者直接登錄(無密碼),然後馬上用passwd指令修改root密碼,用useradd指令新增一個普通帳戶(詳細資訊請參考“使用者管理”一節),設定網路連接等等。<br />
<br />
恭喜你!屬於你自己的Arch Linux已經安裝成功了,你可以根據自己的需要來調整這個系統。<br />
<br />
== 系統設定 ==<br />
<br />
這部分講述一下Arch Linux核心設定檔的修改。你必須手動編輯這些檔,沒有圖形工具幫你進行設定。這裏只介紹一下最基本的設定檔,如果你需要瞭解其他的設定資訊請查看相應的manpage或者線上說明。在多數情況下,在Archlinux維基和論壇可以得到很好的幫助。<br />
<br />
Arch Linux在管理系統方面沒有使用任何抽象層,都是直接操作。一般說來你可以直接按照軟體作者的說明進行設定,或者直接按照在網路上搜索到的資訊進行設定,兩者都是可以的。<br />
<br />
=== 設定檔 ===<br />
<br />
在準備啟動你的新系統之前,你最好檢查一遍下列設定檔,確保無誤:<br />
'''設定檔列表:'''<br />
*安裝相關設定檔:<br />
**/etc/rc.conf <br />
**/etc/hosts <br />
**/etc/fstab <br />
**/etc/mkinitcpio.conf <br />
**/etc/modprobe.conf <br />
**/etc/resolv.conf <br />
**/etc/locale.gen <br />
**/boot/grub/menu.lst <br />
**/etc/lilo.conf <br />
*其他設定檔:<br />
**/etc/conf.d/* <br />
**/etc/profile <br />
<br />
'''/etc/rc.conf'''<br />
<br />
該檔是Arch Linux主設定檔。在這個檔中你可以設定鍵盤映射、時區、主機名、網路、運行的後臺服務、啟動時載入的模組、個人設定等等。你必須<br />
把這個檔中所有的設定及其說明都詳細的看一下,理解它們的含義,根據自己的情況修改它們:<br />
<br />
LOCALE<br />
這個變數可以設定系統語言,所有支援i18n的程式都會使用這個設定。在locale.gen檔中可以查看可用的locale。預設設定為美國英語。<br />
<br />
HARDWARECLOCK <br />
如果你的BIOS中設定的是UTC,這裏就使用UTC,如果BIOS是當地時間,那麼使用”localtime”。如果你機器上有某個作業系統無法處理UTC時間(如windows),那麼為了避免時間混亂,你需要把BIOS時間設定為當地時間,同時該變數設定為”localtime”;其他情況下最好使用UTC時間,這可以支持日光節約時間及其它一些有益的功能。<br />
<br />
TIMEZONE <br />
指定你的時區。所有的時區設定都在/usr/share/zoneinfo目錄下面,該變數的值為這個目錄下對應設定檔的相對路徑。例如中國使用者可以設定成”Asia/Shanghai”,也就是使用/usr/share/zoneinfo/Asia/Shanghai這個設定檔。如果你現在還不知道你所在的地方對應的時區檔,可以稍後完成其他設定之後在網路上搜索一下再進行設定。<br />
<br />
KEYMAP <br />
該變數定義啟動時載入的鍵盤映射表。所有可用的鍵盤映射表在/usr/share/kbd/keymaps下可以找到。請注意該設定只對TTY有效,對X無效。預設的設定為美國標準英語鍵盤。<br />
<br />
CONSOLEFONT <br />
該變數定義在啟動時setfont程式載入的控制臺字體。所有可用的字體在/usr/share/kbd/consolefonts下面可以找到。<br />
<br />
CONSOLEMAP <br />
該變數定義在啟動時setfont程式載入的控制臺映射。所有可用的映射表在/usr/share/kbd/consoletrans下可以找到。如果你在locale變數中使用了utf8編碼並且使用的程式會產生8位元輸出,那麼你需要根據自己的語言選擇合適的映射表(如拉丁文使用8859-1)。如果你平時在X下工作,可以忽略這個變數,因為它只對控制臺程式有效。<br />
<br />
USECOLOR <br />
啟用(或者禁用)啟動時輸出彩色資訊。<br />
<br />
MOD_AUTOLOAD <br />
如果設定為“yes”,Arch在啟動時自動掃描機器硬體並試圖自動載入合適的模組,這個功能是通過hwdetect程式完成的。<br />
<br />
MOD_BLACKLIST <br />
這是一個陣列變數,所有寫入該變數的模組在啟動的時候將會被禁止載入。例如,如果你不想使用PC揚聲器,你可以把pcspkr模組加入到這個變數中。<br />
<br />
MODULES <br />
這也是一個陣列變數,所有寫入該變數的模組在啟動的時候都會被自動載入,這可以自動載入那些沒有通過modprobe.conf綁定到特定硬體設備的模組。直接把模組名稱寫入到這個變數當中即可,如果該模組需要輸入參數可以在modprobe.conf指定。在模組名稱前面加一個”!”可以禁止啟動時該模組的載入(這與MOD_BALCKLIST不同!),這樣在必要的時候可以臨時取消一些模組的載入。在這裏加入一些指定的網路模組可以使得系統總是自動按照指定的模組序列檢測網卡,這樣固定的網路設備具有固定的介面編號,這可以避免每次啟動系統後網路介面編號的混亂。當然,這個問題更好的解決辦法是在udev中設定固定的介面標籤。<br />
<br />
USELVM <br />
設定為“YES”時,在系統初始化過程中會調用vgchange程式來啟動LVM組。如果你不知道這是什麼意思,就不用管它。<br />
<br />
HOSTNAME <br />
該變數設定機器主機名(不包含域部分)。這個變數該如何設定完全取決於你的選擇,它可以是任何字母、數位、通用特殊字元的組合。當然也不要太出格。如果不明白就使用預設設定好了。<br />
<br />
INTERFACES <br />
該變數用來設定網路介面。預設設定及注釋掉的說明很好地示範了設定方式。預設是使用DHCP自動設定網路;如果你不使用DHCP,你需要在這個變數中填入一些參數,至於參數的格式,你只要記住一點:該變數的內容與用ifconfig指令手動設定網路時傳遞的參數相同。<br />
<br />
ROUTES <br />
通過該變數來定義靜態網路路由。可以參考一下預設閘道的定義方式。基本上變數的內容與傳遞給routes add指令的參數相同。如果你對此不清楚,可以不用修改它。<br />
<br />
NET_PROFILES <br />
通過該變數可以在啟動時載入不同的網路設定。在多網路環境中可以為每個網路進行不同的設定,然後通過該變數指定一個設定檔,方便地替代<br />
INTERFACES/ROUTES變數中的設定。如果你的機器需要在不同的時間、不同的地點連接不同的網路(如筆記本),你可以在/etc/network-profiles/目錄下建立一些不同的設定檔(該目錄下有一個設定範本以供參考),然後通過NET_PROFILES變數指定要載入的設定即可。<br />
<br />
DAEMONS <br />
該變數中列出的是一些自動啟動的腳本名稱。所有的腳本都放在/etc/rc.d目錄下。在腳本名稱前面加一個“!”表示該腳本不會被執行;在腳本名稱前面加一個”@”表示該腳本在後臺執行,即不等序列中所有的腳本啟動完成就直接繼續下面的操作。一般情況下預設啟動的一些腳本不需要進行修改,只有當你安裝了一些服務程式(如sshd)並且希望它能在系統啟動時自動運行,你可以把它的服務名稱加入到這個變數當中。這一點是Arch與其他發行版不同的地方,其他發行版大多通過不同運行級別的到/etc/init.d/下的鏈結來完成腳本的自動運行。<br />
<br />
'''/etc/hosts'''<br />
<br />
在這個檔中可以設定所有網路中主機名/ip的對應關係。如果DNS無法解析某個主機名,你可以將該主機名及其IP新增到這個檔中進行正確的解析。一般說來不需要修改這裏的內容,只需要把自己機器的主機名+域及機器IP寫到該檔即可,因為有一些服務程式(如postfix)如果不能正確解析本機名稱會發生錯誤。如果你不瞭解相關內容,可以通過man hosts察看相應說明,或者讓該檔保持預設即可。<br />
<br />
'''/etc/fstab'''<br />
<br />
該檔保存檔案系統及掛載點設定。安裝程式已經按照你的選擇建立了一個合適的fstab檔,你需要檢查一下以確保無誤(特別是當你使用LVM,RAID,加密根設備的時候)。<br />
<br />
在目前的核心中,對ATA/IDE子系統引入了一個比較重要的變化:使用新的pata(並行ATA)驅動代替舊的IDE子系統,新的驅動下IDE磁片的名稱由had,hdb等變成sda,sdb等,和SCSI、SATA設備名稱相同。所以當在/etc/mkinitcpio.conf的HOOKS中使用新的pata驅動時,/etc/fstab中的分割區名稱要作相應的改動!除了直接使用設備名稱,還可以通過/dev/disk/by-uuid/…或者/dev/disk/by-label…的方式來引用正確的分區。仔分割區查/etc/mkinitcpio.conf中的HOOKS,如果你使用了pata代替ide,硬碟設備名稱形式為sd?;如果沒有使用pata,硬碟設備名稱形式為hd?。其他用到硬碟設備名稱的設定檔也需要進行相應的修改。<br />
<br />
'''/etc/mkinitcpio.conf'''<br />
<br />
該檔用來調整系統初始化虛擬磁片(即常說的initrd,initramfs)。initrd是一個壓縮鏡像,核心啟動的時候會把它載入到記憶體當中。使用initrd是為了使系統自舉以有能力訪問真正的根檔案系統。這意味著它必須載入訪問IDE、SCSI、SATA、USB/FW等設備所需要的模組。一旦initrd載入了合適的模組(無論是直接通過modprobe指令還是通過udev),它就將系統控制權轉交給Arch系統並繼續啟動過程。所以,initrd中只需要包含訪問根檔案系統所必須的模組,沒有必要把所有要載入的模組都放到initrd當中。大多數要使用的模組在稍後的init進程中由udev載入。<br />
<br />
預設情況下,mkinitcpio.conf中的設定是通過HOOKS載入支援全部IDE、SCSI、SATA設備的模組,也就是說預設的initrd幾乎適合所有使用者。這樣做的缺點就是可能會載入許多不需要的模組,啟動後通過lsmod指令可以查看所有載入的模組。載入過多的模組並不會對系統產生多大危害,但是許多使用者仍然不喜歡這樣的結果。這些使用者可以修改mkinitcpio.conf檔的HOOKS,去除不需要的模組(如IDE、SCSI、RAID、USB等),然後重新製作initrd。<br />
或者有經驗的使用者可以將需要的模組放在MODULES變數中載入,這可以進一步精簡HOOKS。但是要注意察看檔中的注釋,因為精簡HOOKS是不是一件簡單的事情。<br />
<br />
如果你正在使用RAID或者加密的根檔案系統,你需要設定底部的RAID/CRYPT變數。在維琪中可以得到更多關於RAID/LVM、檔案系統加密、mkinitcpio方面的內容。<br />
<br />
當設定好mkinitcpio.conf檔後,必須以根使用者運行mkinitcpio –p kernel26指令來重新製作鏡像(除非你正在安裝系統當中,此時當安裝完核心之後由安裝程式自動製作鏡像)。<br />
<br />
警告:如果mkinitcpio.conf檔設定有錯誤,系統可能會無法啟動!所以在修改該檔的時候一定要非常小心。<br />
<br />
在安裝核心的時候會自動生成一個備用啟動選項,它使用一個安全的預設鏡像,當你設定的系統無法啟動時可以試著使用該選項啟動系統。<br />
<br />
請仔細閱讀fstab小節中關於pata轉變問題的警告!<br />
<br />
'''/etc/modprobe.conf'''<br />
<br />
該檔告訴核心在啟動時需要為系統設備載入的模組以及模組所需的參數。例如,為了讓核心能夠為Realtek8139網卡載入驅動模組並將其初始化為eth0網路介面,在modprobe.conf文件加入一行:alias eth0 8139too。<br />
<br />
該檔的語法規則與舊的modules.conf幾乎相同(除非你使用一些很怪異的選項)。大多數使用者不需要更改這個檔。更多詳細資訊可以察看:man modprobe.conf。<br />
<br />
'''/etc/resolv.conf'''<br />
<br />
通過該檔來手動設定要使用的功能變數名稱解析伺服器。檔格式為:search domain.tld nameserver 192.168.0.1 nameserver 192.168.0.2。<br />
將”domain.tld”及相應的IP換成自己的設定即可。”search domain.tld”表示當主機名不完整時,自動新增相應的域”domain.tld”來進行解析。這樣設定後,當你”ping myhost”時實際上就是”ping myhost.domain.tld”。一般來說這些設定不是非常重要:如果你使用DHCP,就沒必要修改該檔,當網路啟動的時候系統會自動的修改合適的值;如果你使用靜態IP,一般只要按照以前記下的網路資訊將功能變數名稱伺服器的IP新增進去即可。<br />
<br />
'''/etc/locale.gen'''<br />
<br />
該檔列出了所有支持的locale及字元集。根據你的自己的語言文字,將合適的locale反注釋掉,以根使用者運行locale-gen指令來生成相應的locale即可,然後在系統中就可以使用這些locale了(例如將/etc/rc.conf中的LOCALE變數設定為對應的locale了,或者在啟動X的時候設定合適的locale變數)。<br />
<br />
在安裝過程中,你不需要手動運行locale-gen。當你手動編輯完locale.gen檔後,安裝程式會自動運行該指令。<br />
預設情況下所有的locale(包括/etc/rc.conf中預設使用的en_US.utf8)都被注釋掉了,為了使你的系統能正常工作,你必須編輯該檔並至少反注釋掉在/etc/rc.conf中使用的locale(對中國使用者來說一般只保留en_US及zh_CN相關的即可,譯者注)。<br />
<br />
'''/boot/grub/menu.lst'''<br />
<br />
GRUB是Arch Linux預設的開機管理程式。你必須檢查並修改該檔來適應你的啟動設定。關於LILO的用法請參考其他文檔。<br />
<br />
請確保你自己已經仔細閱讀了fstab小節中關於pata轉變問題的警告!<br />
<br />
設定GRUB非常簡單,最大的難題是它使用了不同於/dev/的命名方案。硬碟通過(hd0),(hd1)…的形式命名,設備序號與其在IDE/SCSI匯流排上的位置相對應,分別對應Arch Linux系統中的sda,sdb…。而且分區編號分割區從0開始。在默認的m預設u.lst檔有有一些轉換的例子可以幫助你理解這種用法。<br />
<br />
當你掌握了設備命名方法之後,你只要為你的啟動選項設定正確的核心、正確的根系統分割區,並取一個好聽的名字就可以了。如果使用打包好的2.6.x核心,還需要新增一個合適的虛擬磁片鏡像檔。鏡像檔的位置必須與核心位置相同。一般情況下使用預設設定即可,你只需要檢查一下啟動根分割區(/boot)和系統根分割區(/)的設定是否正確即可(特別是要注意到pata問題)。<br />
<br />
如果要為其他的作業系統建立一個啟動選項,可以參照下面的例子,它可以啟動任何一個分割區上的引導磁區。用這種方法可以方便的啟動微軟所有的作業系統,只要把下面這段代碼加入到menu.lst檔的後面並修改相應的啟動分割區即可。<br />
(1) Other OS<br />
title My Other OS<br />
rootnoverify (hd0,1)<br />
makeactive<br />
chainloader +1<br />
<br />
關於利用GRUB啟動其他作業系統方面的內容請參考GRUB線上手冊。<br />
<br />
GRUB設定檔設定正確後,安裝程式會提示安裝GRUB,一般按照預設選項將其安裝到MBR即可。<br />
<br />
'''/etc/conf.d/*'''<br />
<br />
在安裝過程中,該目錄下的內容並不重要。<br />
<br />
一些服務程式腳本在這個目錄中會有一個相應的設定檔,其中包含了一些有用的預設值。當一個服務程式啟動後,它首先從這個設定檔中讀取設定,然後再讀取/etc/rc.conf中的設定。這意味著你可以將一些服務公用的設定放在/etc/rc.conf檔中來簡化設定。當然如果你喜歡為每個服務程式單獨設定變數,也可以在/etc/conf.d分別為它們建立一個設定檔。所有的服務都可以通過簡單的腳本進行控制,這是多麼美妙的事情。<br />
<br />
'''/etc/profile'''<br />
<br />
當每個使用者登錄到系統並開始初始化時會運行該腳本。在Arch Linux中該腳本非常簡單(同其他方面一樣,KISS)。你可以根據自己的需要來編輯它。<br />
<br />
=== 啟動腳本 ===<br />
<br />
Arch Linux使用與*BSD系統類似的簡單啟動序列。第一個運行的啟動腳本是/etc/rc.sysinit。它運行結束後,/etc/rc.multi被運行(正常啟動時)。最後一個運行的腳本是/etc/rc.local。當從運行級別1(即單使用者模式)啟動時,/etc/rc.single將取代/etc/rc.multi的運行。與其他系統不同,你不會在代表不同運行級別的/etc/rc?.d目錄下找到數不清的鏈結。事實上,Arch Linux只有3個運行級別,除了前面2個,另外一個就是運行級別5,它用來啟動X。啟動腳本會調用/etc/rc.conf中的變數和定義以及/etc/rc.d/functions中的腳本。如果你打算建立自己的服務程式腳本,可以參考一下這些檔與現有的服務程式腳本。<br />
<br />
啟動腳本縱覽:<br />
<br />
#/etc/rc.sysinit <br />
#/etc/rc.single <br />
#/etc/rc.multi <br />
#/etc/rc.local <br />
#/etc/rc.shutdown <br />
#/etc/rc.local.shutdown <br />
#/etc/rc.d/* <br />
<br />
'''/etc/rc.sysinit'''<br />
<br />
這是主系統啟動腳本。它完成一些啟動過程中必須的工作,如掛載檔案系統、運行udev、啟動交換分割區、載入模組、設定本機化參數等等。你最好永遠不要編輯這個檔!<br />
<br />
'''/etc/rc.single'''<br />
<br />
當以單使用者模式啟動系統時運行該腳本,在正常情況下不會運行該腳本。如果系統以單使用者模式啟動,例如在啟動時向核心傳遞參數1或者在正常多使用者模式下運行指令init 1,該腳本確保除了少數系統關鍵服務(syslog-ng,udev)之外沒有其他服務運行。單使用者模式用於在修改系統設定時確保沒有其他使用者使用系統,以免造成資料丟失或損壞。<br />
對於桌面使用者,單使用者模式沒有多大用處。同樣的,你不需要修改這個腳本。<br />
<br />
'''/etc/rc.multi'''<br />
<br />
多使用者啟動腳本在調用完/etc/rc.local後,會啟動在/etc/rc.conf中設定的所有服務程式。你也沒有修改這個檔的必要。<br />
<br />
'''/etc/rc.local'''<br />
<br />
本機多使用者啟動腳本,你可以把你希望系統在啟動過程結束後執行的指令放在這裏,這些指令會在最後階段執行。這是唯一一個你有可能會修改的啟動腳本,你可以隨意地在這個腳本中加入任何指令。<br />
<br />
大部分常見的系統設定任務,如載入模組、改變控制臺字體、設定設備,都有自己專用的領地。為了避免混亂,你必須確保你在rc.local中加入的任何指令都不會比加在/etc/profile.d/或者其他已有設定檔中更合適。<br />
<br />
'''/etc/rc.shutdown'''<br />
<br />
系統關機腳本的任務是停止服務程式、制裁檔案系統、解除交換分割區等待。最好不要修改它。<br />
<br />
'''/etc/rc.local.shutdown'''<br />
<br />
與/etc/rc.local類似,在這個檔中可以放入任何你希望在rc.shutdown之前執行的指令。請注意預設情況下這個檔並不存在,如果你要建立這個檔,請確保它具有可執行許可權才能正常工作。<br />
<br />
'''/etc/rc.d/*'''<br />
<br />
該目錄中存放著用於rc.conf中DAEMONS變數的服務程式腳本。除了在啟動時被執行,你還可以在系統運行中利用這些腳本來管理服務程式。例如下面這個指令:<br />
<br />
/etc/rc.d/postfix stop<br />
<br />
將會停止postfix服務。當然只有你安裝了相應的套裝軟體之後,對應的腳本才會出現在這裏。如果只安裝了基本系統,這裏的服務程式腳本是非常少的,隨著套裝軟體的安裝,所有需要的啟動腳本最終都會被放在這裏。這個目錄的作用與其他發行版中的/etc/rc3.d/或者/etc/init.d/相似,好處就是免去了數不清的鏈結。<br />
<br />
=== 使用者管理 ===<br />
<br />
可以通過標準linux指令:useradd,userdel,groupadd,groupdel,passwd,gpasswd來新增或者刪除使用者和組。新增一個帳戶的典型操作如下:<br />
#useradd –m –s /bin/bash johndoe<br />
#passwd johndoe<br />
<br />
第一個指令向系統新增一個名為johndoe的使用者,為他建立主目錄/home/johndoe,將一些預設的登錄檔放進主目錄中,同時設定他的登錄shell為/bin/bash。第二個指令為該帳戶建立密碼。只有建立密碼之後該帳戶才算被啟動。<br />
<br />
除了useradd指令,還可以通過adduser腳本來互動式的建立新帳戶。<br />
剩下的指令的用法可以察看相應的manpage。建議建立一個或多個普通使用者用於日常使用,這可以大提高安全性、降低系統損壞的可能性。<br />
<br />
=== 訪問網際網路 ===<br />
<br />
由於缺乏解決撥號問題的開發者,通過撥號線路將Arch連接到網際網路需要經歷相當多的手動操作。如果可能,儘量設定一個專有的路由,然後就可以把它作為預設閘道來使用。<br />
在Arch Linux維琪上有一些撥號相關的文檔:<br />
<br />
'''模擬貓'''<br />
<br />
要想使用外接的賀氏相容類比貓,你需要安裝ppp套裝軟體。根據自己的需要修改/etc/ppp/options檔(如有問題請察看man pppd)。你還要建立一個交互腳本(chat),用來在初始連接建立後向ISP提交使用者名和密碼。pppd和chat的manpage裏有詳細的例子說明。使用udev的情況下,串口一般為/dev/tts/0和/dev/tts/1。<br />
如果你覺得pppd太簡陋了,可以安裝wvdial或者類似的工具來簡化設定過程。<br />
如果你使用的是WinModem(不懂,內置貓?譯者注),即內置貓PCI卡,你可以在LinModem的主頁得到詳細的資訊。<br />
<br />
'''ISDN'''<br />
<br />
設定ISDN需要3個步驟:<br />
#安裝、設定硬體<br />
#安裝、設定ISDN工具包<br />
#設定自己的ISP<br />
<br />
Arch打包好的核心中包含了必要的ISDN模組,這意味著你不必重新編譯核心,除非你使用的是非常舊的ISDN硬體。將ISDN硬體設備連接到電腦上後,你可以試著使用modprobe指令來載入相應的模組。幾乎所有的被動式ISDN PCI卡都可以使用hisax模組,只需要為它新增型號和協議兩個參數。根據你所在國使用的標準設定協議號:<br />
*“1”-1TR6<br />
*“2”-EuroISDN(EDSS1)<br />
*“3”-無D通道的租用線路<br />
*“4”-US NI1<br />
<br />
核心文檔中有如何設定這些參數的詳細描述(ISDN分支),你可以線上訪問它。型號參數取決於你使用的ISDN卡,核心文檔中README.HiSax檔列出了所有支持的型號,查找到你的卡對應的型號,然後通過下列指令來載入模組:<br />
modprobe hisax type=18 protocol=2<br />
<br />
上面這條指令會為ELSA Quickstep 1000PCI卡載入模組,並設定它使用EDSS1協定(德國)。/var/log/everything.log中記錄了調試輸出資訊,如果出現問題可以在這裏找到線索。請注意,如果使用外部USB ISDN適配器,還需要先載入一些相應的USB模組。<br />
一旦你確定卡及基設定可以正常工作,就可以把相應的模組放到/etc/modprobe.conf中:<br />
alias ippp0 hisax<br />
options hisax type=18 protocol=2<br />
<br />
或者你也可以只把參數設定留在這裏,而把hisax模組放到rc.conf的MODULES陣列中進行載入。兩種方法隨你選擇。不過前一種方法有一個優點:只有在使用到的時候才會真正的載入模組。<br />
<br />
現在硬體已經正常工作,你需要一些基本的工具來真正地使用它!<br />
<br />
安裝isdn4k-utils套裝軟體,通過man isdnctrl來得到更多的資訊。在manpage中給出了設定檔的詳細說明,並且給出了一些有用的例子。<br />
<br />
如果你使用US NI1標準,你必須把SPID回到MSN的設定中,並用冒號隔開。<br />
<br />
當你用isdnctrl工具設定好ISDN卡後,應該已經可以撥入PHONE-OUT參數指定的機器,但是會出現使用者名、密碼認證錯誤。所以和普通的類比PPP連接一樣,你需要把正確的使用者名和密碼新增到/etc/ppp/pap-secrets或者/etc/ppp/chap-secrets,具體是哪個檔取決於你ISP的認證協議。如果不清楚,在兩個檔中都寫上就可以了。<br />
如果你所有的設定都是正確的,現在應該已經可以以根使用者身份,使用“isdnctrl dial ippp0”指令來建立撥號連接了。如果出現問題,記得檢查日誌檔!<br />
<br />
'''DSL (PPPoE)'''<br />
<br />
這段說明只對那些自身可以管理到ISP的連接的PC有關。你什麼都不用做,除非你使用某種單獨的路由,才需要定義一個正確的閘道。<br />
你首先要把連接DSL貓的網卡安裝到電腦上,再載入網卡對應的模組(可以寫入modeprobe.conf或者rc.conf),然後安裝rp-pppoe套裝軟體並使用pppoe-setup腳本來設定連接,最後輸入所需的資料,這樣才能建立DSL連接。建立連接或者斷開連接的指令分別為:<br />
/etc/rc.d/adsl start<br />
/etc/rc.d/adsl stop<br />
<br />
一般來說設定相當簡單、明瞭,隨時可以通過manpage來得到資訊。如果想在啟動時自動撥號,只需把adsl加入到DAEMONS陣列中即可。<br />
<br />
== 套裝軟體管理 ==<br />
<br />
=== Pacman ===<br />
<br />
pacman是Arch Linux的套裝軟體管理器,它可以追蹤所有安裝的軟體。它支援簡單的依賴檢查,使用標準gzip壓縮的tar包來管理所有的套裝軟體。下面列出了一些常用的指令(分別使用長參數和短參數,它們的功能是完全一樣的)。如果想瞭解更多有關pacman的指令參數,請查閱man pacman。這裏只是一個概覽,它只描述了pacman很少的一部分功能,但是都是最常用的功能:<br />
<br />
典型工作:<br />
*將一個套裝軟體檔新增到系統<br />
*使用套裝軟體檔更新軟體<br />
*移除套裝軟體<br />
*更新軟體包列表<br />
*更新系統<br />
*從軟體倉庫新增/更新軟體<br />
*列出所有已安裝的軟體<br />
*檢查某個套裝軟體是否已經被安裝<br />
*顯示指定套裝軟體的資訊<br />
*顯示軟體中所有檔的列表<br />
*找出某個指定檔所屬的套裝軟體<br />
<br />
''將一個套裝軟體檔新增到系統''<br />
pacman --add foo.pkg.tar.gz<br />
pacman -A foo.pkg.tar.gz<br />
<br />
這個指令會把foo.pkg.tar.gz套裝軟體安裝到系統。如果不能滿足依賴關係,pacman會出錯退出,並自動顯示出缺少的依賴包。但是它不會嘗試解決依賴關係,如果你想讓它這麼做,可以加上”--sync”參數。可以在一個指令中新增多個套裝軟體,如果這些套裝軟體之間有依賴關係,pacman會以正確的順序來安裝它們。<br />
<br />
''使用套裝軟體檔更新軟體''<br />
pacman --upgrade foo.pkg.tar.gz<br />
pacman -U foo.pkg.tar.gz<br />
<br />
該參數的功能與 “--add”相同,區別在於如果要新增的包比已經安裝的包版本要新的話,它會自動升級該軟體。顯然”--upgrade”比”--add”更好用,除非你僅僅只是想讓pacman檢測一下某個套裝軟體是否被安裝。<br />
<br />
''移除套裝軟體''<br />
pacman --remove foo<br />
pacman -R foo<br />
<br />
該指令可以移除所有屬於套裝軟體foo的檔(已經修改過的設定檔除外)。只需要給出套裝軟體名稱即可,不用加上pkg.tar.gz的尾碼。<br />
要移除套裝軟體所有的檔,可以在上述指令中加上”--nosave”參數。<br />
<br />
''更新軟體包列表''<br />
pacman --sync --refresh<br />
pacman -Sy<br />
<br />
該指令將從/etc/pacman.conf定義的軟體倉庫中得到最新的套裝軟體列表,並解壓縮到本機資料庫。在你更新系統(--sysupgrade)之前最好運行一下這個指令以確保下載的軟體都是最新的。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。該指令的作用與Debian的”apt-get update”非常相似。<br />
<br />
''更新系統''<br />
pacman --sync --sysupgrade<br />
pacman -Su<br />
<br />
該指令會將系統中已經安裝的套裝軟體更新到倉庫中的最新版本。注意,該指令不會更新本機套裝軟體列表,所以一般情況下需要將兩個指令合併起來使用:<br />
pacman --sync --refresh --sysupgrade<br />
pacman -Syu<br />
<br />
使用這樣的參數pacman會自動更新軟體包列表,然後根據新的列表更新系統中的軟體,並自動解決依賴關係。<br />
<br />
''從軟體倉庫新增/更新軟體''<br />
pacman --sync foo<br />
pacman -S foo<br />
<br />
該指令會得到並安裝套裝軟體foo,並自動完成所有的依賴關係。在做任何同步操作(--sync,-S)前一定要先更新軟體包列表,或者在指令中加入”--refresh”或”-y”參數來自動更新。與”--add”參數不同,”--sync”參數對安裝軟體或更新軟體同一看待。根據你在pacman.conf設定的軟體倉庫位址,該指令可能需要相應的FTP/HTTP連接。<br />
<br />
如果在從伺服器下載套裝軟體的時候遇到奇怪的問題(如下載文件損壞、找不到檔案),一般是因為你沒有更新軟體包列表造成的,或者是因為伺服器本身正在同步鏡像。<br />
<br />
''列出所有已安裝的軟體''<br />
pacman --query<br />
pacman -Q<br />
<br />
該指令會顯示系統中所有已安裝套裝軟體的列表。<br />
<br />
''檢查某個套裝軟體是否已經被安裝''<br />
pacman --query foo<br />
pacman -Q foo<br />
<br />
在上面的指令中加入一個套裝軟體名稱,如果該軟體已安裝,它會顯示軟體名稱和版本;如果沒有安裝,不會顯示任何資訊。<br />
<br />
''顯示指定套裝軟體的資訊''<br />
pacman --query --info foo<br />
pacman -Qi foo<br />
<br />
該指令顯示已安裝軟體foo的資訊(大小,安裝日期,建立日期,依賴關係,衝突等)。如果該軟體還沒有安裝,可以新增參數”--file”或者”-p”來察看套裝軟體檔的相關資訊:<br />
pacman --query --info --file foo.pkg.tar.gz<br />
pacman -Qip foo.pkg.tar.gz<br />
<br />
''顯示軟體中所有檔的列表''<br />
pacman --query --list foo<br />
pacman -Ql foo<br />
<br />
該指令顯示軟體foo中所有檔的列表。<br />
<br />
''找出某個指定檔所屬的套裝軟體''<br />
pacman --query --owns /path/to/file<br />
pacman -Qo /path/to/file<br />
<br />
該指令中的檔參數要使用完整路徑(只有檔案名是不會給出任何結果的),會顯示包含指定檔的套裝軟體的名稱和版本。<br />
<br />
=== 訪問軟體倉庫 ===<br />
<br />
套裝軟體倉庫是一個套裝軟體及其元資訊的集合,它可以位於本機目錄或者遠端FTP/HTTP伺服器上。Arch系統中預設的倉庫是core倉庫(原文為current,譯者注),裏面的套裝軟體由開發都進行更新、維護,裏面的軟體一般都是最新版本。<br />
許多使用者也會啟動extra套裝軟體倉庫,它裏面包含core倉庫所沒有的更多的套裝軟體。你可以在/etc/pacman.conf中啟動extra倉庫,預設情況下該倉庫是啟動的。<br />
你也以建立、維護你自己的套裝軟體倉庫,請察看pacman的manpage來得到詳細資訊。<br />
如果你是用光碟安裝,並且無法訪問網路,你可能需要從光碟中安裝額外的軟體。具體內容請參考FAQs,特別是FAQ #3,它給出了如何使用安裝光碟作為套裝軟體倉庫的方法。<br />
<br />
==Arch Build System (ABS)==<br />
<br />
===二進位檔 vs. 源碼===<br />
<br />
在包管理中,pacman負責二進位檔方面,而ABS則是負責源碼方面:它幫助你從源碼開始建立你自己的自定義套裝軟體,同時還讓你可以用你定義的方式重建Arch Linux的套裝軟體。過程通常如下:<br />
1. 與伺服器同步你的ABS樹。<br />
2. 在/var/abs/local/裏建立一個目錄,其名字和你將要建立的套裝軟體一樣。<br />
3. 將PKGBUILD.proto原型從/var/abs/複製到你新建立的目錄中,刪除掉.proto尾碼,然後將它編輯為適合新軟體包的需要。<br />
4. 在PKGBUILD檔的工作目錄中運行makepkg。<br />
5. 用pacman安裝新建立的套裝軟體。<br />
6. 把套裝軟體發給你的朋友炫耀一番(或者把它給一位Arch使用者讓他/她迷上ABS)。<br />
<br />
===同步你的ABS樹===<br />
<br />
通過以root身份運行abs腳本,你可以同步所有/vb/abs中所需包的檔。它需要cvsup包來執行,如果你沒有安裝的話會出現提示。當然這需要連上internet才行。使用CVS作為傳輸介質使你可以緊跟ABS裏的不同版本的樹 ── 這可以在/etc/abs/supfile.arch裏設定。例如,缺省的supfile設定為跟蹤核心包樹,這是最新而且是推薦使用的源碼。你也可以使用其他版本。詳情可以查看supfiles中的注釋。<br />
<br />
ABS支援多個倉庫,可以在/etc/abs/abs.conf中進行設定。缺省情況下abs只會選擇core和extra倉庫。<br />
<br />
你還會發現一個/etc/abs/supfile.extra文件。它讓你可以訪問所有不在主ABS倉庫中的非官方的建立腳本。如果你不想使用這個倉庫,你可以刪除這個檔,不過通常最好的做法還是編輯abs.conf,取消你不需要的倉庫。<br />
<br />
===如何建立套裝軟體===<br />
<br />
建立過程在makepkg的man手冊裏已經詳細解釋了。你可以在它的指導下建立自己的套裝軟體。如果還不夠,在wiki裏找一下有關教程,或者上論壇或者IRC尋求幫助。<br />
<br />
===套裝軟體的指導規則===<br />
<br />
建立Arch Linux的套裝軟體時,你應到遵循下列套裝軟體的指導規則,特別是在你想將新軟體包貢獻給Arch Linux的時候。<br />
<br />
套裝軟體命名<br />
<br />
* 套裝軟體的名字應當只包含字母與數位;所有字母都應該是小寫。<br />
* 套裝軟體的版本號應當和作者發佈的版本號一致。如果有需要版本號可以包含字母(例如2.54beta32)。版本號不可以包含連接號!只允許字母、數位和小數點。<br />
* 套裝軟體發佈號對Arch Linux來說也是有明確用途的。它讓使用者可以區分包的新舊。當一個新軟體包第一次發佈時,發佈號從1開始。然後經過了修改和優化,套裝軟體再次發佈給公眾,發佈號就會遞增。當一個新版本出來後,發佈計數復位回1.套裝軟體發佈號的命名規則和版本號一樣。<br />
<br />
'''目錄'''<br />
<br />
設定檔應當放置在/etc目錄,如果有超過一個以上的設定檔,依慣例使用一個子目錄來保持/etc盡可能整潔。當你的套裝軟體名為{pkgname}時,用/etc/{pkgname}/來放置(或者其他恰當的名字,例如apache使用/etc/httpd/)。<br />
<br />
套裝軟體裏的檔應當遵循下列的目錄規則:<br />
<br />
/etc 系統必須的設定檔<br />
/usr/bin 程式可執行檔<br />
/usr/sbin 系統級程式<br />
/usr/lib 庫文件<br />
/usr/include 頭文件<br />
/usr/lib/{pkg} 模組、插件等等<br />
/usr/man 幫助手冊<br />
/usr/share/{pkg} 應用程式資料<br />
/etc/{pkg} {pkg}的設定檔<br />
/opt 不適合放置於Linux檔案系統框架內的包可以放在這裏<br />
<br />
如果包裏的檔可以很明確歸類到以上目錄,那就按這樣做。如果有其他高一級的目錄不適合這樣放,可以使用/opt。<br />
<br />
例如,acrobat裏的Browser、Reader和Resource目錄都同樣在bin目錄下。這不合適放置在正常的Linux檔案系統框架內,所以我們把所有檔都放到/opt下。<br />
<br />
都清楚了嗎?好的。<br />
<br />
<br />
'''makepkg的任務'''<br />
<br />
當你用makepkg建立套裝軟體時,它自動執行這些步驟:<br />
# 檢查包的依賴關係是否已經安裝<br />
# 從伺服器上下載原始檔案<br />
# 解壓縮原始檔案<br />
# 進行所需的修補<br />
# 建立軟體,並安裝到一個fake root<br />
# 包裏的刪除/usr/doc、/usr/info、/usr/share/doc和/usr/share/info<br />
# 去除二進位檔裏的symbols<br />
# 去除庫裏的debugging symbols<br />
# 生成每個套裝軟體都會包含的meta檔<br />
# 將fake root壓縮為套裝軟體檔<br />
# 將套裝軟體存放在設定指定的目標目錄(通常是當前目錄)<br />
<br />
'''其他'''<br />
<br />
不要在你的PKGBUILD腳本裏引入新的變數,除非沒了它就無法建立包,因為這有可能和makepkg本身的變數發生衝突。如果一定需要一個新變數,那就在變數名前加下劃線作為首碼。<br />
<br />
避免使用/usr/libexec/存放檔,可以換用/usr/lib/{pkgname}。<br />
<br />
The "Packager" field from the package meta file can be customized by<br />
the package builder by modifying the appropriate option in the<br />
/etc/makepkg.conf file, or alternatively by exporting the PACKAGER<br />
environment variable before building packages with makepkg:<br />
export PACKAGER="John Doe <your.email>"<br />
<br />
<br />
'''Submitting Packages'''<br />
<br />
If you'd like to submit packages, please take a look at the Arch User<br />
Repository and their guidelines. New packages should be submitted to<br />
the AUR.<br />
<br />
If you're submitting a package, please do the following:<br />
*Please add a comment line to the top of your PKGBUILD file that follows this format:<br />
Contributor: Your Name <your.email><br />
*Verify the package dependencies (eg, run ldd on dynamic executables, check tools required by scripts, etc.). It's also a good idea to use the namcap utility, written by Jason Chu jason@archlinux.org, to analyze the sanity if your package. namcap will tell you about bad permissions, missing dependencies, un-needed dependencies, and other common mistakes. You can install the namcap package with pacman as usual.<br />
* All packages should come as a compressed tar file containing a directory with the newly built package, the PKGBUILD, filelist, and additional files (patches, install, ...) in it. The archive name should at least contain the name of the package. <br />
* Read the appropriate documents regarding the AUR, and the newest version of the packaging guildelines on the AUR Homepage.<br />
<br />
== 常見問題(FAQs)==<br />
<br />
這裏的FAQs只列出了一些在安裝、初始設定、啟動Arch Linux過程中常見的問題。如果你在進一步使用(如系統工具、X11設定等)或者如何設定硬體遇到問題,請到維琪中查詢。如果你認為某個問題應該列在這裏,請通知該文檔的作者(他的聯繫方式在該文檔的最頂端)。<br />
<br />
=== 在安裝套裝軟體過程中,pacman報告錯誤:“因為軟體B不在軟體集中,無法解析軟體A的依賴關係。”=== <br />
<br />
除非是系統本身的問題(如果是這樣,那麼很快會收到許多使用者的錯誤報告),一般說來是因為你可能沒有正確地掛載目標分割區,這導致pacman試圖將套裝軟體檔解壓縮縮到虛擬磁片上,就導致了這個錯誤(一般剛完成安裝後,如果fstab或者grub menu.lst中的根分割區設定錯誤就會導致該錯誤。譯者注)。<br />
請確認在安裝過程中設定檔案系統掛載點一步中選擇了“DONE”而不是“CANCEL”。一般如果你使用自動分割區就不會出現這個問題,如果使用了自動分割區後仍然出現這個錯誤,請將你遇到的問題作為bug提交給開發團隊。<br />
<br />
=== 如何利用pacman從光碟上安裝套裝軟體(自動解決依賴關係)?=== <br />
<br />
如果你想從光碟上安裝軟體(例如無法訪問網路時),首先要把光碟掛載到某處(如/mnt/cd),然後在/etc/pacman.conf的[core]下麵加一行“Server = file:///mnt/cd”。<br />
用你的光碟掛載點代替上面的”/mnt/cd”。然後用”pacman --sync”來同步光碟上的套裝軟體。<br />
<br />
=== 如何在安裝過程中建立多交換分割區?=== <br />
<br />
如果你想使用多交換分割區,那麼就不能使用安裝程式的自動分割區功能。手動建立所需的交換分割區,然後用mkswap指令在上面建立交換檔案系統(這很重要,如果沒有執行這個指令,系統啟動時會出問題)。然後繼續下面的步驟,在設定掛載點時安裝程式仍然只會詢問一次交換分割區,這沒有關係。在完成安裝要修改系統設定檔的時候,你可以修改fstab檔,在裏面為每個交換分割區新增一個入口:這很簡單,拷貝一下標準的交換分割區設定行,然後粘貼、修改一下分割區號就可以了。這樣系統啟動時初始化腳本會用”swapon -a”指令自動啟動所有的交換分割區。<br />
如果你想在安裝完成之前就使用多交換分割區,可以切換到另一個終端,然後利用swapon指令逐個啟動要使用的交換分割區。<br />
在你真得打算使用多交換分割區之前,你要明白一點:核心對記憶體的需求更為迫切,交換分割區的大小不是非常重要。請好好照顧自己的小企鵝。謝謝。<br />
<br />
=== 無法ssh連接到機器!=== <br />
<br />
編輯/etc/hosts.deny檔,允許遠端IP訪問。預設設定會拒絕所有的連接請求(不僅僅是ssh連接)。<br />
Edit your /etc/hosts.deny file. The default configuration will reject all incoming connections, not only ssh connections. <br />
<br />
=== 如何在啟動時載入模組?=== <br />
<br />
如果你想載入未綁定到設備的模組,只要把模組名稱加入到/etc/rc.conf的MODULES陣列中即可。如果想在訪問設備時才載入相關模組,按照通常的alias/option格式將模組新增到/etc/modprobe.conf即可。如果udev無法正確的載入某個設備模組(這很少見),也可以使用這個方法。如果模組是通過MODULES變數載入的,而又想為它傳遞輸入參數,那麼只把相應的參數按照option的格式新增到/etc/modprobe.conf中即可。<br />
<br />
=== 核心因為“中斷丟失”無法啟動=== <br />
<br />
核心拒絕啟動,並顯示類似“had IRQ探測失敗,had中斷丟失”的錯誤資訊。在2.6.x核心中,某些硬碟控制器會出現類似的錯誤,一般在啟動時給核心傳遞”acpi=off”參數可以解決這個問題。<br />
<br />
=== 播放音樂或者DVD時出現“拒絕存取”錯誤=== <br />
<br />
用下面的指令將你當前使用的使用者新增到optical和music組中:<br />
gpasswd -a johndoe optical<br />
gpasswd -a johndoe audio<br />
先登出再重新登入以使使用者群組設定生效,此時就不存在裝置存取權限的問題了。<br />
如果你有一個DVD光碟機,你可能需要建立一個鏈結(如/dev/dvd)到真正的DVD光碟機。一般情況下,udev已經幫你完成了這個工作,我們以此為例子描述一下如何建立類似的鏈結。<br />
例如,你的DVD設備名稱為/dev/sdc,以根使用者身份執行下面的操作:<br />
cat >>/etc/udev/rules.d/00.rules <<EOF<br />
> KERNEL="sdc", NAME="sdc", SYMLINK="dvd"<br />
> EOF<br />
/etc/start_udev<br />
mount /dev/pts<br />
mount /dev/shm<br />
這樣就可以通過/dev/dvd存取DVD光碟機了。</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Main_page_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105866
Main page (正體中文)
2010-05-07T02:12:14Z
<p>Henry40408: </p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]] <br />
{{i18n|Main Page}} __NOTOC__ __NOEDITSECTION__<br />
<br />
=== Arch Linux Wiki ===<br />
歡迎使用 Arch Linux 之共筆系統( ArchWiki ), Arch Linux 的相關資源與說明文件。<br />
<br />
新手上路,請閱讀以下實用內容:<br />
; [[Arch Linux (正體中文)|Arch Linux 簡介]]:讓您對 Arch Linux 與 Arch Linux 可以給您什麼有個簡單而廣泛的認識。<br />
; [[The Arch Way (正體中文)|Arch Linux 的設計哲學]](翻譯中):讓您深刻地了解 Arch Linux 的設計哲學。<br />
; [[Official Arch Linux Install Guide (正體中文)|Arch Linux 官方安裝指南]](翻譯中):一份給熟悉 UNIX/GNU/Linux 安裝程序使用者的安裝手冊。<br />
; [[ArchWiki 使用教學]]:簡略地指導您如何使用、編輯 Arch Wiki。<br />
; [[FAQ 常見問答集]]:一個包含許多常見問題的解決清單。<br />
<br />
==== 中文環境常用套件 ====<br />
* gcin 中文輸入法(若使用(colinux/vmware)+(xming/vnc)環境,可用gcin-setup 設定為 alt+space 啟動輸入法)<br />
* ttf-fireflysung 中文字型<br />
* wqy-zenhei 中文字型 (黑體字型,含二萬多個漢字)<br />
* wqy-bitmapfont 中文字型 (宋體字型,含27484個漢字)<br />
* leafpad 支援中文的編輯器<br />
* rxvt-unicode 支援中文的 xterm<br />
* 如果剛從 Windows 系統轉入,想找 GNU/Linux 下的代替品,可參閱 '''''[[Work and Play with Arch (Chinese)]]'''''(簡體中文)。<br />
<br />
==== 臺灣社群 ====<br />
<br />
* [http://cle.linux.org.tw/forum/viewforum.php?f=12 CLE 論壇 :: 檢視版面 - Arch Linux]<br />
* IRC channel:<br />
** #archlinux.tw on freenode. (Not yet officially registered)<br />
<br />
==== 大陸社群 ====<br />
<br />
蠻活躍的社群:<br />
* [http://www.linuxsir.org/bbs/forum96.html LinuxSir.Org :: Arch Linux讨论区]<br />
<br />
==== Wiki 最新消息 ====<br />
有時候,有些最新消息值得我們發佈一則新聞稿,但是可能只和 wiki 有關。關於這些只和 wiki 有關係的消息,請參閱 [[Wiki News]] 這一頁。<br />
<br />
==== 自己動手試看看 ====<br />
下面是一份關於 wiki 中主要內容的目錄:<br />
<br />
*[[:Category: About Arch (English)|About Arch]]<br />
**[[:Category:Events (English)|Events]]<br />
*[[:Category: Getting and installing Arch (English)|Getting and installing Arch]]<br />
*[[:Category: System administration (English)|System administration]]<br />
**[[:Category:Hardware (English)|Hardware]]<br />
***[[:Category:Arch64 (English)|Arch64]]<br />
***[[:Category:CPU (English)|CPU]]<br />
***[[:Category:Communication and network (English)|Communication and network]]<br />
***[[:Category:Graphics (English)|Graphics]]<br />
***[[:Category:Hardware detection and troubleshooting (English)|Hardware detection and troubleshooting]]<br />
***[[:Category:I586 (English)|I586]]<br />
***[[:Category:Imaging (English)|Imaging]]<br />
***[[:Category:Input devices (English)|Input devices]]<br />
***[[:Category:Laptops (English)|Laptops]]<br />
***[[:Category:Mainboards and BIOS (English)|Mainboards and BIOS]]<br />
***[[:Category:Optical (English)|Optical]]<br />
***[[:Category:Other hardware (English)|Other hardware]]<br />
***[[:Category:PowerPC (English)|PowerPC]]<br />
***[[:Category:Printers (English)|Printers]]<br />
***[[:Category:Sound (English)|Sound]]<br />
***[[:Category:Storage (English)|Storage]]<br />
**[[:Category:Kernel (English)|Kernel]]<br />
**[[:Category:Networking (English)|Networking]]<br />
**[[:Category:Security (English)|Security]]<br />
**[[:Category:Software (English)|Software]]<br />
***[[:Category:Boot process (English)|Boot process]]<br />
***[[:Category:Command shells (English)|Command shells]]<br />
***[[:Category:Daemons and system services (English)|Daemons and system services]]<br />
***[[:Category:Desktop environments (English)|Desktop environments]]<br />
***[[:Category:Display managers (English)|Display managers]]<br />
***[[:Category:File systems (English)|File systems]]<br />
***[[:Category:Fonts (English)|Fonts]]<br />
***[[:Category:Hardware detection and troubleshooting (English)|Hardware detection and troubleshooting]]<br />
***[[:Category:Package management (English)|Package management]]<br />
***[[:Category:Power management (English)|Power management]]<br />
***[[:Category:X Server (English)|X Server]]<br />
*[[:Category: Desktop user's guide (English)|Desktop user's guide]]<br />
**[[:Category:Audio/Video (English)|Audio/Video]]<br />
**[[:Category:Development (English)|Development]]<br />
**[http://www.golivewire.com LiveWire]<br />
**[[:Category:Educational (English)|Educational]]<br />
**[[:Category:Emulators (English)|Emulators]]<br />
***[[:Category:Wine (English)|Wine]]<br />
**[[:Category:Eye candy (English)|Eye candy]]<br />
**[[:Category:Games and entertainment (English)|Games and entertainment]]<br />
**[[:Category:Graphics and DTP (English)|Graphics and DTP]]<br />
**[[:Category:Internationalization (English)|Internationalization]]<br />
**[[:Category:Internet and Email (English)|Internet and Email]]<br />
**[[:Category:Office (English)|Office]]<br />
**[[:Category:Other desktop user's resources (English)|Other desktop user's resources]]<br />
**[[:Category:Scripts (English)|Scripts]]<br />
**[[:Category:Utilities (English)|Utilities]]<br />
*[[:Category:System recovery (English)|System recovery]]<br />
*[[:Category: Arch development (English)|Arch development]]<br />
**[[:Category:Package development (English)|Package development]]<br />
*[[:Category: Live Arch systems (English)|Live Arch systems]]<br />
*[[:Category:ArchWiki Tools (English)|ArchWiki Tools]]<br />
<br />
<br />
大部分的時候,你都可以直接使用在頁面左方(或是右方)的 <b>導覽列 (navigation bar)</b> 來開始瀏覽 wiki 頁面的內容, 然後使用頁面上方的 <b>標籤頁中的“Edit” (panels)</b> 來開始編輯某個頁面的內容。在每個頁面的最下方,您可找到連至其它 Arch Linux 網站的連結。 <br />
<br />
==== 學會使用 HOWTOs ====<br />
在設定某個軟體(硬體)時遇到困難?不知道該去哪裡找解答和資料?<br><br />
我們建議你先從 [[:Category:HOWTOs (正體中文)|HOWTOs (正體中文)]] 開始搜尋起,一般而言,你應該可以在這找到你需要的中文資訊。<br><br />
如果還是沒能找到(這個很有可能),那麼是因為[[:Category:HOWTOs (正體中文)|HOWTOs (正體中文)]] 中的內容不夠全面。那麼,如果願意閱讀英文,你不妨試試:[[:Category:HOWTOs (English)|HOWTOs (英文頁面)]] 。<br><br />
先找出你的問題可能所屬分類 (categories),試著搜尋相關主題。若您還是無法找到想要的資訊,你可以試看看頁面左方,就在導航 (Navigation bar) 下方的的搜尋功能 (search box).<br />
<br />
==== 建立你自己的頁面 ====<br />
{{Accuracy}}<br />
<br />
Wiki中的中文頁面不多,也許是相當的不全面。因此鼓勵有時間、有能力的人多多貢獻您的傑作,或者直接翻譯英文頁面。<br><br />
在建立/編輯一個頁面的內容前,你必須先建立你的帳號. 當你建立好自己的帳號後,請先試著在 [[Sandbox]] (沙盒)裡面測試並熟悉一下 ArchWiki 所使用的排版語法 (markups). 你自己的 user page 也是個可以用來測試和練習的好地方. 在 [[:Category:Help|Wiki Help Category]] 這一個頁面,你可以找到關於使用這些語法的簡介和範例. 你隨時都可以在頁面左方的瀏覽主題列上找到這個頁面的連接.<br />
<br />
請斟酌在新增頁面中加入下面的內容。這樣做,是為了方便他人查閱Wiki上的中文頁面。<br />
<br />
<pre><br />
[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
……<br />
[[Category: …… (正體中文)]]<br />
</pre><br />
<br />
如果您編輯的頁面,是從英文或其它文種翻譯過來的,那麼請不要忘記在英文與中文頁面中,酌情加入如下內容:<br />
<br />
<pre><br />
{{i18n_links_start}}<br />
{{i18n_entry|english|“英文頁面的標題”}}<br />
{{i18n_entry|正體中文|“中文頁面的標題”}}<br />
{{i18n_links_end}}<br />
</pre><br />
<br />
這樣做,也是為了方便他人查閱Wiki上的中文頁面。<br />
<br />
==== 負責人 ====<br />
任何問題或是建議請參閱 [[ContactList]] 的負責人聯絡名單</div>
Henry40408
https://wiki.archlinux.org/index.php?title=Main_page_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105865
Main page (正體中文)
2010-05-07T02:10:50Z
<p>Henry40408: </p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:HOWTOs (正體中文)]] <br />
{{i18n|Main Page}} __NOTOC__ __NOEDITSECTION__<br />
<br />
=== Arch Linux Wiki ===<br />
歡迎使用 Arch Linux 之共筆系統( ArchWiki ), Arch Linux 的相關資源與說明文件。<br />
<br />
新手上路,請閱讀以下實用內容:<br />
; [[Arch Linux (正體中文)|Arch Linux 簡介]]:讓您對 Arch Linux 與 Arch Linux 可以給您什麼有個簡單而廣泛的認識。<br />
; [[The Arch Way (正體中文)|Arch Linux 的設計哲學]](翻譯中):讓您深刻地了解 Arch Linux 的設計哲學。<br />
; [[Official Arch Linux Install Guide (正體中文)|Arch Linux 官方安裝指南]]:一份給熟悉 UNIX/GNU/Linux 安裝程序使用者的安裝手冊。<br />
; [[ArchWiki 使用教學]]:簡略地指導您如何使用、編輯 Arch Wiki。<br />
; [[FAQ 常見問答集]]:一個包含許多常見問題的解決清單。<br />
<br />
==== 中文環境常用套件 ====<br />
* gcin 中文輸入法(若使用(colinux/vmware)+(xming/vnc)環境,可用gcin-setup 設定為 alt+space 啟動輸入法)<br />
* ttf-fireflysung 中文字型<br />
* wqy-zenhei 中文字型 (黑體字型,含二萬多個漢字)<br />
* wqy-bitmapfont 中文字型 (宋體字型,含27484個漢字)<br />
* leafpad 支援中文的編輯器<br />
* rxvt-unicode 支援中文的 xterm<br />
* 如果剛從 Windows 系統轉入,想找 GNU/Linux 下的代替品,可參閱 '''''[[Work and Play with Arch (Chinese)]]'''''(簡體中文)。<br />
<br />
==== 臺灣社群 ====<br />
<br />
* [http://cle.linux.org.tw/forum/viewforum.php?f=12 CLE 論壇 :: 檢視版面 - Arch Linux]<br />
* IRC channel:<br />
** #archlinux.tw on freenode. (Not yet officially registered)<br />
<br />
==== 大陸社群 ====<br />
<br />
蠻活躍的社群:<br />
* [http://www.linuxsir.org/bbs/forum96.html LinuxSir.Org :: Arch Linux讨论区]<br />
<br />
==== Wiki 最新消息 ====<br />
有時候,有些最新消息值得我們發佈一則新聞稿,但是可能只和 wiki 有關。關於這些只和 wiki 有關係的消息,請參閱 [[Wiki News]] 這一頁。<br />
<br />
==== 自己動手試看看 ====<br />
下面是一份關於 wiki 中主要內容的目錄:<br />
<br />
*[[:Category: About Arch (English)|About Arch]]<br />
**[[:Category:Events (English)|Events]]<br />
*[[:Category: Getting and installing Arch (English)|Getting and installing Arch]]<br />
*[[:Category: System administration (English)|System administration]]<br />
**[[:Category:Hardware (English)|Hardware]]<br />
***[[:Category:Arch64 (English)|Arch64]]<br />
***[[:Category:CPU (English)|CPU]]<br />
***[[:Category:Communication and network (English)|Communication and network]]<br />
***[[:Category:Graphics (English)|Graphics]]<br />
***[[:Category:Hardware detection and troubleshooting (English)|Hardware detection and troubleshooting]]<br />
***[[:Category:I586 (English)|I586]]<br />
***[[:Category:Imaging (English)|Imaging]]<br />
***[[:Category:Input devices (English)|Input devices]]<br />
***[[:Category:Laptops (English)|Laptops]]<br />
***[[:Category:Mainboards and BIOS (English)|Mainboards and BIOS]]<br />
***[[:Category:Optical (English)|Optical]]<br />
***[[:Category:Other hardware (English)|Other hardware]]<br />
***[[:Category:PowerPC (English)|PowerPC]]<br />
***[[:Category:Printers (English)|Printers]]<br />
***[[:Category:Sound (English)|Sound]]<br />
***[[:Category:Storage (English)|Storage]]<br />
**[[:Category:Kernel (English)|Kernel]]<br />
**[[:Category:Networking (English)|Networking]]<br />
**[[:Category:Security (English)|Security]]<br />
**[[:Category:Software (English)|Software]]<br />
***[[:Category:Boot process (English)|Boot process]]<br />
***[[:Category:Command shells (English)|Command shells]]<br />
***[[:Category:Daemons and system services (English)|Daemons and system services]]<br />
***[[:Category:Desktop environments (English)|Desktop environments]]<br />
***[[:Category:Display managers (English)|Display managers]]<br />
***[[:Category:File systems (English)|File systems]]<br />
***[[:Category:Fonts (English)|Fonts]]<br />
***[[:Category:Hardware detection and troubleshooting (English)|Hardware detection and troubleshooting]]<br />
***[[:Category:Package management (English)|Package management]]<br />
***[[:Category:Power management (English)|Power management]]<br />
***[[:Category:X Server (English)|X Server]]<br />
*[[:Category: Desktop user's guide (English)|Desktop user's guide]]<br />
**[[:Category:Audio/Video (English)|Audio/Video]]<br />
**[[:Category:Development (English)|Development]]<br />
**[http://www.golivewire.com LiveWire]<br />
**[[:Category:Educational (English)|Educational]]<br />
**[[:Category:Emulators (English)|Emulators]]<br />
***[[:Category:Wine (English)|Wine]]<br />
**[[:Category:Eye candy (English)|Eye candy]]<br />
**[[:Category:Games and entertainment (English)|Games and entertainment]]<br />
**[[:Category:Graphics and DTP (English)|Graphics and DTP]]<br />
**[[:Category:Internationalization (English)|Internationalization]]<br />
**[[:Category:Internet and Email (English)|Internet and Email]]<br />
**[[:Category:Office (English)|Office]]<br />
**[[:Category:Other desktop user's resources (English)|Other desktop user's resources]]<br />
**[[:Category:Scripts (English)|Scripts]]<br />
**[[:Category:Utilities (English)|Utilities]]<br />
*[[:Category:System recovery (English)|System recovery]]<br />
*[[:Category: Arch development (English)|Arch development]]<br />
**[[:Category:Package development (English)|Package development]]<br />
*[[:Category: Live Arch systems (English)|Live Arch systems]]<br />
*[[:Category:ArchWiki Tools (English)|ArchWiki Tools]]<br />
<br />
<br />
大部分的時候,你都可以直接使用在頁面左方(或是右方)的 <b>導覽列 (navigation bar)</b> 來開始瀏覽 wiki 頁面的內容, 然後使用頁面上方的 <b>標籤頁中的“Edit” (panels)</b> 來開始編輯某個頁面的內容。在每個頁面的最下方,您可找到連至其它 Arch Linux 網站的連結。 <br />
<br />
==== 學會使用 HOWTOs ====<br />
在設定某個軟體(硬體)時遇到困難?不知道該去哪裡找解答和資料?<br><br />
我們建議你先從 [[:Category:HOWTOs (正體中文)|HOWTOs (正體中文)]] 開始搜尋起,一般而言,你應該可以在這找到你需要的中文資訊。<br><br />
如果還是沒能找到(這個很有可能),那麼是因為[[:Category:HOWTOs (正體中文)|HOWTOs (正體中文)]] 中的內容不夠全面。那麼,如果願意閱讀英文,你不妨試試:[[:Category:HOWTOs (English)|HOWTOs (英文頁面)]] 。<br><br />
先找出你的問題可能所屬分類 (categories),試著搜尋相關主題。若您還是無法找到想要的資訊,你可以試看看頁面左方,就在導航 (Navigation bar) 下方的的搜尋功能 (search box).<br />
<br />
==== 建立你自己的頁面 ====<br />
{{Accuracy}}<br />
<br />
Wiki中的中文頁面不多,也許是相當的不全面。因此鼓勵有時間、有能力的人多多貢獻您的傑作,或者直接翻譯英文頁面。<br><br />
在建立/編輯一個頁面的內容前,你必須先建立你的帳號. 當你建立好自己的帳號後,請先試著在 [[Sandbox]] (沙盒)裡面測試並熟悉一下 ArchWiki 所使用的排版語法 (markups). 你自己的 user page 也是個可以用來測試和練習的好地方. 在 [[:Category:Help|Wiki Help Category]] 這一個頁面,你可以找到關於使用這些語法的簡介和範例. 你隨時都可以在頁面左方的瀏覽主題列上找到這個頁面的連接.<br />
<br />
請斟酌在新增頁面中加入下面的內容。這樣做,是為了方便他人查閱Wiki上的中文頁面。<br />
<br />
<pre><br />
[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
[[Category:HOWTOs (正體中文)]]<br />
……<br />
[[Category: …… (正體中文)]]<br />
</pre><br />
<br />
如果您編輯的頁面,是從英文或其它文種翻譯過來的,那麼請不要忘記在英文與中文頁面中,酌情加入如下內容:<br />
<br />
<pre><br />
{{i18n_links_start}}<br />
{{i18n_entry|english|“英文頁面的標題”}}<br />
{{i18n_entry|正體中文|“中文頁面的標題”}}<br />
{{i18n_links_end}}<br />
</pre><br />
<br />
這樣做,也是為了方便他人查閱Wiki上的中文頁面。<br />
<br />
==== 負責人 ====<br />
任何問題或是建議請參閱 [[ContactList]] 的負責人聯絡名單</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105771
The Arch Way (正體中文)
2010-05-06T00:39:41Z
<p>Henry40408: /* 正確的程式碼比日後的修補和華麗的介面來的重要 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
我們堅定地相信著這些哲學,因此撇開所有的外在輿論, AL 的特性、設計和系統概念都以這些哲學作為基礎。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105769
The Arch Way (正體中文)
2010-05-06T00:20:59Z
<p>Henry40408: </p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
因為我們奉這些哲學為圭臬,因此<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105768
The Arch Way (正體中文)
2010-05-06T00:18:12Z
<p>Henry40408: </p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme_cht}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
因為我們奉這些哲學為圭臬,因此<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105767
The Arch Way (正體中文)
2010-05-06T00:14:52Z
<p>Henry40408: </p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
{{translateme}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
因為我們相信這些理<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105684
The Arch Way (正體中文)
2010-05-05T07:19:52Z
<p>Henry40408: /* 正確的程式碼比日後的修補和華麗的介面來的重要 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
因為我們相信這些理<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105666
The Arch Way (正體中文)
2010-05-05T03:10:24Z
<p>Henry40408: /* 正確的程式碼比日後的修補和華麗的介面來的重要 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
撇開所有外在的影響,我們在開發 AL 的所有概念、特色和設計方式都以 AL 的設計哲學作為基礎。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105665
The Arch Way (正體中文)
2010-05-05T03:06:06Z
<p>Henry40408: /* 正確的程式碼比日後的修補和華麗的介面來的重要 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
撇開所有外在的影響, AL 的所有概念、特色和設計方式都以 AL 的設計哲學作為基礎。開發團隊堅定地相信著, AL 的設計哲學<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105590
The Arch Way (正體中文)
2010-05-04T07:37:21Z
<p>Henry40408: /* 程式碼的正確性勝過易用性 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==正確的程式碼比日後的修補和華麗的介面來的重要==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的修補套件,或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此 AL 的開發團隊盡量避免修補套件的發布,但最理想的狀況是永遠不必發布那些修補套件。<br />
<br />
'''在 AL 的開發哲學中,設計簡單、典雅的程式碼一直是我們的最高指導原則之一。'''<br />
<br />
概念、設計與特性,是運用「Arch 之道」的原則作指導,非是屈從于外界的影響,而產生和實現的。開發團隊下決心實踐和致力于「Arch 之道」的哲學。若您跟他們都有同樣的眼光,您就受到歡迎並鼓勵您使用 Arch。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105587
The Arch Way (正體中文)
2010-05-04T07:21:39Z
<p>Henry40408: /* 程式碼的正確性勝過易用性 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==程式碼的正確性勝過易用性==<br />
<br />
開發團隊相信,一開始就設計好一套典雅、簡潔的程式碼比日後不停地發布那些不必要的補丁或是不斷地向使用者炫耀一些不必要的自動化處理、炫麗的視覺效果都還來的重要。因此軟體補丁要被保持在絕對最少的狀態──理想狀態是沒有(補丁)。<br />
<br />
'''在 Arch 的開發過程中,簡單、程式碼典雅、和極簡的原則應始終保持絕對優先地位。'''<br />
<br />
概念、設計與特性,是運用「Arch 之道」的原則作指導,非是屈從于外界的影響,而產生和實現的。開發團隊下決心實踐和致力于「Arch 之道」的哲學。若您跟他們都有同樣的眼光,您就受到歡迎並鼓勵您使用 Arch。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105586
The Arch Way (正體中文)
2010-05-04T07:11:27Z
<p>Henry40408: /* 程式碼的正確性勝過易用性 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==程式碼的正確性勝過易用性==<br />
<br />
開發團隊相信,一套典雅、簡潔的程式,而非那些不必要的補丁、自動化處理、視覺效果或「新手友好性」。因此軟體補丁要被保持在絕對最少的狀態──理想狀態是沒有(補丁)。<br />
<br />
'''在 Arch 的開發過程中,簡單、程式碼典雅、和極簡的原則應始終保持絕對優先地位。'''<br />
<br />
概念、設計與特性,是運用「Arch 之道」的原則作指導,非是屈從于外界的影響,而產生和實現的。開發團隊下決心實踐和致力于「Arch 之道」的哲學。若您跟他們都有同樣的眼光,您就受到歡迎並鼓勵您使用 Arch。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105585
The Arch Way (正體中文)
2010-05-04T07:10:00Z
<p>Henry40408: /* 程式碼的正確性勝過易用性 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==程式碼的正確性勝過易用性==<br />
<br />
開發團隊相信,一套典雅、簡潔的程式碼優先放在首位,而非那些不必要的補丁、自動化處理、視覺效果或「新手友好性」。因此軟體補丁要被保持在絕對最少的狀態──理想狀態是沒有(補丁)。<br />
<br />
'''在 Arch 的開發過程中,簡單、程式碼典雅、和極簡的原則應始終保持絕對優先地位。'''<br />
<br />
概念、設計與特性,是運用「Arch 之道」的原則作指導,非是屈從于外界的影響,而產生和實現的。開發團隊下決心實踐和致力于「Arch 之道」的哲學。若您跟他們都有同樣的眼光,您就受到歡迎並鼓勵您使用 Arch。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408
https://wiki.archlinux.org/index.php?title=The_Arch_Way_(%E6%AD%A3%E9%AB%94%E4%B8%AD%E6%96%87)&diff=105553
The Arch Way (正體中文)
2010-05-03T23:26:52Z
<p>Henry40408: /* 簡單就是美 */</p>
<hr />
<div>[[Category:正體中文]]<br />
[[Category:General 正體中文]]<br />
{{i18n|The Arch Way}}<br />
<br />
以下五點即是最能詮釋 AL 設計理念的核心哲學。但對於 AL 來說, '''KISS''' 還是最能詮釋設計哲學的一個縮寫── '''K'''eep '''I'''t '''S'''imple, '''S'''tupid。<br />
<br />
==簡單就是美==<br />
"簡單是複雜的至高境界。"--李奧納多·達文西。<br />
<br />
簡單就是美一直是 AL 開發團隊的主要目標。許多 GNU/Linux 的發行版都宣稱自己十分「簡單」,但是「簡單」本身卻有多種定義。<br />
<br />
'''AL 對「簡單」的定義是:去除多餘的枝節、避免不必要的修改和過於複雜的設計。AL 提供一個輕量級的 UNIX-like 基礎架構,讓使用者能夠依照自己的需要以最優雅、最簡潔的方式妀造 AL 。'''<br />
<br />
一個經過高度程式化設計的系統應該儘量減少對硬體資源的過度消耗。開發團隊儘量避免在 AL 的基礎系統中加入過度複雜的部分或以過度複雜的方式去存取它們。 AL 設定檔的位置和內容也經過特殊的安排與改寫,省去繁瑣的圖形介面,進階使用者可以透過快速地存取和編輯這些設定檔來掌握整個系統。<br />
<br />
'''淺顯易懂的複雜結構'''<br />
<br />
即使簡單就是美一直是我們的開發理念之一, AL 仍完整保留了 GNU/Linux 系統固有的複雜結構。但複雜結構不等於令人費解的一團混亂,所以我們將 AL 組織地更加良好、更為透明化。開發團隊相信,試圖對使用者隱瞞系統的複雜部分將導致後續的開發變得更加複雜。<br />
<br />
==程式碼的正確性勝過易用性==<br />
<br />
Arch Linux 系統將典雅的程式設計,和簡潔簡單的程式碼優先放在首位,而非那些不必要的補丁、自動化處理、視覺效果或「新手友好性」。因此軟體補丁要被保持在絕對最少的狀態──理想狀態是沒有(補丁)。<br />
<br />
'''在 Arch 的開發過程中,簡單、程式碼典雅、和極簡的原則應始終保持絕對優先地位。'''<br />
<br />
概念、設計與特性,是運用「Arch 之道」的原則作指導,非是屈從于外界的影響,而產生和實現的。開發團隊下決心實踐和致力于「Arch 之道」的哲學。若您跟他們都有同樣的眼光,您就受到歡迎並鼓勵您使用 Arch。<br />
<br />
==開放性==<br />
<br />
「開放」與「簡單」攜手共進,它也是 Arch Linux 開發過程中的指導性原則之一。<br />
<br />
'''Arch Linux 注意使用從開放的來源及其產物中選擇和構建的簡單工具。'''<br />
<br />
「開放」移除了用戶與系統之間所有的界線與抽象的名詞,提供了更多控制權的同時,卻簡化了系統的維護工作。<br />
<br />
Arch Linux 開放的本質,也意味著一個相當陡峭的學習曲線,但是有經驗的 Arch Linux 用戶卻往往發現,其它較封閉的系統要相對難駕禦的多。<br />
<br />
「開放」原則也能延伸到(Arch)社區成員那裏。Arch Linux 用戶對于幫助和建議的開放是出了名的,還能向社區維護的 Arch 用戶程式庫(AUR,Arch User Repository)貢獻程式包。<br />
<br />
==以使用者為中心==<br />
<br />
盡管多種 GNU/Linux 發行版都試圖在加強用戶易用性,Arch Linux 卻一直是以使用者為中心的,并將繼續保持下去。<br />
<br />
'''Arch Linux 瞄准有能力的 GNU/Linux 使用者,并通過給予全部的系統控制權和責任來迎合他們。'''<br />
<br />
使用者依照他們自己的意思來充分管理 Arch Linux 系統。系統本身不會提供多少協助,除了提供一套簡單的維護工具,這套工具被設計成能完美的將使用者的指令傳遞到系統。<br />
<br />
這種以使用者為中心的設計,必然意味著在用 Arch 發行版時要走「自己動手」(DIY,do-it-yourself)的道路。Arch Linux 使用者傾向于自己解決問題并向社區和開發團隊分享結果,而非去尋求協助或要求開發者來實現某一新特性,這就是「先做再問」的哲學。對于出現在 Arch 用戶程式庫(AUR,Arch User Repository,是由社區維護的 Arch Linux 官方程式庫)中由使用者貢獻的程式包而言,這種「先做再問」的哲學是尤其符合實際的。<br />
<br />
==自由性==<br />
<br />
Arch Linux 開發中的另一個指導原則就是自由性。用戶不僅被允許對所有系統設定檔案做出決定,還要選擇自己的系統將要成為什麽樣的系統。<br />
<br />
'''Arch Linux 通過讓系統保持簡單,從而提供了對系統做出任意決定的自由。'''<br />
<br />
新安裝的 Arch Linux 系統僅含有基本的核心組件(core),沒有執行任何自動設定。使用者要能從 Shell 界面來照自己的意思設定系統。從安裝過程的最開始,系統的每一個組成就是 100% 透明和可用的,能立即訪問,移除或被另外的組成所代替。<br />
<br />
各個 Arch Linux 程式庫中大量的程式包和構建腳本也提供了選擇的自由,既有為偏愛開源的人提供的自由軟體,也有為信奉「功能勝過主義」的人提供的私有軟體。正是由使用者来做出這些選擇。<br />
<br />
就像 Arch Linux 項目的創建人 Judd Vinet 說過的那樣:(Arch Linux 啊)就看 '''你''' 怎樣打造它了。<br />
<br />
==另見==<br />
<br />
[[The Arch Way v2.0]]</div>
Henry40408