[分享] APT 另一個 front end:aptitude

Debian 有很多實用的工具如: apt 系列 、 update- 系列,但是我們卻常常忽略了!這個版就是要大家一起來分享您在使用 debian 特殊指令的經驗!請大家共襄盛舉囉!注意不要在此提問問題喔!

[分享] APT 另一個 front end:aptitude

文章阿信 » 週五 8月 22, 2003 3:55 pm

之前的照片放在sayya的ftp上,現在似乎主機有問題,所以照片另外擺,還請朋友們另外點圖出來,造成不便還請原諒

簡介

Debian 3.0 Woody release同時,除了原本的 dselect 之外,增加了另外一個前端程式:aptitude。

官方建議尚未使用 dselect 或是想要找尋 apt的前端程式的使用者們,可以考慮以 aptitude 來管理 dpkg package system,以下是擷取官方網站的說明:

* 在 woody 的發行準備過程中,我們的開發人員發展出了許多 apt 的前端介面,以取代已經有相當歷史,也常常遭到批評,但仍然廣為使用的 dselect。對這方面有興趣的使用者應該研究 aptitude 這個套件。
* http://www.debian.org/releases/stable/i ... zh-tw.html

不錯吧,連官方文件都是如此建議,aptitude到底有多大的神奇呢?筆者倒是可以分享一下小心得。

記得很久以前,不小心重灌 Debian...(因為硬碟損毀...:-(),在安裝好 base system 之後,來到了console下,這個時候我無法用WWW來找尋該安裝那些套件,甚至不知道套件名稱,所以無法用 apt-get install 來安裝軟體。

這時候,我就執行 aptitude,選一選我要的package,然後按"g",讓aptitude準備開始下載安裝,整個選取過程不到十分鐘,為什麼呢?因為 aptitude 的好處在於:

1. easy to search package instead of typing lots of words
2. package grouping
3. easy to install/hold/purge/remove/upgrade/downgrade package
4. i18n package grouping

透過上述的功能,讓我無須辛苦的打字,辛苦的想package的名稱,通通在一個視窗進行 install/upgrade,聽起來很迷人吧,接下來一起欣賞 aptitude 的功能吧...:-)

介面

先來看一下 aptitude 的畫面。
http://chuany.net/gallery/album26/C8_3_aptitude_main?full=1

解釋一下這六個項目:

1. New Packages:update list 後所增加的套件
2. Installed Package:系統已安裝的
3. Not Installed Package:尚未安裝的
4. Obsolete and Locally Created Package:非 apt port 所安裝的package,通常為自己建立的deb居多
5. Virtual Packages:這邊的package本身不存在,通常是為了套件相依性而產生,也可以下拉看看該package的版本,比如kernel-image-2.4,往下拉就會看到更多不同版本,比如686/k6/k7等。
6. Tasks:類似tasksel,以不同需求分類package,比如一般桌面使用,我們可以在 End-User 這個區域找到方便使用的軟體

套件狀態

1. h:Hold,保留
2. d:Remove,移除
3. p:Purge,同移除,但會將設定檔也刪除
4. B:Broken,表示該套件與其他套件的相依性出錯
5. i:Install,安裝
6. r:Reinstall,重新安裝
7. u:Upgrade,該套件有新的版本可供升級

功能鍵說明

在使用 aptitude 之前,一些操作的指令與模式需要先熟悉,以下列出的是常用的按鍵組合:

1. +:安裝
2. -:移除
3. _:同移除,但會將設定檔也刪掉
4. =:保留套件不被升級
5. L:重新安裝
6. u:同 apt-get update
7. g:執行 apt-get install
8. d:找出packages與此套件的相依性:suggest/recommanded/depends
9. r:找出套件 depends on 的package
10. enter:顯示套件資訊
11. /:收尋套件
12. \:收尋結果的上一步
13. ?:help視窗

上面最有爭議的大概就是 r / d 這兩個用法了,舉個例子來說明會比較清楚一點,我們就拿xserver-xfree86吧。

這是按下 "r" 的結果:
http://chuany.net/gallery/album26/C8_3_aptitude_1
游標停在 x-window-system-core這一個package上,在此套件上一行寫著 Depends,這代表什麼呢?這表示 x-window-system-core 是 depends on xserver-xfree86,要安裝 x-window-system-core 的話,就會安裝 xserver-xfree86以符合相依性,但對 xserver-xfree86 這個套件來說,有無安裝 x-window-system-core 並不影響。

如果事先已經安裝了 x-window-system-core,且在這個視窗我們進行移除 xserver-xfree86的話,就會發現 x-window-system-core 會有 "B"(broken)的狀態,見下圖:
http://chuany.net/gallery/album26/C8_3_aptitude_1_B
這是按下 "d" 的結果:
http://chuany.net/gallery/album26/C8_3_aptitude_2
游標停在 xserver-common 的地方,上兩行寫著 Depends,這又是代表什麼呢?表示說 xserver-xfree86 depends on xserver-common的意思,如果將 xserver-common移除,那 xserver-xfree86就會出現 "B"(Broken),見下圖:
http://chuany.net/gallery/album26/C8_3_aptitude_2_B
以上這些指令與狀態表皆可在aptitude的help中看到。

心得

通常安裝package最怕的就是出現 broken 訊息時,往往只是看到一個 apt-get 的訊息,移除了一個之後,發現又出現下一個,這時,我建議是透過 aptitude,然後利用 r/d 來找出是那個 package 出了問題,會是比較方便且快速的辦法。

別小看 aptitude 這些功能,其實aptitude還可以"downgrade",只要將source.list中加入舊版的資訊,在aptitude中就可以安裝特定的版本,如果遇到 dependency 的麻煩,就善用上面所說的技巧,找出最穩當的方式來操作,相信會比貿然"降級",而發現系統掛掉來的有保障多了。

對套件管理而言,aptitude幫助我們更清楚了解套件的情況,善用這些功能是可以方便整理套件的窩,希望大家喜歡...:-)
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:[分享] APT 另一個 front end:aptitude

文章阿信 » 週五 8月 22, 2003 3:57 pm

晚一點在補充 aptitude 中 task安裝chinese-traditional環境... :-)
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:[分享] APT 另一個 front end:aptitude

文章moto » 週五 8月 22, 2003 4:27 pm

:finger1: :finger1: .. 阿信真是太讚了...經你這麼介紹我也來試試看... :mrgreen:
歡迎你來到MOTO學園一起討論Debian相關問題。
在post問題前可先別忘記了以下的步驟:
1:翻一下/usr/share/doc/中是否已經有解答了?
2:閱讀一下無痛起步是否已經提到了?
3:找一下google予以解答?
4:善用學園中的"搜尋"功能,往往答案就在裡面窩。
頭像
moto
摩托學園站長
摩托學園站長
 
文章: 2808
註冊時間: 週二 9月 03, 2002 3:37 am
來自: 台北

re:[分享] APT 另一個 front end:aptitude

文章huki » 週五 8月 22, 2003 9:00 pm

阿信兄果然厲害
每次介紹的東西都讓人超想用的
又心動了~~~
反正我原來就是不喜歡用dselect
哈~~~~~:ooops:
Linux給我的感覺就是自由自在,沒有壓力
希望大家都能參與linux
變成linux世界的一份子
HuKi
頭像
huki
快樂的大學生
快樂的大學生
 
文章: 783
註冊時間: 週四 11月 28, 2002 7:27 am
來自: 家:中壢/公:桃園

re:[分享] APT 另一個 front end:aptitude

文章阿信 » 週五 8月 22, 2003 11:08 pm

喜歡aptitude的話,還可以看看他的另一個介面:synaptic

另外呢...還記得deborphan嗎?這一個package可以幫你找出系統不需要的lib or package,使用aptitude的話,只要在option->dependency handling->Remove unused package打勾的話,就會將系統用不到的package移除掉了(預設是開啟的)。

dependency handling建議是勾選1,2,3,5,不需要勾suggested,那就會裝一大堆可能用不到的package摟,要更精簡的話,也把recommand也反勾吧,就會更精簡摟... :-D :-D :-D
最後由 阿信 於 週六 11月 29, 2003 10:10 am 編輯,總共編輯了 1 次。
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:[分享] APT 另一個 front end:aptitude

文章d2207197 » 週五 8月 22, 2003 11:22 pm

阿信 寫:喜歡aptitude的話,還可以看看他的gui介面:synaptic

原來synaptic是aptitude的gui介面阿....

我以前在redhat時,就有用 synaptic 了,卻不知道是aptitude的gui介面
頭像
d2207197
鑽研的研究生
鑽研的研究生
 
文章: 1763
註冊時間: 週二 5月 27, 2003 9:57 pm
來自: 火星

re:[分享] APT 另一個 front end:aptitude

文章wwwq » 週二 8月 26, 2003 9:09 pm

問個問題...
為什麼我apt-get update
apt-get upgrade之後..
再執行
aptitude安裝東西...
很多東西都會被更新了耶....而用apt-get upgrade卻沒有更新到...
頭像
wwwq
可愛的小學生
可愛的小學生
 
文章: 34
註冊時間: 週一 8月 11, 2003 2:15 pm

re:[分享] APT 另一個 front end:aptitude

文章阿信 » 週二 8月 26, 2003 11:28 pm

前面的敘述沒有看完整窩...:-(

小弟有提到要先到option中的ui dependency中設定安裝的項目,預設是將recommand,suggested的pkg一同安裝。

而apt-get install只會安裝depends on 而已,不會連recommand,suggested pkg一同安裝下去,所以才會這樣子
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:[分享] APT 另一個 front end:aptitude

文章louie » 週三 8月 27, 2003 9:07 am

稍微補充一小點:
每次按 u 之後, 如果有新的 packages, 就會出現 New Packages,
記得在這一次要結束前, 按 f 或選 menu Actions(按F10)選 Forget new packages, 這樣下次進來 aptitude 時才不會又出現同樣的 new
packages。
另外, 在 aptitude 下載檔案的同時, 可以打打踩地雷來打發時間 F10 ->
到 menu 中選 Actions -> Play Minesweeper
louie
快樂的大學生
快樂的大學生
 
文章: 593
註冊時間: 週一 9月 09, 2002 7:58 pm

re:[分享] APT 另一個 front end:aptitude

文章moto » 週三 8月 27, 2003 11:14 am

真的是不錯... :finger1: ..

對了...如果我一直進入分類...那有回到主 package 頁的熱鍵嗎...還是只能按 f10 叫出 menu 來選擇 ?

或是有類似前一頁/後一頁的功能?
歡迎你來到MOTO學園一起討論Debian相關問題。
在post問題前可先別忘記了以下的步驟:
1:翻一下/usr/share/doc/中是否已經有解答了?
2:閱讀一下無痛起步是否已經提到了?
3:找一下google予以解答?
4:善用學園中的"搜尋"功能,往往答案就在裡面窩。
頭像
moto
摩托學園站長
摩托學園站長
 
文章: 2808
註冊時間: 週二 9月 03, 2002 3:37 am
來自: 台北

re:[分享] APT 另一個 front end:aptitude

文章阿信 » 週三 8月 27, 2003 1:55 pm

moto 寫:真的是不錯... :finger1: ..

對了...如果我一直進入分類...那有回到主 package 頁的熱鍵嗎...還是只能按 f10 叫出 menu 來選擇 ?

或是有類似前一頁/後一頁的功能?


我都是按q耶...

至於前一頁後一頁...似乎沒看過,能說名一下是什麼樣的功能呢?
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:[分享] APT 另一個 front end:aptitude

文章moto » 週三 8月 27, 2003 2:05 pm

d2207197 寫:
阿信 寫:喜歡aptitude的話,還可以看看他的gui介面:synaptic

原來synaptic是aptitude的gui介面阿....

我以前在redhat時,就有用 synaptic 了,卻不知道是aptitude的gui介面


喔..是這樣嗎..我的理解是 synaptic 是另一套 apt-get 的 front end 吧... :ooops:

應該跟 aptitiude 沒關唷... ;-)
歡迎你來到MOTO學園一起討論Debian相關問題。
在post問題前可先別忘記了以下的步驟:
1:翻一下/usr/share/doc/中是否已經有解答了?
2:閱讀一下無痛起步是否已經提到了?
3:找一下google予以解答?
4:善用學園中的"搜尋"功能,往往答案就在裡面窩。
頭像
moto
摩托學園站長
摩托學園站長
 
文章: 2808
註冊時間: 週二 9月 03, 2002 3:37 am
來自: 台北

re:[分享] APT 另一個 front end:aptitude

文章moto » 週三 8月 27, 2003 2:07 pm

阿信 寫:
moto 寫:真的是不錯... :finger1: ..

對了...如果我一直進入分類...那有回到主 package 頁的熱鍵嗎...還是只能按 f10 叫出 menu 來選擇 ?

或是有類似前一頁/後一頁的功能?


我都是按q耶...

至於前一頁後一頁...似乎沒看過,能說名一下是什麼樣的功能呢?


其實我是中了網頁瀏覽的移毒拉.. :ooops: .. 因為本身 aptitude 對 package 管理有分層架構...因此直覺聯想到就跟網頁一樣嚕.. 8-)
歡迎你來到MOTO學園一起討論Debian相關問題。
在post問題前可先別忘記了以下的步驟:
1:翻一下/usr/share/doc/中是否已經有解答了?
2:閱讀一下無痛起步是否已經提到了?
3:找一下google予以解答?
4:善用學園中的"搜尋"功能,往往答案就在裡面窩。
頭像
moto
摩托學園站長
摩托學園站長
 
文章: 2808
註冊時間: 週二 9月 03, 2002 3:37 am
來自: 台北

re:[分享] APT 另一個 front end:aptitude

文章阿信 » 週三 8月 27, 2003 2:15 pm

moto 寫:
其實我是中了網頁瀏覽的移毒拉.. :ooops: .. 因為本身 aptitude 對 package 管理有分層架構...因此直覺聯想到就跟網頁一樣嚕.. 8-)


這...好像沒看過呢,剛剛找了一下,似乎沒有這樣的功能... :ooops:
頭像
阿信
版面大總管
版面大總管
 
文章: 4756
註冊時間: 週二 9月 03, 2002 11:58 pm
來自: 台灣 - 嘉義

re:[分享] APT 另一個 front end:aptitude

文章moto » 週三 8月 27, 2003 2:36 pm

謝拉...沒關係...這是小事囉.... ;-)
歡迎你來到MOTO學園一起討論Debian相關問題。
在post問題前可先別忘記了以下的步驟:
1:翻一下/usr/share/doc/中是否已經有解答了?
2:閱讀一下無痛起步是否已經提到了?
3:找一下google予以解答?
4:善用學園中的"搜尋"功能,往往答案就在裡面窩。
頭像
moto
摩托學園站長
摩托學園站長
 
文章: 2808
註冊時間: 週二 9月 03, 2002 3:37 am
來自: 台北

下一頁

回到 debian command

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客