YUM(Yellow dog Updater, Modified)为多个Linux发行版的前端软件包管理器,例如 Redhat RHEL, CentOS & Fedora. YUM通过调用RPM的软件包信息让用户更方便地进行软件安装,升级,卸载等软件包管理操作。
这篇教程适用所有使用YUM管理软件包的Linux发行版,包括CentOS, RHEL or Fedora.
yum update
yum update 软件名称
yum install 软件名称
假如你想升级所有软件包,但不想升级内核,就可以用下面的命令: yum --exclude=package kernel* update
下面的命令会检测 Fedora/CentOS/RHEL上的所有软件是否需要升级
check-update
yum remove 软件名称
或者 yum erase 软件名称
yum list可以让你获取软件包相关信息,后面不指定软件包名的话,它会列出所有软件包的信息。 yum list 软件名称
比如你想知道httpd这个软件是干吗的,可以输入下面的的命令: yum provides httpd
如果你不知道某个软件包的全称,这个命令就非常有用了,它会根据你提供的关键词在RPM的软件包数据库里搜索相适配的软件包。比方说我想找 samba这个软件的全称,我只需要输入下面的命令即可: yum search samba
然后会显示下面的信息:
使用YUM查看软件包的基本信息
每安装一个软件包,YUM都是先下载一个RPM软件包然后再安装,安装完后并不会自动删除。时间长了,这些文件占很多空间的。所以,需要定时清理: yum clean all
如果你想要自己创建一个RPM软件包,你你可以用YUM来确定存在哪些依赖关系: yum localinstall 软件名称.rpm
如果你想升级一个本地RPM软件包,可以用下面的命令: yum localupdate update-package.rpm
如果你想自己源码安装软件,了解安装的软件包依赖哪些软件非常有必要的。deplist可以让你知道软件包依赖哪些组件,这些组件的全称是什么。 yum deplist 软件名称
yum -v
你可以使用下面的命令把软件安装到chroot: yum --installroot=/path/to/chroot/
如果你安装了第三方的软件源,你需要先启用该软件源才能从其安装软件,输入下面的命令启用EPEL软件源: yum --enablerepo=epel install rsnapshot
如果你安装了第三方软件源但不想从其安装软件,可以用下面的命令禁用: yum --disablerepo=epel install 软件名称
YUM软件集合是指多个共同协作的软件统称,比如“Development Tools”(开发工具)。 下面介绍下怎么用yum groupinstall命令来查看/安装/卸载yum软件集合
yum groupinstall 'Development Tools'
yum groupremove 'Development Tools'
yum groupupdate 'Development Tools'
yum groupinfo 'Development Tools'
yum grouplist | more
该命令适用所有使用YUM为软件管理器的linux版本,如CentOS, Fedora, RHEL: yum list installed
GeoIP.i686 .4.8-.el6 @epel
MAKEDEV.i686 3.24-6.el6 installed
apr.i686 .3.9-5.el6_2 @updates
apr-util.i686 .3.9-3.el6_0. installed
apr-util-ldap.i686 .3.9-3.el6_0. installed
aspell.i686 2:0.60.6-2.el6 installed
audit-libs.i686 2.2-2.el6 @base
authconfig.i686 6..2-0.el6 @base
avahi-libs.i686 0.6.25-.el6 @base
basesystem.noarch 0.0-4.el6 installed
bash.i686 4..2-9.el6_2 @base
bind.i686 32:9.8.2-0.0.rc.el6_3.6 @updates
bind-libs.i686 32:9.8.2-0.0.rc.el6_3.6 @updates
binutils.i686 2.20.5.0.2-5.34.el6 @base
bzip2.i686 .0.5-7.el6_0 installed
bzip2-libs.i686 .0.5-7.el6_0 installed
ca-certificates.noarch 200.63-3.el6_.5 @base
centos-indexhtml.noarch 6-.el6.centos installed
centos-release.i686 6-3.el6.centos.9 @base
chkconfig.i686 .3.49.3-2.el6 @base
compat-mysql5.i686 5..54-.el6.remi @remi