軟件包管理之yum
阿新 • • 發佈:2018-08-09
hist repos 關鍵字 信息 only inf page 靜默 priority
YUM(YellowdogUpdate Modifier)是rpm的前端程序,可解決軟件包相關依賴性,可在多個庫之間定位軟件包
yum倉庫(yum repository)
yum repository存儲了眾多rpm包,以及包的相關的元數據文件(放置於特定目錄repodata下)
yum源可以來源於多種文件服務器
- http://
- https://
- ftp://
- file://
註意:yum 源的路徑一定是 repodata目錄的父目錄
yum源配置
/etc/yum.conf:為所有倉庫提供公共配置
[main] cachedir=/var/cache/yum/$basearch/$releasever # 緩存文件,baseserach是基礎架構,如`x86_64`,releaserver是版本,如`7` keepcache=0 # 緩存源文件和安裝成功後的下載包是否保存 debuglevel=2 logfile=/var/log/yum.log # 日誌文件位置 exactarch=1 obsoletes=1 gpgcheck=1 # 是否進行gpg校驗,0為不校驗,1校驗 plugins=1 # 是否支持插件 installonly_limit=5 # 允許同時安裝幾個程序包 bugtracker_url=http://bugs.centos.org/set_project.php?project_id=23&ref=http://bugs.centos.org/bug_report_page.php?category=yumdistroverpkg=centos-release
/etc/yum.repos.d/*.repo:為倉庫的指向提供配置
倉庫指向的定義
[repositoryID] # 倉庫ID name=Some name for this repository # 倉庫名 baseurl=url://path/to/repository/ # 倉庫地址 enabled={1|0} # 是否啟用 gpgcheck={1|0} # 是否進行gpg校驗,默認值為1,即為校驗 gpgkey=URL # 如果gpgcheck值為1,要給定gpgkey地址 enablegroups={1|0} # 是否支持組 failovermethod={roundrobin|priority} # 倉庫的選取方法,roundrobin意為隨機挑選,默認;priority按順序訪問 cost= # 花費值,默認為1000
配置本地光盤 yum 源,阿裏雲 epel 源
[root@centos7 ~]# mkdir /media/cdrom [root@centos7 ~]# mount -r /dev/cdrom /media/cdrom [root@centos7 ~]# mkdir /etc/yum.repos.d/backup [root@centos7 ~]# mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/backup [root@centos7 ~]# vim /etc/yum.repos.d/centos7.repo [cdrom] name=cdrom for centos7 baseurl=file:///media/cdrom gpgcheck=0 enabled=1
[epel]
name=epel for centos7
baseurl=https://mirrors.aliyun.com/epel/7/x86_64/
gpgcheck=1
gpgkey=https://mirrors.aliyun.com/epel/RPM-GPG-KEY-EPEL-7
enabled=1
[root@centos7 ~]# yum repolist
yum命令
yum命令語法
yum [options] [command] [package ...]
yum命令行選項(命令行選項的優先級高於配置文件)
--nogpgcheck:禁止進行gpgcheck -y: 自動回答為“yes” -q:靜默模式 --disablerepo=repoidglob:臨時禁用此處指定的repo --enablerepo=repoidglob:臨時啟用此處指定的repo --noplugins:禁用所有插件
yum源列表
yum repolist [all|enabled|disabled] 顯示倉庫列表 yum grouplist [hidden] [groupwildcard] [...] 顯示包組 yum list {available|installed|updates} [glob_exp1] [...] 顯示包列表
yum安裝更新卸載
yum install package1 [package2] [...] 安裝包 yum install rpmfile1 [rpmfile2] [...] 安裝本地rpm包 yum groupinstall group1 [group2] [...] 安裝包組 yum reinstall package1 [package2] [...] 重新安裝包 yum check-update 檢查可用升級 yum update [package1] [package2] [...] 升級包 yum downgrade package1 [package2] [...] 降級包 yum update rpmfile1 [rpmfile2] [...] 升級本地rpm包 yum groupupdate group1 [group2] [...] 升級包組 yum remove | erase package1 [package2] [...] 卸載包 yum groupremove group1 [group2] [...] 卸載包組
yum查詢搜索
yum info [...] 查看程序包信息 yum provides | whatprovides feature1 [feature2] [...] 查看指定的特性(可以是某文件)是由哪個程序包所提供 yum search string1 [string2] [...] 以指定的關鍵字搜索程序包名及summary信息 yum deplistpackage1 [package2] [...] 查看指定包所依賴的capabilities
yum緩存
yum makecache 構建緩存 yum clean all 清除緩存(不徹底的話 rm -rf /var/cache/yum)
yum歷史
yum history 顯示yum操作歷史,是按照/var/log/yum.log進行的查找 yum history info 6 查看第六條信息 yum history undo 6 撤銷第六步,如果第六步是安裝,則執行此命令,將刪除第六步所安裝的程序,。如果第六步是卸載,那麽執行此命令,則進行安裝卸載掉的程序 yum history redo 6 重做第六步
軟件包管理之yum