在本文中,分享了20个常用的yum命令示例,涵盖了所有常用的yum命令。我们将学习如何使用RedHat开发的YUM(Yellowdog Updater Modified)工具在Linux系统上安装,更新,删除,查找软件包,管理软件包和存储库。
1.什么是Yum
YUM(Yellowdog Updater Modified)是一个开源命令行,也是基于RPM(RedHat Package Manager)的Linux系统的基于图形的软件包管理工具。它使用户和系统管理员可以轻松地在系统上安装,更新,删除或搜索软件包。它是由Seth Vidal在GPL(通用公共许可)下作为开放源代码开发和发布的,这意味着任何人都可以被允许下载和访问代码以修复错误并开发定制的程序包。YUM使用许多第三方存储库来解决软件包的依赖关系问题,从而自动安装软件包。
1.使用YUM安装软件包
要安装名为Firefox 14的软件包,只需运行以下命令,它将自动查找并安装Firefox所需的所有依赖项。
# yum install firefoxLoaded plugins: fastestmirrorDependencies Resolved================================================================================================ Package Arch Version Repository Size ================================================================================================Updating:firefox i686 10.0.6-1.el6.centos updates 20 MUpdating for dependencies: xulrunner i686 10.0.6-1.el6.centos updates 12 MTransaction Summary================================================================================================Install 0 Package(s)Upgrade 2 Package(s)Total download size: 32 MIs this ok [y/N]: yDownloading 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:04Updated: firefox.i686 0:10.0.6-1.el6.centosDependency Updated: xulrunner.i686 0:10.0.6-1.el6.centosComplete!
在您的系统上安装任何软件包之前,以上命令将要求确认。如果要自动安装软件包而不要求任何确认,请使用选项-y,如以下示例所示。
yum -y install firefox
2.用YUM卸载软件包
要完全删除所有依赖项的软件包,只需运行以下命令,如下所示。
# yum remove firefoxLoaded plugins: fastestmirrorSetting up Remove ProcessResolving Dependencies--> Running transaction check---> Package firefox.i686 0:10.0.6-1.el6.centos set to be erased--> Finished Dependency ResolutionDependencies Resolved==================================================================================================== Package Arch Version Repository Size ====================================================================================================Removing: firefox i686 10.0.6-1.el6.centos @updates 23 MTransaction Summary====================================================================================================Remove 1 Package(s)Reinstall 0 Package(s)Downgrade 0 Package(s)Is this ok [y/N]: yDownloading Packages:Running rpm_check_debugRunning Transaction TestTransaction Test SucceededRunning Transaction Erasing : firefox-10.0.6-1.el6.centos.i686 1/1Removed: firefox.i686 0:10.0.6-1.el6.centosComplete!
上面的命令将在删除软件包之前要求确认。要禁用确认提示,只需添加选项-y,如下所示。
# yum -y remove firefox
3.使用YUM更新软件包
假设您的MySQL软件包版本已过时,并且想要将其更新为最新的稳定版本。只需运行以下命令,它将自动解决所有依赖性问题并安装它们。
# yum update mysqlLoaded plugins: fastestmirrorDependencies Resolved============================================================================================================ Package Arch Version Repository Size============================================================================================================Updating: vsftpd i386 2.0.5-24.el5_8.1 updates 144 kTransaction Summary============================================================================================================Install 0 Package(s)Upgrade 1 Package(s)Total size: 144 kIs this ok [y/N]: yDownloading Packages:Running rpm_check_debugRunning Transaction TestFinished Transaction TestTransaction Test SucceededRunning Transaction Updating : vsftpd 1/2 Cleanup : vsftpd 2/2Updated: vsftpd.i386 0:2.0.5-24.el5_8.1Complete!
4.使用YUM列出软件包
使用列表功能搜索带有名称的特定软件包。例如,要搜索名为openssh的软件包,请使用命令。
# yum list opensshLoaded plugins: fastestmirrorLoading 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.sgInstalled Packagesopenssh.i386 4.3p2-72.el5_6.3 installedAvailable Packages 4.3p2-82.el5
为了使您的搜索更加准确,请在可能的情况下使用其版本定义软件包名称。例如,要搜索软件包的特定版本openssh-4.3p2,请使用命令。
#yum list openssh-4.3p2
5.使用YUM搜索软件包
如果您不记得软件包的确切名称,请使用搜索功能搜索所有可用的软件包以匹配您指定的软件包的名称。例如,搜索与单词匹配的所有软件包。
# yum search vsftpdLoaded plugins: fastestmirrorLoading 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 colorizerpure-ftpd-selinux.i386 : SELinux support for Pure-FTPDvsftpd.i386 : vsftpd - Very Secure Ftp Daemon
6.使用YUM获取包装信息
假设您想在安装软件包之前了解其信息。要获取软件包的信息,只需发出以下命令。
# yum info firefoxLoaded plugins: fastestmirrorLoading 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.inAvailable PackagesName : firefoxArch : i386Version : 10.0.6Release : 1.el5.centosSize : 20 MRepo : updatesSummary : Mozilla Firefox Web browserURL : 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提供的功能用于查找特定文件所属的软件包。例如,如果您想知道具有/etc/httpd/conf/httpd.conf的软件包的名称。
# yum provides /etc/httpd/conf/httpd.confLoaded plugins: fastestmirrorhttpd-2.2.3-63.el5.centos.i386 : Apache HTTP ServerRepo : baseMatched from:Filename : /etc/httpd/conf/httpd.confhttpd-2.2.3-63.el5.centos.1.i386 : Apache HTTP ServerRepo : updatesMatched from:Filename : /etc/httpd/conf/httpd.confhttpd-2.2.3-65.el5.centos.i386 : Apache HTTP ServerRepo : updatesMatched from:Filename : /etc/httpd/conf/httpd.confhttpd-2.2.3-53.el5.centos.1.i386 : Apache HTTP ServerRepo : installedMatched from:Other : Provides-match: /etc/httpd/conf/httpd.conf
10.使用Yum检查可用更新
要查找系统上已安装的软件包中有多少可用的更新,请使用以下命令进行检查。
# yum check-update
11.使用Yum更新系统
要使系统具有所有安全性和二进制软件包更新的最新信息,请运行以下命令。它将为您的系统安装所有最新的补丁程序和安全更新。
# yum update
12.列出所有可用的组软件包
在Linux中,许多软件包捆绑到特定的组。您可以安装将安装属于该组的所有相关软件包的特定组,而不是使用yum安装单个软件包。例如,要列出所有可用的组,只需发出以下命令。
# yum grouplistInstalled Groups: Administration Tools DNS Name Server Dialup Networking Support Editors Engineering and Scientific FTP Server Graphics Java Development Legacy Network ServerAvailable Groups: Authoring and Publishing Base Beagle Cluster Storage Clustering Development Libraries Development Tools Eclipse Educational Software KDE (K Desktop Environment) KDE Software Development
13.安装组软件包
要安装特定的软件包组,我们使用option作为groupinstall。例如,要安装“ MySQL数据库”,只需执行以下命令。
# yum groupinstall 'MySQL Database'Dependencies Resolved=================================================================================================PackageArch Version Repository Size=================================================================================================Updating: unixODBC i386 2.2.11-10.el5 base 290 kInstalling for dependencies: unixODBC-libs i386 2.2.11-10.el5 base 551 kTransaction Summary=================================================================================================Install 1 Package(s)Upgrade 1 Package(s)Total size: 841 kIs this ok [y/N]: yDownloading Packages:Running rpm_check_debugRunning Transaction TestFinished Transaction TestTransaction Test SucceededRunning Transaction Installing : unixODBC-libs1/3 Updating : unixODBC 2/3 Cleanup : unixODBC 3/3Dependency Installed: unixODBC-libs.i386 0:2.2.11-10.el5Updated: unixODBC.i386 0:2.2.11-10.el5Complete!
14.更新组包
要更新任何现有的已安装组软件包,只需运行以下命令,如下所示。
# yum groupupdate 'DNS Name Server'Dependencies Resolved================================================================================================================ PackageArch VersionRepository 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 kUpdating 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 kTransaction Summary================================================================================================================Install 0 Package(s)Upgrade 4 Package(s)Total size: 2.0 MIs this ok [y/N]: yDownloading Packages:Running rpm_check_debugRunning Transaction TestFinished Transaction TestTransaction Test SucceededRunning 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/8Updated: bind.i386 30:9.3.6-20.P1.el5_8.2 bind-chroot.i386 30:9.3.6-20.P1.el5_8.2Dependency Updated: bind-libs.i386 30:9.3.6-20.P1.el5_8.2 bind-utils.i386 30:9.3.6-20.P1.el5_8.2Complete!
15.删除组包
要从系统中删除或删除任何现有的已安装组,只需使用以下命令。
要从系统中删除或删除任何现有的已安装组,只需使用以下命令。
16.列出启用的Yum存储库
要列出系统中所有已启用的Yum存储库,请使用以下选项。
# yum repolistrepo id repo name statusbase CentOS-5 - Base enabled: 2,725epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783extras CentOS-5 - Extras enabled: 282mod-pagespeed mod-pagespeed enabled: 1rpmforge RHEL 5 - RPMforge.net - dag enabled: 11,290updates CentOS-5 - Updates enabled: 743repolist: 20,824
16.列出所有已启用和已禁用的Yum存储库
以下命令将显示系统上所有已启用和已禁用的yum存储库。
# yum repolist allrepo id repo name statusC5.0-base CentOS-5.0 - Base disabledC5.0-centosplus CentOS-5.0 - Plus disabledC5.0-extras CentOS-5.0 - Extras disabledbase CentOS-5 - Base enabled: 2,725epel Extra Packages for Enterprise Linux 5 - i386 enabled: 5,783extras CentOS-5 - Extras enabled: 282repolist: 20,824
17.从特定存储库安装软件包
要从启用或禁用的特定存储库中安装特定的软件包,必须在yum命令中使用–enablerepo选项。例如,要安装PhpMyAdmin 3.5.2软件包,只需执行命令。
# yum --enablerepo=epel install phpmyadminDependencies Resolved============================================================================================= Package Arch Version Repository Size=============================================================================================Installing: phpMyAdmin noarch 3.5.1-1.el6 epel 4.2 MTransaction Summary=============================================================================================Install 1 Package(s)Total download size: 4.2 MInstalled size: 17 MIs this ok [y/N]: yDownloading Packages:phpMyAdmin-3.5.1-1.el6.noarch.rpm | 4.2 MB 00:25Running rpm_check_debugRunning Transaction TestTransaction Test SucceededRunning Transaction Installing : phpMyAdmin-3.5.1-1.el6.noarch 1/1 Verifying : phpMyAdmin-3.5.1-1.el6.noarch 1/1Installed: phpMyAdmin.noarch 0:3.5.1-1.el6Complete!
18.交互式yum shell
Yum实用程序提供了一个自定义shell程序,您可以在其中执行多个命令。
# yum shellLoaded plugins: fastestmirrorSetting up Yum Shell> update httpdLoading 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.netSetting up Update Process>
19.清除Yum缓存
默认情况下,yum将所有启用了存储库的软件包数据保存在每个子目录的/ var / cache / yum /中,以从启用的存储库中清除所有缓存的文件,您需要定期运行以下命令以清理所有缓存并确保没有多余的空间正在使用。我们不想提供以下命令的输出,因为我们希望保持高速缓存的数据不变。
yum clean all
20.查看Yum历史
要查看yum命令过去的所有事务,只需使用以下命令。
# yum historyLoaded plugins: fastestmirrorID | 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 | 560history list
以上就是20个常用的yum命令。
评论前必须登录!
注册