apt-get 使用指南
原文出處:https://help.ubuntu.com/community/AptGetHowto
原文作者:UbuntuWiki
授權許可:
- 創作共享協議Attribution-ShareAlike 2.0
- GNU自由文檔許可證
翻譯人員:sigus 5451vs5451 youyou keke initnas
校正人員:MillenniumDark
適用版本:
文章狀態:等待校正
apt-get使用source.list文件進行軟件包管理。如果您想了解關于如何編輯和更新source.list中的條目的信息,請參閱SourcesList
引言
"apt是需要用命令來操作的軟件,不過現在也出現了很多有圖形的軟件,比如Synaptic, Kynaptic 和 Adept。"
命令
下面將要介紹的所有命令都需要sudo!使用時請將“packagename”和“string”替換成您想要安裝或者查找的程序。
- apt-get update——在修改/etc/apt/sources.list或者/etc/apt/preferences之後運行該命令。此外您需要定期運行這一命令以確保您的軟件包列表是最新的。
- apt-get install packagename——安裝一個新軟件包(參見下文的aptitude)
- apt-get remove packagename——卸載一個已安裝的軟件包(保留配置文件)
- apt-get --purge remove packagename——卸載一個已安裝的軟件包(刪除配置文件)
- dpkg --force-all --purge packagename 有些軟件很難卸載,而且還阻止了別的軟件的應用,就可以用這個,不過有點冒險。
- apt-get autoclean apt會把已裝或已卸的軟件都備份在硬盤上,所以如果需要空間的話,可以讓這個命令來刪除你已經刪掉的軟件
- apt-get clean 這個命令會把安裝的軟件的備份也刪除,不過這樣不會影響軟件的使用的。
- apt-get upgrade——更新所有已安裝的軟件包
- apt-get dist-upgrade——將系統升級到新版本
- apt-cache search string——在軟件包列表中搜索字符串
- dpkg -l package-name-pattern——列出所有與模式相匹配的軟件包。如果您不知道軟件包的全名,您可以使用“*package-name-pattern*”。
- aptitude——詳細查看已安裝或可用的軟件包。與apt-get類似,aptitude可以通過命令行方式調用,但僅限于某些命令——最常見的有安裝和卸載命令。由于aptitude比apt-get了解更多信息,可以說它更適合用來進行安裝和卸載。
- apt-cache showpkg pkgs——顯示軟件包信息。
- apt-cache dumpavail——打印可用軟件包列表。
- apt-cache show pkgs——顯示軟件包記錄,類似于dpkg –print-avail。
- apt-cache pkgnames——打印軟件包列表中所有軟件包的名稱。
- dpkg -S file——這個文件屬于哪個已安裝軟件包。
- dpkg -L package——列出軟件包中的所有文件。
- apt-file search filename——查找包含特定文件的軟件包(不一定是已安裝的),這些文件的文件名中含有指定的字符串。apt-file是一個獨立的軟件包。您必須先使用apt-get install來安裝它,然後運行apt-file update。如果apt-file search filename輸出的內容太多,您可以嘗試使用apt-file search filename | grep -w filename(只顯示指定字符串作為完整的單詞出現在其中的那些文件名)或者類似方法,例如:apt-file search filename | grep /bin/(只顯示位于諸如/bin或/usr/bin這些文件夾中的文件,如果您要查找的是某個特定的執行文件的話,這樣做是有幫助的)。
典型應用
我是個賽車發燒友,想裝個賽車類游戲玩玩。有哪些賽車類游戲可供選擇呢?
apt-cache search racing game
出來了一大堆結果。看看有沒有更多關于torcs這個游戲的信息。
apt-cache show torcs
看上去不錯。這個游戲是不是已經安裝了?最新版本是多少?它屬于哪一類軟件,universe還是main?
apt-cache policy torcs
apt-get install torcs
dpkg -L torcs|grep /usr/games/
這個命令的前面一部分顯示軟件包“torcs”安裝的所有文件(您自己試試看)。通過命令的第二部分,我們告訴系統只顯示前一部分的輸出結果中含有“/usr/games”的那些行。
apt-cache search torcs
apt-get clean
哦不,老媽叫我把機器上的所有游戲都刪掉。但是我想把配置文件保留下來,這樣待會我只要重裝一下就可以繼續玩了。
apt-get remove torcs
apt-get remove --purge torcs
額外的軟件包
deborphan和debfoster工具可以找出已經安裝在系統上的不會被用到的軟件包。
提高命令行方式下的工作效率
您可以通過定義別名(alias)來提高這些命令的輸入速度。例如,您可以在您的*~/.bashrc*文件中添加下列內容
alias acs='apt-cache search'
alias agu='sudo apt-get update'
alias agg='sudo apt-get upgrade'
alias agd='sudo apt-get dist-upgrade'
alias agi='sudo apt-get install'
alias agr='sudo apt-get remove'
或者使用前面介紹的aptitude命令,如“alias agi='sudo aptitude install'”。
為apt-get設置http代理
這是一種臨時的手段,如果您僅僅是暫時需要通過http代理使用apt-get,您可以使用這種方式。
在使用apt-get之前,在終端中輸入以下命令(根據您的實際情況替換yourproxyaddress和proxyport)。
export http_proxy=http://yourproxyaddress:proxyport
這種方法要用到/etc/apt/文件夾下的apt.conf文件。如果您希望apt-get(而不是其他應用程序)一直使用http代理,您可以使用這種方式。
注意: 某些情況下,系統安裝過程中沒有建立apt配置文件。下面的操作將視情況修改現有的配置文件或者新建配置文件。
sudo gedit /etc/apt/apt.conf
在您的apt.conf文件中加入下面這行(根據你的實際情況替換yourproxyaddress和proxyport)。
Acquire::http::Proxy "http://yourproxyaddress:proxyport";
這種方法會在您的主目錄下的.bashrc文件中添加兩行。如果您希望apt-get和其他應用程序如wget等都使用http代理,您可以使用這種方式。
gedit ~/.bashrc
在您的.bashrc文件末尾添加如下內容(根據你的實際情況替換yourproxyaddress和proxyport)。
http_proxy=http://yourproxyaddress:proxyport
export http_proxy