centos使用--rpm和yum的關系以及基本用法


1 RPM包

RPM是RedHat Package Manager(RedHat軟件包管理工具)類似Windows里面的“添加/刪除程序”
rpm 執行安裝包
二進制包(Binary)以及源代碼包(Source)兩種。二進制包可以直接安裝在計算機中,而源代碼包將會由RPM自動編譯、安裝。源代碼包經常以src.rpm作為后綴名。

#安裝和升級選項
Install/Upgrade/Erase options:
-i, --install                     安裝
-v, --verbose                     提供更詳細的輸出信息
-h, --hash                        print hash marks as package installs (good with -v)
-e, --erase                       刪除包
-U, --upgrade=<packagefile>+      升級包
--replacepkge                     無論軟件包是否已被安裝,都強行安裝軟件包
--test                            安裝測試,並不實際安裝
--nodeps                          忽略軟件包的依賴關系強行安裝
--force                           忽略軟件包及文件的沖突

#查詢選項 (和-q or --query一起使用):
-a, --all                         query/verify all packages
-p, --package                     query/verify a package file
-l, --list                        list files in package
-d, --docfiles                    list all documentation files
-f, --file                        query/verify package(s) owning file

#常用命令組合:
-ivh:安裝顯示安裝進度--install--verbose--hash
-Uvh:升級軟件包--Update;
-qpl:列出RPM軟件包內的文件信息[Query Package list];
-qpi:列出RPM軟件包的描述信息[Query Package install package(s)];
-qf:查找指定文件屬於哪個RPM軟件包[Query File];
-Va:校驗所有的RPM軟件包,查找丟失的文件[View Lost];
-e:刪除包

#使用舉例

#安裝和升級
#rpm -ivh file.rpm  #[安裝新的rpm]--install--verbose--hash
#rpm -Uvh file.rpm    #[升級一個rpm]--upgrade
#rpm -e file.rpm      #[刪除一個rpm包]--erase
#rpm -ivh --relocate /=/opt/gaim gaim-1.3.0-1.fc4.i386.rpm    //指定安裝目錄
#rpm -ivh --test gaim-1.3.0-1.fc4.i386.rpm    //用來檢查依賴關系;並不是真正的安裝;

#查詢
#rpm -q samba //查詢程序是否安裝
#rpm -qa | grep httpd      #[搜索指定rpm包是否安裝]--all搜索*httpd*
#rpm -ql httpd         #[搜索rpm包]--list所有文件安裝目錄
#rpm -qc  nginx                 # 查看配置文件位置
#rpm -qpi Linux-1.4-6.i368.rpm #[查看rpm包]--query--package--install package信息
#rpm -qpf Linux-1.4-6.i368.rpm #[查看rpm包]--file
#rpm -qpR file.rpm       #[查看包]依賴關系

2 用YUM安裝刪除軟件

Yum(全稱為 Yellow dog Updater, Modified)是一個在Fedora中的Shell前端軟件包管理器。基於RPM包管理,能夠從指定的服務器自動下載RPM包並且安裝,可以自動處理 依賴性關系,並且一次安裝所有依賴的軟體包,無須繁瑣地一次次下載、安裝。

yum會查詢數據庫,有無這一軟件包,如果有,則檢查其依賴沖突關系,如果沒有依賴沖突,下載安裝;如果有,則會給出提示,詢問是否要同時安裝依賴,或刪除沖突的包,你可以自己作出判斷。

yum的命令形式一般是如下:yum [options] [command] [package ...]
其中的[options]是可選的,選項包括-h(幫助),-y(當安裝過程提示選擇全部為"yes"),-q(不顯示安裝的過程)等等。[command]為所要進行的操作,[package ...]是操作的對象。

# 1.使用yum安裝軟件
#yum install  軟件名            //用YUM安裝指定軟件包
#yum remove  軟件名           //用YUM刪除指定軟件包
#yum localinstall RPM包文件   //使用YUM方式安裝本地RPM包
#yum groupinstall <分組名稱>   //安裝指定分組內所有軟件
#yum groupremove packagegroup <分組名稱> //刪除指定分組內所有軟件
# 注意:install、localinstall的區別:使用install時,指定的軟件包將從YUM服務器下載並安裝,而localinstall指定的軟件使用RPM包安裝,而依賴關系所需的包在YUM服務器下載安裝。

# 2.用YUM查詢軟件信息
#yum check-update          //列出所有可更新的軟件清單
#yum -y update <軟件名>    //升級指定的軟件包
#yum upgrade //大規模的版本升級,與yum update不同的是,連舊的淘汰的包也升級
#yum groupupdate  <分組名稱> //更新指定軟件組中的軟件包
#yum info   軟件名         //顯示指定軟件包相關信息
#yum info updates           //顯示所有可以更新的軟件包的信息
#yum info installed          //顯示所有已經安裝的軟件包的信息
#yum info extras       //顯示所有已經安裝但不在YUM 倉庫內的軟件包信息
#yum groupinfo <分組名稱> //顯示指定分組的信息
#yum list                   //列出所有已經安裝和可以安裝的軟件
#yum list  <regex>    //列出資源庫中與正則表達式匹配的可以安裝或更新以及已經安裝的rpm包
#yum list  軟件名         //列出指定的軟件包的安裝情況
#yum list  available         //列出資源庫中所有可以安裝的rpm包
#yum list  available <regex> //列出資源庫中與正則表達式匹配的所有可以安裝的rpm包
#yum listinstalled          //列出所有已經安裝的軟件包
#yum list  installed <regex>  //列出資源庫中與正則表達式匹配的所有已經安裝的rpm包
#yum list extras          //列出所有已經安裝但不在YUM 倉庫內的軟件包
#yum list extras <regex>//列出與正則表達式匹配的已安裝的但不包含在資源庫中的rpm包
#yum grouplist              //列出所有YUM服務器定義的分組
#yum search <關鍵字>      //在YUM源中查找指定關鍵字
#yum search <regex>       //檢測所有可用的軟件的名稱、描述、概述和已列出的維護者,查找與正則表達式匹配的值
#yum list  recent           //列出最近被添加到資源庫中的軟件包
#yum provides <regex>      //檢測軟件包中包含的文件以及軟件提供的功能,查找與正則表達式匹配的值

#3.YUM緩存
# yum會把下載的軟件包和header存儲在cache中,而不會自動刪除。
#yum clean packages     //清除緩存目錄(/var/cache/yum)下的軟件包
#yum clean headers      //清除緩存目錄(/var/cache/yum)下的 headers
#yum clean oldheaders   //清除緩存目錄(/var/cache/yum)下舊的 headers
#yum clean all     //清除緩存目錄(/var/cache/yum)下的軟件包及舊的headers
#yum clean     //同上,清除緩存目錄(/var/cache/yum)下的軟件包及舊的headers
#yum makecache //生成緩存

# 清除yum機制的本地緩存
# 目的:避免更換源后出現HTTP ERORR 404-Not Found Trying 
# 生成yum機制的本地緩存
# 目的:將服務器上的軟件包信息在本地緩存,以提高搜索安裝軟件的速度。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM