1. 程式人生 > >yum和apt-get的區別

yum和apt-get的區別

rpm包和deb包是兩種Linux系統下最常見的安裝包格式,在安裝一些軟體或服務的時候免不了要和它們打交道。rpm包主要應用在RedHat系列包括 Fedora等發行版的Linux系統上,deb包主要應用於Debian系列包括現在比較流行的Ubuntu等發行版上。
我們知道如果要安裝現成的這兩種包的話,安裝rpm包的命令是“rpm -引數”,安裝deb包的命令是“dpkg -引數”。而Linux系統很方便和人性化的一點就是很多軟體或服務根本就不用我們去下載,直接使用相應的命令就可以管理了,可能這就是傳說中的 “雲”的概念。

yum可以用於運作rpm包,例如在Fedora系統上對某個軟體的管理:
安裝:yum install <package_name>
解除安裝:yum remove <package_name>
更新:yum update <package_name>
apt-get可以用於運作deb包,例如在

Ubuntu系統上對某個軟體的管理:
安裝:apt-get install <package_name>
解除安裝:apt-get remove <package_name>
更新:apt-get update <package_name>

一、redhat安裝yum
在Linux Redhat 9.0使用YUM伺服器來管理rpm套件升級方法
由於 Redhat 公司己經停止了對Linux Redhat 9.0的維護,
所以我們這些使用者必須找到另一個方法去升級套件,
這時使用YUM伺服器來管理rpm套件升級, 因為它可以避免套件間相依性而安裝失敗.
要連線YUM
伺服器
必須要先要裝下列程式:
yum-2.0.4-1.rh.fr.i386.rpm
此檔案可到 http://ayo.freshrpms.net/ 網站下載,
此一個檔案,之後到"終端機"內打入su再輸你root的密碼,
進入root後,再打入下列指令:
rpm -ivh yum-2.0.4-1.rh.fr.i386.rpm
安裝完此程式後, 就可以使用下列指令來使用YUM伺服器來管理rpm套件升級.
yum update 升級你的RPM套件, 此指令等同於apt-get update 加上apt-get install 的功能.
yum install 安裝新的RPM套件.
yum clean 清除己經完成安裝而不必要的暫存程式.
yum remove 移除你的RPM套件.
二、yum的使用
1. Redhat的yum高階的包管理
1).用YUM安裝刪除軟體
裝了系統新增刪除軟體是常事,yum同樣可以勝任這一任務,只要軟體是rpm安裝的。
安裝的命令是yum install xxx,yum會查詢資料庫,有無這一軟體包,如果有,則檢查其依賴衝突關係,如果沒有依賴衝突,那麼最好,下載安裝;如果有,則會給出提示,詢問是否要同時安裝依賴,或刪除衝突的包,你可以自己作出判斷。
刪除的命令是,yum remove xxx,同安裝一樣,yum也會查詢資料庫,給出解決依賴關係的提示。
2).用YUM安裝軟體包
命令:yum install <package_name>
3).用YUM刪除軟體包
命令:yum remove <package_name>
用YUM查詢軟體資訊,我們常會碰到這樣的情況,想要安裝一個軟體,只知道它和某方面有關,但又不能確切知道它的名字。這時yum的查詢功能就起作用了。你可以用 yum search keyword這樣的命令來進行搜尋,比如我們要則安裝一個Instant Messenger,但又不知到底有哪些,這時不妨用 yum search messenger這樣的指令進行搜尋,yum會搜尋所有可用rpm的描述,列出所有描述中和messeger有關的rpm包,於是我們可能得到 gaim,kopete等等,並從中選擇。有時我們還會碰到安裝了一個包,但又不知道其用途,我們可以用yum info packagename這個指令來獲取資訊。
4).使用YUM查詢軟體包
命令:yum search <keyword>
5).列出所有可安裝的軟體包
命令:yum list
6).列出所有可更新的軟體包
命令:yum list updates
7).列出所有已安裝的軟體包
命令:yum list installed
8).列出所有已安裝但不在 Yum Repository 內的軟體包
命令:yum list extras
9).列出所指定的軟體包
命令:yum list <package_name>

三、apt-get 的使用
1.Ubuntu中的高階包管理方法apt-get
除了apt的便捷以外,apt-get的一大好處是極大地減小了所謂依賴關係惡夢的發生機率(dependency hell),即使是陷入了dependency hell,apt-get也提供了很好的援助手段,幫你逃出魔窟。
通常 apt-get 都和網上的壓縮包一起出沒,從網際網路上下載或是安裝。全世界有超過200個 debian官方映象,還有繁多的非官方軟體包提供網站。你所使用的基於Debian的釋出版不同,你所使用的軟體倉庫可能需要手工選擇或是可以自動設定。你能從Debian官方網站得到完整的映象列表。而很多非官方網站提供各種特殊用途的非官方軟體包,當然,使用非官方軟體包會有更多風險了。
軟體包都是為某一個基本的Debian釋出版所準備的(從unstable 到stable),並且劃分到不同類別中(如 main contrib nonfree),這個是依據 debian 自由軟體綱領而劃分的(也就是常說的dfsg),因為美國限制加密軟體出口,還有一個non-us類別。
2.常用的APT命令引數
apt-cache search package 搜尋包
apt-cache show package 獲取包的相關資訊,如說明、大小、版本等
sudo apt-get install package 安裝包
sudo apt-get install package -- reinstall 重新安裝包
sudo apt-get -f install 修復安裝"-f = --fix-missing"
sudo apt-get remove package 刪除包
sudo apt-get remove package -- purge 刪除包,包括刪除配置檔案等
sudo apt-get update 更新源
sudo apt-get upgrade 更新已安裝的包
sudo apt-get dist-upgrade 升級系統
sudo apt-get dselect-upgrade 使用 dselect 升級
apt-cache depends package 瞭解使用依賴
apt-cache rdepends package 是檢視該包被哪些包依賴
sudo apt-get build-dep package 安裝相關的編譯環境
apt-get source package 下載該包的
原始碼

sudo apt-get clean && sudo apt-get autoclean 清理無用的包
sudo apt-get check 檢查是否有損壞的依賴