1. 程式人生 > >yum軟件管理器

yum軟件管理器

問題 架構 安裝環境 current 顏色 module ria cse 查看

yum軟件管理器

yum是一個強大的軟件包管理器,能夠自動解決安裝時rpm包之間的依賴關系。

一、使用yum管理軟件包

1、使用命令 yum help 查看使用方法

[root@majinhai ~]# yum help
已加載插件:fastestmirror, langpacks
Usage: yum [options] COMMAND
List of Commands:
check          檢查 RPM 數據庫問題
check-update   檢查是否有可用的軟件包更新
clean          刪除緩存數據
deplist        列出軟件包的依賴關系
distribution-synchronization 已同步軟件包到最新可用版本
downgrade      降級軟件包
erase          從系統中移除一個或多個軟件包
fs             Acts on the filesystem data of the host, mainly for removing docs/lanuages for minimal hosts.
fssnapshot     Creates filesystem snapshots, or lists/deletes current snapshots.
groups         顯示或使用、組信息
help           顯示用法提示
history        顯示或使用事務歷史
info           顯示關於軟件包或組的詳細信息
install        向系統中安裝一個或多個軟件包
langavailable  Check available languages
langinfo       List languages information
langinstall    Install appropriate language packs for a language
langlist       List installed languages
langremove     Remove installed language packs for a language
list           列出一個或一組軟件包
load-transaction 從文件名中加載一個已存事務
makecache      創建元數據緩存
provides       查找提供指定內容的軟件包
reinstall      覆蓋安裝軟件包
repo-pkgs      將一個源當作一個軟件包組,這樣我們就可以一次性安裝/移除全部軟件包。
repolist       顯示已配置的源
search         在軟件包詳細信息中搜索指定字符串
shell          運行交互式的 yum shell
swap           Simple way to swap packages, instead of using shell
update         更新系統中的一個或多個軟件包
update-minimal Works like upgrade, but goes to the ‘newest‘ package match which fixes a problem that affects your system
updateinfo     Acts on repository update information
upgrade        更新軟件包同時考慮軟件包取代關系
version        顯示機器和/或可用的源版本。

Options:
  -h, --help            顯示此幫助消息並退出
  -t, --tolerant        忽略錯誤
  -C, --cacheonly       完全從系統緩存運行,不升級緩存
  -c [config file], --config=[config file]
                        配置文件路徑
  -R [minutes], --randomwait=[minutes]
                        命令最長等待時間
  -d [debug level], --debuglevel=[debug level]
                        調試輸出級別
  --showduplicates      在 list/search 命令下,顯示源裏重復的條目
  -e [error level], --errorlevel=[error level]
                        錯誤輸出級別
  --rpmverbosity=[debug level name]
                        RPM 調試輸出級別
  -q, --quiet           靜默執行
  -v, --verbose         詳盡的操作過程
  -y, --assumeyes       回答全部問題為是
  --assumeno            回答全部問題為否
  --version             顯示 Yum 版本然後退出
  --installroot=[path]  設置安裝根目錄
  --enablerepo=[repo]   啟用一個或多個軟件源(支持通配符)
  --disablerepo=[repo]  禁用一個或多個軟件源(支持通配符)
  -x [package], --exclude=[package]
                        采用全名或通配符排除軟件包
  --disableexcludes=[repo]
                        禁止從主配置,從源或者從任何位置排除
  --disableincludes=[repo]
                        disable includepkgs for a repo or for everything
  --obsoletes           更新時處理軟件包取代關系
  --noplugins           禁用 Yum 插件
  --nogpgcheck          禁用 GPG 簽名檢查
  --disableplugin=[plugin]
                        禁用指定名稱的插件
  --enableplugin=[plugin]
                        啟用指定名稱的插件
  --skip-broken         忽略存在依賴關系問題的軟件包
  --color=COLOR         配置是否使用顏色
  --releasever=RELEASEVER
                        在 yum 配置和 repo 文件裏設置 $releasever 的值
  --downloadonly        僅下載而不更新
  --downloaddir=DLDIR   指定一個其他文件夾用於保存軟件包
  --setopt=SETOPTS      設置任意配置和源選項
  --bugfix              Include bugfix relevant packages, in updates
  --security            Include security relevant packages, in updates
  --advisory=ADVS, --advisories=ADVS
                        Include packages needed to fix the given advisory, in
                        updates
  --bzs=BZS             Include packages needed to fix the given BZ, in
                        updates
  --cves=CVES           Include packages needed to fix the given CVE, in
                        updates
  --sec-severity=SEVS, --secseverity=SEVS
                        Include security relevant packages matching the
                        severity, in updates

2、使用yum search ‘字符串’ 在軟件包詳細信息中搜索指定字符串
例如:yum search ifconfig 查看ifconfig屬於哪個包

[root@majinhai ~]# yum search ifconfig
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
===================================== 匹配:ifconfig ======================================
net-tools.x86_64 : Basic networking tools
[root@majinhai ~]# 

3、使用yum install ‘包名’ 向系統中安裝一個或多個軟件包
上面查到net-tools這個包裏面包含了ifconfig這個命令,接下來我們安裝這個包
輸入yum install -y net-tools ( -y, --assumeyes 回答全部問題為是)

[root@majinhai ~]# yum install -y net-tools
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
base                                                                | 3.6 kB  00:00:00     
extras                                                              | 3.4 kB  00:00:00     
updates                                                             | 3.4 kB  00:00:00     
正在解決依賴關系
--> 正在檢查事務
---> 軟件包 net-tools.x86_64.0.2.0-0.22.20131004git.el7 將被 安裝
--> 解決依賴關系完成
依賴關系解決
===========================================================================================
 Package            架構            版本                               源             大小
===========================================================================================
正在安裝:
 net-tools          x86_64          2.0-0.22.20131004git.el7           base          305 k

事務概要
===========================================================================================
安裝  1 軟件包
總下載量:305 k
安裝大小:917 k
Downloading packages:
No Presto metadata available for base
net-tools-2.0-0.22.20131004git.el7.x86_64.rpm                       | 305 kB  00:00:00     
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  正在安裝    : net-tools-2.0-0.22.20131004git.el7.x86_64                              1/1 
  驗證中      : net-tools-2.0-0.22.20131004git.el7.x86_64                              1/1 
已安裝:
  net-tools.x86_64 0:2.0-0.22.20131004git.el7                                              
完畢! 

4、yum info ‘包名’ info 顯示關於軟件包或組的詳細信息
查看net-tools包的詳細信息
鍵入 yum info net-tools

[root@majinhai ~]# yum info net-tools
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
可安裝的軟件包
名稱    :net-tools
架構    :x86_64
版本    :2.0
發布    :0.22.20131004git.el7
大小    :305 k
源    :base/7/x86_64
簡介    : Basic networking tools
網址    :http://sourceforge.net/projects/net-tools/
協議    : GPLv2+
描述    : The net-tools package contains basic networking tools,
         : including ifconfig, netstat, route, and others.
         : Most of them are obsolete. For replacement check iproute package.

5、yum provides ‘路徑’ provides 查找提供指定內容的軟件包。也就是說,查看指定目錄與那些軟件包有關系
鍵入yum provides /etc/yum.repos.d/

[root@majinhai ~]# yum provides /etc/yum.repos.d/
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
yum-3.4.3-158.el7.centos.noarch : RPM package installer/updater/manager
源    :base
匹配來源:
文件名    :/etc/yum.repos.d/
yum-3.4.3-158.el7.centos.noarch : RPM package installer/updater/manager
源    :@anaconda
匹配來源:
文件名    :/etc/yum.repos.d/

6、yum list ‘字符串’ list 列出一個或一組軟件包,查看已安裝的和可用的軟件包,
例如:查詢yum相關的軟件包
鍵入 yum list yum

[root@majinhai yum.repos.d]# yum list yum
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
已安裝的軟件包
yum.noarch                          3.4.3-158.el7.centos                          @anaconda

7、yum update 獲取並安裝更新版本的軟件包,包括依賴關系;通常情況下yum uptate嘗試保留原版本的配置文件,但在某些情況下,如果打包廠商認為舊版本的配置文件在更新後將無法使用,則會對其進行重命名;如果不加參數直接運行yum uptate 將會安裝所有更新。

二、使用yum管理組軟件

yum 另一個強大的功能就是具有組的概念,就是針對某個目的而一起安裝的相關軟件的集合。如;一次性安裝gnome桌面等

1、yum grouplist 命令將列出已安裝和可用的組的名稱。
命令yum grouplist

[root@majinhai ~]# yum grouplist
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
已安裝環境分組:
   GNOME 桌面
可用的環境分組:
   最小安裝
   基礎設施服務器
   計算節點
   文件及打印服務器
   基本網頁服務器
   虛擬化主機
   帶 GUI 的服務器
   KDE Plasma Workspaces
   開發及生成工作站
可用組:
   傳統 UNIX 兼容性
   兼容性程序庫
   圖形管理工具
   安全性工具
   開發工具
   控制臺互聯網工具
   智能卡支持
   科學記數法支持
   系統管理
   系統管理工具
完成

2、yum groupinstall ‘字符串’安裝某個指定的組
命令yum groupinstall ‘GNOME 桌面’ 安裝GNOME圖形化界面

[root@majinhai ~]# yum groupinstall ‘GNOME 桌面‘
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com

3、yum groupinfo ‘字符串’ 顯示該組的詳細信息。它將列出比選、默認和可選軟件包或組ID前面可能標有標記;
示例:列出GNOME 桌面 軟件組詳細信息

標記 含義
= 軟件包已安裝,以作為該組的一部分安裝
+ 軟件包未安裝,將在安裝或更新該組時安裝
- 軟件包未安裝,不會再安裝或更新該組時安裝
未標記 軟件包已安裝,但不是通過該組安裝的

yum groupinfo ’GNOME桌面‘

[root@majinhai ~]# yum groupinfo ‘GNOME 桌面‘
已加載插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
 * base: mirrors.aliyun.com
 * extras: mirrors.aliyun.com
 * updates: mirrors.aliyun.com
環境分組:GNOME 桌面
環境 ID:gnome-desktop-environment
 描述:GNOME 是一個非常直觀且用戶友好的桌面環境。
必備組:
   =base
   =core
   =desktop-debugging
   =dial-up
   =directory-client
   =fonts
   =gnome-desktop
   =guest-agents
   =guest-desktop-agents
   =input-methods
   =internet-browser
   =java-platform
   =multimedia
   =network-file-system-client
   =networkmanager-submodules
   =print-client
   =x11
可選組:
   +backup-client
   +gnome-apps
   +internet-applications
   +legacy-x
   +office-suite
   +remote-desktop-clients
   +smart-card

三、查看歷史事件及記錄

所有操作及安裝和刪除的操作記錄都會保存在/var/log/yum.log中。

1、查看/var/log/yum.log最後10行

tail -10 /var/log/yum.log

[root@majinhai ~]# tail -10 /var/log/yum.log 
Aug 04 16:21:19 Installed: 1:pnm2ppa-1.04-28.el7.x86_64
Aug 04 16:21:22 Installed: man-pages-3.53-5.el7.noarch
Aug 04 16:21:22 Installed: kpatch-0.4.0-3.el7.noarch
Aug 04 16:21:22 Installed: 10:qemu-guest-agent-2.8.0-2.el7.x86_64
Aug 04 16:21:22 Installed: 2:mtr-0.85-7.el7.x86_64
Aug 04 16:21:22 Installed: rfkill-0.4-9.el7.x86_64
Aug 04 16:21:22 Installed: net-tools-2.0-0.22.20131004git.el7.x86_64
Aug 04 16:21:22 Installed: words-3.0-22.el7.noarch
Aug 04 16:21:23 Installed: tcsh-6.18.01-15.el7.x86_64
Aug 04 20:55:16 Erased: net-tools-2.0-0.22.20131004git.el7.x86_64

2、yum history 查看安裝和刪除操作記錄的摘要
yum history

[root@majinhai ~]# yum history
已加載插件:fastestmirror, langpacks
ID     | 登錄用戶                 | 日期和時間       | 操作           | 變更數 
-------------------------------------------------------------------------------
     3 | root <root>              | 2018-08-04 20:55 | Erase          |    1   
     2 | root <root>              | 2018-08-04 16:16 | I, U           | 1068 EE
     1 | 系統 <空>                | 2018-08-03 17:10 | Install        |  307   
history list

3、yum history undo ’字符串‘ 撤銷事件。
例如:撤銷 ID為2的操作
yum history undo 2

[root@majinhai ~]# yum history undo 2

4、yum localinstall ’*rpm‘ 安裝本地RPM包。

[root@majinhai ~]# yum localinstall 123.rpm

yum軟件管理器