Subsections


20 用 dselect 安裝軟件包

現在到了安裝您選擇的軟件包的時候了。這個工作用 Debian 的軟件包管理工具 dselect 完成。

1 簡介

這一段文檔是為第一次使用 dselect 的用戶準備的。它不打算解釋每一件事情,所以如果您是第一次使用 dselect,請多利用幫助螢幕來完成工作。

dselect 用於選擇您希望安裝的軟件包(現在在 Debian 2.1 �堣j約有 2,250 個軟件包)。它將在安裝過程中運行。它是個非常強大但稍微有點複雜的工具。而且,您最好事先了解一些關於它的知識。不正確的使用 dselect 可能會對您的系統造成破壞。

dselect 引導您經過以下步驟完成軟件包安裝過程:

  1. 選擇使用的存取方法。
  2. 如果需要的話,更新可用軟件包列表。
  3. 選擇您想安裝的軟件包。
  4. 安裝和升級選擇的軟件包。
  5. 配置所有沒配置的軟件包。
  6. 移去不想要的軟件。
當每一步都順利完成,dselect 將引導您向下進行。請順序通過它們不要跳過任何一步。

在這個文件中我們會在許多地方談到打開另一個外殼 (shell)。Linux 可以同時打開六個控制台對話 (sessions) 或外殼。在您簽入新的外殼後,您可以通過按 Left Alt-F1 到 Left Alt-F6 在它們之間來回切換。安裝程序使用第一個控制台,叫 tty1,所以當您想來返回安裝程序請按 Left Alt-F1。

2 dselect 運行後

一旦運行 dselect 後,您將看到這樣的螢幕顯示:

Debian GNU/Linux `dselect' package handling frontend.

0.  [A]ccess  Choose the access method to use.

1.  [U]pdate  Update list of available packages, if possible.

2   [S]elect  Request which packages you want on your system.

3.  [I]nstall Install and upgrade wanted packages.

4.  [C]onfig  Configure any packages that are unconfigured.

5.  [R]emove  Remove unwanted software.

6.  [Q]uit    Quit dselect. 

讓我們逐條的說明。


1 Access(存取)

Access(存取)的螢幕顯示看起來就像第 [*] 頁圖 3.2。

圖 3.2: dselect Access(存取)螢幕

\resizebox*{4in}{!}{\includegraphics{images/dselect-access.eps}}

在這,我們告訴 dselect 要安裝的軟件包在那�堙C不要在意這些不同方法出現的順序。選擇正確的安裝方法是很重要的。您螢幕上列出的方法可能多一些,可能少一些,或者它們列出的順序不同;您不用擔心這一點。在下面的列表中,我們會說明不同的安裝方法。

multi_cd(多張 CD).
相當巨大和強大,用一套二進制碼 CD 來安裝 Debian 最新的版本時,最好使用這個方法。其中的每一張 CD 都包含有關於它及它前面的 CD 上的軟件包的資訊(在檔案 Packages.cd 中)。當您第一次選擇這個方法時,請確認您要使用的 CD-ROM 沒有裝配。請把這套 二進制 CD(我們不需要原始碼光碟)中的最後一張放在驅動器中,然後回答以下系統將要詢問您的問題:
CD-ROM drive location (CD-ROM 的位置)

Confirmation that you are using a multi-cd set (確認您正在作用 multi-cd 集)

The location of the Debian distribution on the disk(s) (Debian 發佈在碟上的位置)

[ Possibly ] the location(s) of the Packages file(s) [可能會問] 軟件包的位置

一旦您已經更新完可用的列表和選擇完所要安裝的軟件包,multi_cd 方法就脫離了正常的安裝步驟。您將需要依次為每一張 CD 運行 ``install'' 步驟。很不幸,由於 dselect 自身的限制,在每一階段,它不會提示您換新碟;每一張碟的工作流程大概如下:
  1. 把 CD 插入 CD-ROM 光碟機。
  2. 從 dselect 主選單選擇 ``Install''。
  3. 等待 dpkg 完成這張 CD 的安裝。(它可能會報告安裝成功,或者安裝錯誤。現在您不必太擔心,後面我們會解決它。)
  4. 按 Return 返回 dselect 主選單。
  5. 按以上步驟,重複安裝這套光碟中餘下的 CD。
我們可能要不至一次地運行這些安裝步驟來保證軟件包安裝的順序;一些前面安裝的軟件包在正確配置前可能需要稍後安裝的軟件包。

我們推薦您運行一下 ``Configure'' 步驟來修復在這種狀態下結束的軟件包。

multi_nfs, multi_mount.
它們和 multi_cd 方法非常相似,細微的差別在於用不同的傳媒拷貝──例如,使用 NFS 從另一個機器的 CD-ROM 驅動器上來安裝一個 multi_cd 集。

apt.
從一個 Debian 檔案庫的本地鏡像安裝或從網路安裝時最有用的選項。這個方法使用 ``apt'' 系統去做完全的依靠 (dependency) 分析和定制。所以它以可能以最理想的順序安裝軟件包。
這種方法的配置是很簡單的。您可以選擇許多不同的位置,混合和相符的 file: URLs(本地磁片或者用 NFS 裝配上的磁片),http: URLs,或者 ftp: URLs。但是請注意,HTTP 和 FTP 選項不支援本地身份驗證代理 (authenticating proxies)。

如果您有 HTTP 或 FTP 代理伺服器(或者兩者都有),請確認您已經分別設置了 http_proxy 和 ftp_proxy 環境變量。在 dselect 開始前在您的外殼程式中用下面的命令設置它們:

# export http_proxy=http://gateway:3128/

# dselect              


2 Update(更新)

dselect 將會從鏡像中讀 Packages 或者 Packages.gz 檔案而且創建一個您系統上所有可用軟件包的資料庫。它下載和處理這些文件可能要花費一些時間。


3 Select(選擇)

集中注意力。我們大部分工作要在這完成。這個練習的目的是幫助您只選擇您希望安裝的軟件包。

按下 Enter 鍵。如果您的機器比較慢,螢幕將清除並保持空白 15 秒。這時您只需靜靜的等待。

螢幕上首先顯示的是幫助文件的第一頁。您可以在 ``Select'' 螢幕下隨時按下 ?(問號)鍵得到這個幫助,而且您還可以按 .(句號)鍵來分頁瀏覽幫助。

在您開始前,請注意以下幾點:

讓我們看看 Select 螢幕的最上面兩行。它可以提醒您列在表 3.1 內的一些功能鍵。


表 3.1: dselect 中的功能鍵

鍵 功能說明
+ 選擇一個要安裝的軟件包
= 保持軟件包的原來狀態
- 移去一個軟件包
_ 移去一個軟件包和它的設定檔
i, I 開關和循環顯示資訊
o, O 循環使用不同的選項分類
v, V 簡潔/詳細顯示資訊的轉換鍵


表 3.2 列出 dselect 用來表示每個套件所處狀態的標記。

表 3.2: dselect 軟件包狀態

旗標 意義 可能的值
E 錯誤 (Error) 空白, R, I
I 安裝狀態 (Installed State) 空白, *, -, U, C, I
O 舊標誌 (Old Mark) *, -, =, _, n
M 標誌 (Mark) *, -, =, _, n


與其在這�塈漭早抭ˉg出來,不如您自己看看幫助螢幕上完善的說明。但也不妨舉個例子。

您進入 dselect 並發現了一行字,如下:

EIOM Pri  Section  Package   Description

  ** Opt  misc     loadlin   a loader (running under DOS) for LINUX

它是說 loadlin 這個軟件包您上次運行 dselect 時選擇了,這次仍然選擇了,但沒有安裝。為什麼沒有安裝呢?那一定是因為 loadlin 物理上不能訪問。它在您的映射站台上找不到。

dselect 正確安裝軟件包所需的資訊藏在軟件包自身�堶情C但世界上沒有任何事是完美無缺的,有時建立在軟件包內部的依賴關係 (dependencies) 不正確,那意味著 dselect 完全不能解決這種情況。這�奡ㄗ悀@個讓用戶恢復控制的方法;就是用 Q 和 X 命令,它們可以在 Select 螢幕中使用。

Q
強制 dselect 忽略內建的依賴關係而去做您指定的。其結果,您應該可以想到。

X
如果您被完全搞糊塗了,用 X 鍵。它將取消選擇引起問題的軟件包並退回到問題發生以前的狀態。
Select screen (dselect) Select 螢幕 (dselect) 中幫助您不被搞糊塗 (!) 的鍵是 R、U 和 D。

R
取消這一層的所有選擇。不影響上一層做的選擇。
U
如果 dselect 改變了您的選擇以修正問題,而您又對它的這些改變進行了改變,U 將恢復 dselect 的選擇。
D
移去 dselect 做的選擇,只留下您的選擇。
接著講一個例子。boot-floppies 軟件包(我知道,這個例子對於初學者來說不太合適,但之所以選擇它是因為它有一大堆依賴關係)依賴於這些軟件包: boot-floppies 的維護人員也認為以下的軟件包應該安裝,但它們並不是必須的:

當您選擇 boot-floppies 時,dselect 顯示衝突解決螢幕。您會注意到所有必需的軟件包已經被選擇了。

按下 R 鍵退回到起點。

EIOM Pri Section  Package      Description 

  __ Opt admin    boot-floppie Scripts to create the Debian

  __ Opt devel    newt0.25-dev Developer's toolkit for newt

  __ Opt devel    slang1-dev   The S-Lang programming library

  __ Opt devel    slang1-pic   The S-Lang programming library

如果您現在決定不想要 boot-floppies 了,只須按下 Enter。

按下 D 鍵退回到您第一次選擇它們的樣子:

EIOM Pri Section  Package      Description

  _* Opt admin    boot-floppie Scripts to create the Debian

  __ Opt devel    newt0.25-dev Developer's toolkit for newt

  __ Opt devel    slang1-dev   The S-Lang programming library

  __ Opt devel    slang1-pic   The S-Lang programming library

按 U 鍵恢復 dselect 的選擇:

EIOM Pri Section  Package      Description

  _* Opt admin    boot-floppie Scripts to create the Debian installation

  _* Opt devel    newt0.25-dev Developer's toolkit for newt

  _* Opt devel    slang1-dev   The S-Lang programming library

  _* Opt devel    slang1-pic   The S-Lang programming library

我建議您現在用缺省值;以後您完全可以再添加您想要的軟件包。

無論您的決定是什麼,按下 Enter 鍵接受已做的選擇將返回到主螢幕。如果這個選擇造成一個沒解決的問題,您將會退回到另一個問題解決螢幕。

R、U 和 D 鍵在「如果……將會……」的情形下很有用。如果您願意,您可以試一下,然後恢復一切,再繼續向下進行。您不用把它們看成緊急時刻才能用的救命草。

在選擇螢幕做完選擇後,按 I 鍵螢幕將會變大,按 t 來到開頭,然後用 Page Down 鍵快速瀏覽您的設置。這樣您就可以檢查您的工作成果和發現可能犯的重大錯誤。否則您可能無意間取消了整個一組軟件包的選擇,當您發現時,可能已經太晚了。dselect 是一個十分強大的工具;請小心使用。

您現在的情況大概和下面的表 3.3 一樣。


表 3.3: Expected Package Category States

軟件包種類 狀態
Required(必須) 全選了
Important(重要) 全選了
Standard(標準) 選了大部分
Optional(隨意) 多數沒有選
Extra(額外) 多數沒有選


滿意嗎?按 Enter 鍵退出選擇過程。您還可以隨時拐回來重新選擇。

4 Install(安裝)

將掃描整個軟件包的集合並安裝被選擇中的軟件包。在安裝過程中將要求您做出一些決定。這時切換到另一個的外殼比較新舊配置的不同會對您做決定有很大的幫助。舊配置文件如果是 conf.modules,新配置文件就是 conf.modules.dpkg-dist。

如果您的機器性能很好,螢幕卷動得會很快。您可以分別用 Ctrl-s 和 Ctrl-q 停止和再啟動它。在運行的結尾,您會得到一個所有未安裝的軟件包的列表。

一個軟件包沒有被安裝是因為它所依賴的軟件包雖被列為要安裝,但還沒安裝。解決辦法是再安裝一次。已經有例子報告說為了正確安裝某個軟件包有可能您要運行安裝程序四次。次數應該根據您安裝所用的方法而有所不同。

5 Configure(配置)

大多數軟件包在第三步就配置好了,但還有一些沒配置好的可以在這配置。

6 Remove(移除)

移去您以前安裝上的,但不再需要了的軟件包。

7 Quit

我建議您在這運行一下 /etc/cron.daily/find,因為您的系統上現在有這麼多新的檔案。然後您就可以用 locate 找到任何檔案的位置。

3 總結的一些小提示

當安裝過程運行 dselect 時,無疑您一定急於盡快把 Debian 安裝。好的,請花上一小時左右來熟悉一下情況然後再開始安裝。當您第一次進入 Select 螢幕時,不要做任何選擇──只管按 Enter 鍵,看看發生了什麼依賴問題。試著修正它們。如果您發現您退回到主螢幕,請再次運行 Select。

您連擊 i 鍵兩次將得到有關軟件包的大小的資訊。這是壓縮後的大小,解壓縮後的檔案會大得多(看 ``Installed-Size''(單位為千字節) 就可以知道了)。

安裝一個新的 Debian 系統是一個比較複雜的事,但 dselect 可以幫助您使它盡可能的簡單。所以請花些時間學習如何使用它。多讀一下幫助螢幕並多練習使用 i、I、o 和 O 鍵。請利用好 R 鍵。講完了,但願上面所說的能使您更有效的使用它。

John Goerzen / Ossama Othman / Debian 中文計劃