1. 程式人生 > 其它 >yum, rpm, apt-get, dpkg 等命令

yum, rpm, apt-get, dpkg 等命令

1.rpm(redhat package manager)

是基於Red hat的Linux Distribution的包管理系統(管理redhat, centos,Fedora等),可以通過rpm命令來安裝,解除安裝,升級.rpm包
相關命令:
rpm
-i : 安裝
-e : 解除安裝
-q : 查詢已安裝的軟體資訊
-a :查詢所有已經安裝的軟體包
-qa : 一般合併適用檢視所有的包
-V *.rpm : 顯示安裝過程
-h *.prm : 安裝過程顯示進度
--nodeps :不驗證軟體包的依賴
--force :強制安裝,即使覆蓋其他包的檔案也要安裝
-l : 顯示軟體包的檔案列表。常用 -ql
-f :查詢 檔案所屬於的軟體包 常用 -qf `which vim` 或 -qf /usr/bin/vim

2.yum(Yellow dog Updater, Modified):

是一個在Fedora和RedHat以及SUSE中的Shell前端軟體包管理器。基於RPM包管理,能夠從指定的伺服器自動下載RPM包並且安裝,可以自動處理依賴性關係,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。弊端是必須聯網,且源不出問題,yum的源相對脆弱,曾經出現yum的電源斷掉了需要修復半個月無法使用的現象。

-h  顯示幫助資訊
-y 對所有的提問都回答“yes”
-c 指定配置檔案
-q 安靜模式
-v 詳細模式
-t 檢查外部錯誤
-d 設定除錯等級(0-10)
-e 設定錯誤等級(0-10)
-R 設定yum處理一個命令的最大等待時間
-C 完全從快取中執行,而不去下載或者更新任何標頭檔案
install 安裝rpm軟體包
update 更新rpm軟體包
check-update 檢查是否有可用的更新rpm軟體包
remove 刪除指定的rpm軟體包
list 顯示軟體包的資訊
search 檢查軟體包的資訊
info 顯示指定的rpm軟體包的描述資訊和概要資訊
clean 清理yum過期的快取
shell 進入yum的shell提示符
resolvedep 顯示rpm軟體包的依賴關係
localinstall 安裝本地的rpm軟體包
localupdate 顯示本地rpm軟體包進行更新
deplist 顯示rpm軟體包的所有依賴關係

只下載包不安裝
方法一:
yum install yum-utils -y
--destdir 指定下載的軟體包存放路徑
--resolve 解決依賴關係並下載所需的包
舉例:
yumdownloader --destdir=/tmp --resolve httpd

方法二:
yum install yum-plugin-downloadonly

yum --downloadonly
yum命令的引數有很多,其中就有隻是下載而不需要安裝的命令,並且也會自動解決依賴;通常和 --downloaddir 引數一起使用。
# yum install --downloadonly --downloaddir=/tmp/ vsftpd

# yum reinstall --downloadonly --downloaddir=/tmp/ vsftpd
說明:如果該伺服器已經安裝了需要下載的軟體包,那麼使用 install下載就不行,可以使用reinstall下載。 放心(不會真的安裝和重新安裝,因為後面加了 --downloadonly,表明只是下載。

方法三:reposync
該命令更加強大,可以將遠端yum倉庫裡面的包全部下載到本地。這樣構建自己的yum倉庫,就不會遇到網路經常更新包而頭痛的事情了。 該命令也是來自與 yum-utils 裡面。
yum install yum-utils -y
-r 指定已經本地已經配置的 yum 倉庫的 repo源的名稱。
-p 指定下載的路徑
reposync -r epel -p /opt/local_epel

3.dpkg:dedeb包主要用於管理debian分支,包括debain,ubuntu等,一般通過dpkg(全稱:Debian package)命令

dpkg:
-i:安裝軟體包;(dpkg -X xxx.deb dirname :指定安裝路徑)
-r:刪除軟體包;
-P:刪除軟體包的同時刪除其配置檔案;
-s: 查詢軟體包的詳細資訊
-S:搜尋關鍵字所屬包的內容
-L:顯示於軟體包關聯的檔案(安裝後根據軟體名檢視);
-l:顯示已安裝軟體包列表;
--unpack:解開軟體包;
-c:顯示軟體包內檔案列表(安裝前根據deb包檢視);
--confiugre:配置軟體包。
打包deb包
dpkg -b MyDeb/ MyDeb-linux-amd64.deb

4.apt-get:

Debian Linux發行版中的APT軟體包管理工具。所有基於Debian的發行都使用這個包管理系統。deb包可以把一個應用的檔案包在一起,大體就如同Windows上的安裝檔案

apt-cache和apt-get是apt包的管理工具,他們根據/etc/apt/sources.list裡的軟體源地址列表搜尋目標軟體、並通過維護本地軟體包列表來安裝和解除安裝軟體。

apt-get install 安裝
remove 移除軟體但保留配置檔案
purge 移除軟體包及其配置檔案
update 跟新軟體包列表
upgrade 升級所有可升級的軟體包
dist-upgrade 升級軟體包時自動處理依賴關係
clean 刪除軟體包備份
apt-cache search 搜尋應用程式
apt-cache show 檢視軟體包資訊
apt-cache show depends package_name 檢視軟體包依賴關係