Home >> Blog >> 20 個 Linux 管理工具 YUM(Yellowdog Updater,已修改)命令

20 個 Linux 管理工具 YUM(Yellowdog Updater,已修改)命令

在本文中,我們將學習如何使用RedHat開發的YUM(Yellowdog Updater Modified)工具在 Linux 系統上安裝、更新、刪除、查找包、管理包和存儲庫。

本文中顯示的示例命令在我們的RHEL 8 服務器上進行了實際測試,您可以將這些材料用於學習目的、RHEL 認證,或者只是為了探索安裝新軟件包和保持系統最新的方法。

這篇文章的基本要求是,你必須對命令有基本的了解,並且有一個可以運行的 Linux 操作系統,你可以在其中探索和練習下面列出的所有命令。

什麼是百勝?

YUM(Yellowdog Updater Modified)是一個開源命令行以及基於圖形的包管理工具,用於基於RPM(RedHat 包管理器)的 Linux 系統。

它允許用戶和系統管理員輕鬆地在系統上安裝、更新、刪除或搜索軟件包。它是由Seth Vidal在GPL(通用公共許可證)下作為開源開發和發布的,這意味著任何人都可以下載和訪問代碼以修復錯誤和開發定制包。

YUM使用許多第三方存儲庫通過解決它們的依賴問題來自動安裝包。

更新:yum命令被dnf 命令取代,這是 yum 的下一代版本,在大多數基於 RPM 的較新發行版中被認為是 YUM 的替代品。

1. 使用 YUM 安裝包

要安裝一個名為Firefox的包,只需運行以下命令,它將自動查找並安裝 Firefox 所需的所有依賴項。

# yum install firefox
Loaded plugins: fastestmirror
Dependencies Resolved

========================================================
Package Arch Version Repository Size
===================================================
Updating:
firefox i686 10.0.6-1.el6.centos updates 20 M
Updating for dependencies:
xulrunner i686 10.0.6-1.el6.centos updates 12 M

Transaction Summary
===============================================
Install 0 Package(s)
Upgrade 2 Package(s)

Total download size: 32 M
Is this ok [y/N]: y
Downloading Packages:
(1/2): firefox-10.0.6-1.el6.centos.i686.rpm | 20 MB 01:10
(2/2): xulrunner-10.0.6-1.el6.centos.i686.rpm | 12 MB 00:52
-------------------------------------------------------
Total 63 kB/s | 32 MB 02:04

Updated:
firefox.i686 0:10.0.6-1.el6.centos

Dependency Updated:
xulrunner.i686 0:10.0.6-1.el6.centos

Complete!

在您的系統上安裝任何軟件包之前,上述命令將要求確認。如果您想在不要求任何確認的情況下自動安裝軟件包,請使用-y如下示例所示的選項。

# yum -y install firefox

2. 用 YUM 刪除一個包

要完全刪除包含所有依賴項的包,只需運行以下命令,如下所示。

# yum remove firefox
Loaded plugins: fastestmirror
Setting up Remove Process
Resolving Dependencies
--> Running transaction check
---> Package firefox.i686 0:10.0.6-1.el6.centos set to be erased
--> Finished Dependency Resolution

Dependencies Resolved

=========================================================
Package Arch Version Repository Size
==========================================================
Removing:
firefox i686 10.0.6-1.el6.centos @updates 23 M

同樣,上述命令會在刪除包之前要求確認。要禁用確認提示,只需添加選項-y,如下所示。

# yum -y remove firefox

3. 使用 YUM 更新包

假設您有一個過期版本的MySQL包,並且您想將其更新到最新的穩定版本。只需運行以下命令,它將自動解決所有依賴項問題並安裝它們。

# yum update mysql
Loaded plugins: fastestmirror
Dependencies Resolved

=========================================================
Package Arch Version Repository Size
=========================================================
Updating:
vsftpd i386 2.0.5-24.el5_8.1 updates 144 k

Transaction Summary
========================================================
Install 0 Package(s)
Upgrade 1 Package(s)

Total size: 144 k
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : vsftpd 1/2
Cleanup : vsftpd 2/2

Updated:
vsftpd.i386 0:2.0.5-24.el5_8.1

Complete!

4. 使用 YUM 列出一個包

使用列表功能搜索具有名稱的特定包。例如,要搜索名為OpenSSH的包,請使用該命令。

# yum list openssh
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.neu.edu.cn
* epel: mirror.neu.edu.cn
* extras: mirror.neu.edu.cn
* rpmforge: mirror.nl.leaseweb.net
* updates: mirror.nus.edu.sg
Installed Packages
openssh.i386 4.3p2-72.el5_6.3 installed
Available Packages 4.3p2-82.el5


為了使您的搜索更準確,請在您知道的情況下使用它們的版本定義包名稱。例如,要搜索軟件包的特定版本OpenSSH-4.3p2,請使用該命令。

# yum list openssh-4.3p2

[您可能還喜歡:如何保護和強化 OpenSSH 服務器]

5. 使用 YUM 搜索包

如果您不記得包的確切名稱,請使用搜索功能搜索所有可用的包以匹配您指定的包的名稱。例如,搜索與該詞匹配的所有包。

# yum search vsftpd
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.neu.edu.cn
* epel: mirror.neu.edu.cn
* extras: mirror.neu.edu.cn
* rpmforge: mirror.nl.leaseweb.net
* updates: ftp.iitm.ac.in
=============== Matched: vsftpd ========
ccze.i386 : A robust log colorizer
pure-ftpd-selinux.i386 : SELinux support for Pure-FTPD
vsftpd.i386 : vsftpd - Very Secure Ftp Daemon

6. 使用 YUM 獲取有關包的信息

假設您想在安裝軟件包之前了解有關軟件包的信息。要獲取有關軟件包的信息,只需發出以下命令。

# yum info firefox
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.neu.edu.cn
* epel: mirror.neu.edu.cn
* extras: mirror.neu.edu.cn
* rpmforge: mirror.nl.leaseweb.net
* updates: ftp.iitm.ac.in
Available Packages
Name : firefox
Arch : i386
Version : 10.0.6
Release : 1.el5.centos
Size : 20 M
Repo : updates
Summary : Mozilla Firefox Web browser
URL : http://www.mozilla.org/projects/firefox/
License : MPLv1.1 or GPLv2+ or LGPLv2+
Description: Mozilla Firefox is an open-source web browser, designed for standards
: compliance, performance and portability.

7. 使用 YUM 列出所有可用的包

要列出 Yum 數據庫中所有可用的軟件包,請使用以下命令。

# yum list | less

8. 列出所有使用 YUM 安裝的包

要列出系統上所有已安裝的軟件包,只需發出以下命令,它將顯示所有已安裝的軟件包。

# yum list installed | less

9. Yum 提供功能

yum提供的函數用於查找特定文件屬於哪個包。例如,如果您想知道包含/etc/httpd/conf/httpd.conf的包的名稱。

# yum provides /etc/httpd/conf/httpd.conf
Loaded plugins: fastestmirror
httpd-2.2.3-63.el5.centos.i386 : Apache HTTP Server
Repo : base
Matched from:
Filename : /etc/httpd/conf/httpd.conf

httpd-2.2.3-63.el5.centos.1.i386 : Apache HTTP Server
Repo : updates
Matched from:
Filename : /etc/httpd/conf/httpd.conf

httpd-2.2.3-65.el5.centos.i386 : Apache HTTP Server
Repo : updates
Matched from:
Filename : /etc/httpd/conf/httpd.conf

httpd-2.2.3-53.el5.centos.1.i386 : Apache HTTP Server
Repo : installed
Matched from:
Other : Provides-match: /etc/httpd/conf/httpd.conf

10. 使用 Yum 檢查可用更新

要查找系統上已安裝的軟件包有多少可用更新,請檢查以使用以下命令。

TEXT

11. 使用 Yum 更新系統

要使用所有安全和二進制包更新使您的系統保持最新,請運行以下命令。它將為您的系統安裝所有最新的補丁和安全更新。

TEXT

12.列出所有可用的組包

在 Linux 中,許多包被捆綁到一個特定的組中。您可以安裝一個特定的組,而不是使用 yum 安裝單個軟件包,該組將安裝屬於該組的所有相關軟件包。例如,要列出所有可用的組,只需發出以下命令。

TEXT

13.安裝組包

要安裝特定的包組,我們使用選項作為groupinstall。例如,要安裝“ MySQL 數據庫”,只需執行以下命令。

TEXT

要更新任何現有的已安裝組包,只需運行以下命令,如下所示。

14.更新組包

要更新任何現有的已安裝組包,只需運行以下命令,如下所示。

# yum groupupdate 'DNS Name Server'

Dependencies Resolved
===================================================================
Package Arch Version Repository Size
====================================================================
Updating:
bind i386 30:9.3.6-20.P1.el5_8.2 updates 981 k
bind-chroot i386 30:9.3.6-20.P1.el5_8.2 updates 47 k
Updating for dependencies:
bind-libs i386 30:9.3.6-20.P1.el5_8.2 updates 864 k
bind-utils i386 30:9.3.6-20.P1.el5_8.2 updates 174 k

Transaction Summary
==================================================================
Install 0 Package(s)
Upgrade 4 Package(s)

Total size: 2.0 M
Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Updating : bind-libs 1/8
Updating : bind 2/8
Updating : bind-chroot 3/8
Updating : bind-utils 4/8
Cleanup : bind 5/8
Cleanup : bind-chroot 6/8
Cleanup : bind-utils 7/8
Cleanup : bind-libs 8/8

Updated: bind.i386 30:9.3.6-20.P1.el5_8.2 bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Dependency Updated:
bind-libs.i386 30:9.3.6-20.P1.el5_8.2 bind-utils.i386 30:9.3.6-20.P1.el5_8.2

Complete!

15.刪除組包

要從系統中刪除或刪除任何現有的已安裝組,只需使用以下命令。

# yum groupremove 'DNS Name Server'

Dependencies Resolved

===============================================================
Package Arch Version Repository Size
===============================================================
Removing:
bind i386 30:9.3.6-20.P1.el5_8.2 installed 2.1 M
bind-chroot i386 30:9.3.6-20.P1.el5_8.2 installed 0.0

Transaction Summary
================================================================
Remove 2 Package(s)
Reinstall 0 Package(s)
Downgrade 0 Package(s)

Is this ok [y/N]: y
Downloading Packages:
Running rpm_check_debug
Running Transaction Test
Finished Transaction Test
Transaction Test Succeeded
Running Transaction
Erasing : bind
1/2
warning: /etc/sysconfig/named saved as /etc/sysconfig/named.rpmsave
Erasing : bind-chroot 2/2

Removed:
bind.i386 30:9.3.6-20.P1.el5_8.2 bind-chroot.i386 30:9.3.6-20.P1.el5_8.2

Complete!

16. 列出啟用的 Yum 存儲庫

要列出系統中所有啟用的 Yum 存儲庫,請使用以下選項。

# yum repolist

repo id repo name status
base CentOS-5 - Base enabled: 2,725
epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783
extras CentOS-5 - Extras enabled: 282
mod-pagespeed mod-pagespeed enabled: 1
rpmforge RHEL 5 - RPMforge.net - dag enabled: 11,290
updates CentOS-5 - Updates enabled: 743
repolist: 20,824

16. 列出所有啟用和禁用的 Yum 存儲庫

以下命令將顯示系統上所有啟用和禁用的 yum 存儲庫。

# yum repolist all

repo id repo name
status
C5.0-base CentOS-5.0 - Base disabled
C5.0-centosplus CentOS-5.0 - Plus disabled
C5.0-extras CentOS-5.0 - Extras disabled
base CentOS-5 - Base enabled: 2,725
epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783
extras CentOS-5 - Extras enabled: 282
repolist: 20,824

以下命令將顯示系統上所有啟用和禁用的 yum 存儲庫。

要從特定啟用或禁用的存儲庫安裝特定軟件包,您必須--enablerepo在 yum 命令中使用一個選項。例如要安裝 PhpMyAdmin包,只需執行命令。

# yum --enablerepo=epel install phpmyadmin

Dependencies Resolved
=======================================================
Package Arch Version Repository Size
======================================================
Installing:
phpMyAdmin noarch 3.5.1-1.el6 epel 4.2 M

Transaction Summary
=======================================================
Install 1 Package(s)

Total download size: 4.2 M
Installed size: 17 M
Is this ok [y/N]: y
Downloading Packages:
phpMyAdmin-3.5.1-1.el6.noarch.rpm | 4.2 MB 00:25
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing : phpMyAdmin-3.5.1-1.el6.noarch 1/1
Verifying : phpMyAdmin-3.5.1-1.el6.noarch 1/1

Installed:
phpMyAdmin.noarch 0:3.5.1-1.el6

Complete!

18. 交互式 Yum Shell

Yum 實用程序提供了一個自定義 shell,您可以在其中執行多個命令。

# yum shell
Loaded plugins: fastestmirror
Setting up Yum Shell
> update httpd
Loading mirror speeds from cached hostfile
* base: mirrors.sin3.sg.voxel.net
* epel: ftp.riken.jp
* extras: mirrors.sin3.sg.voxel.net
* updates: mirrors.sin3.sg.voxel.net
Setting up Update Process
>

19.清理百勝緩存

默認情況下,yum 將所有已啟用存儲庫的軟件包數據保存在/var/cache/yum/與每個子目錄中,要從已啟用的存儲庫中清除所有緩存文件,您需要定期運行以下命令來清理所有緩存並使確保沒有使用不必要的空間。我們不想給出以下命令的輸出,因為我們喜歡保持緩存數據不變。

# yum clean all

20.查看百勝的歷史

要查看 yum 命令過去的所有交易,只需使用以下命令即可。

# yum history

Loaded plugins: fastestmirror
ID | Login user | Date and time | Action(s) | Altered --------------------------------------------
10 | root | 2012-08-11 15:19 | Install | 3
9 | root | 2012-08-11 15:11 | Install | 1
8 | root | 2012-08-11 15:10 | Erase | 1 EE
7 | root | 2012-08-10 17:44 | Install | 1
6 | root | 2012-08-10 12:19 | Install | 2
5 | root | 2012-08-10 12:14 | Install | 3
4 | root | 2012-08-10 12:12 | I, U | 13 E<
3 | root | 2012-08-09 13:01 | Install | 1 >
2 | root | 2012-08-08 20:13 | I, U | 292 EE
1 | System | 2012-08-08 17:15 | Install | 560
history list

我們試圖用他們的例子來涵蓋所有基本的 yum 命令。如果有任何與 yum 命令相關的內容可能遺漏了。請通過我們的評論框更新我們。因此,我們會根據收到的反饋不斷更新相同的內容。

centos

教程

and

新聞

新聞追蹤 行情自選 鉅亨商城

我的購買 新聞追蹤 行情自選

centos noarch rpm

message

media

localhost