阅读:0

Linux yum命令详解(查询、安装、升级和卸载软件包)

yum提供了查询、安装、升级和卸载软件包的命令,一一给大家介绍。

查询

査询yum源服务器上所有可安装的软件包列表

[root@localhost yum.repos.d]# yum list
#查询所有可用软件包列表
Installed Packages
#已经安装的软件包
ConsdeKit.i686 0.4.1-3.el6
@anaconda-CentOS-201207051201 J386/6.3
ConsdeKit-libs.i686 0.4.1-3.el6 @anaconda-CentOS-201207051201 J386/6.3
…省略部分输出…
Available Packages
#还可以安装的软件包
389-ds-base.i686 1.2.10.2-15.el6 c6-media
389-ds-base-devel.i686 1.2.10.2-15.el6 c6-media
#软件名 版本 所在位置(光盘)
…省略部分输出…

查询yum源服务器中是否包含某个软件包

[root@localhost yum.repos.d]# yum list 包名
#查询单个软件包

例如:

[root@localhost yum.repos.d]# yum list samba
Available Packages samba.i686 3.5.10-125.el6 c6-media
#搜索yum源服务器上所有和关键字相关的软件包

例如:

[root@localhost yum.repos.d]# yum search 关键字
#搜索yum服务器上所有和关键字相关的软件包

例如:

[root@localhost yum.repos.d]# yum search samba
#搜索服务器上所有和samba相关的软件包
========================N/S Matched:
samba =============================
samba-client.i686:Samba client programs
samba-common.i686:Files used by both Samba servers and clients
samba-doc.i686: Documentation for the Samba suite
…省略部分输出…
Name and summary matches only, use"search all" for everything.

查询指定软件包的信息

[root@localhost yum.repos.d]# yum info samba
#查询samba软件包的信息
Available Packages <-没有安装
Name : samba <-包名
Arch : i686 <-适合的硬件平台
Version : 3.5.10 <―版本
Release : 125.el6 <—发布版本
Size : 4.9M <—大小
Repo : c6-media <-在光盘上
…省略部分输出…

安装

[root@localhost yum.repos.d]# yum -y install 包名

选项:
  • install:安装;
  • -y:自动回答yes。如果不加 -y,那么每个安装的软件都需要手工回答yes;

例如:

[root@localhost yum jepos.d]#yum -y install gcc
#使用yum自动安装gcc

在讲 RPM 包安装时提到,gcc 是 C 语言的编译器,其依赖的软件包比较多,手工使用 RPM 包安装太麻烦了,所以使用 yum 安装。

yum 安装可以自动解决依赖性,而且安装速度也比源码包快得多。不过,yum 到底安装的还是 RPMS,所以 rpm 命令还是必须学习和使用的。

升级

[root@localhost yum.repos.d]# yum -y update 包名
#升级指定的软件包

选项:
  • update:升级;
  • -y:自动回答yes;

注意,在进行升级操作时,yum 源服务器中软件包的版本要比本机安装的软件包的版本高。

[root@localhost yum.repos.d]# yum -y update
#升级本机所有软件包

这条命令会升级系统中所有的软件包。不过我们的生产服务器是稳定优先的,所以这种全系统升级的情况并不多见。

卸载

再次强调一下,除非你确定卸载的软件的依赖包不会对系统产生影响,否则不要执行 yum 的卸载,因为很有可能在卸载软件包的同时卸载的依赖包也是很重要的系统文件,这就有可能导致系统崩溃。

卸载命令如下:

[root@localhost yum.repos.d]# yum remove 包名
#卸载指定的软件包

例如:

[root@localhost yum.repos.d]# yum remove samba
#卸载samba软件包