一、部署YUM软件仓库

要成功使用YUM机制来更新系统和软件,需要有一个包含各种rpm安装包文件的软件仓库(Repository),提供软件仓库的服务器也称为“源”服务器,在客户机中只要正确指定软件仓库的地址等信息,就可以通过对应的“源”服务器来安装或更新软件了。

1、服务器端

 

YUM软件仓库通过借助于HTTP或者FTP协议来进行发布,这样 可以面向网络中所有客户机提供软件源服务。为了便于客户机查询软件包、获取依赖关系等信息,在软件仓库中需要提供仓库数据(Repodata),其中收集了目录下所有RPM包的头部信息。

①安装并启用vsftpd服务

[root@localhost ~]# rpm -ivh /media/Packages/vsftpd-2.2.2-6.el6_0.1.i686.rpm
[root@localhost ~]# chkconfig vsftpd on
[root@localhost ~]# service vsftpd start

 

②准备软件仓库目录

 

[root@localhost ~]# cp -rfp /media/cdrom/* /var/ftp/pub/

2、客户机端

 

在客户机上需要指定至少一个可用的软件仓库,然后才能使用yum工具来下载、安装软件包。yum工具使用的软件仓库信息存放在/etc/yum.repos.d/目录下扩展名为.repo的文件中。

[root@localhost ~]# vi /etc/yum.repos.d/rhel6.repo
[rhel-server] //仓库类别
name=Red Hat Enterprise Linux server//仓库名称
baseurl=ftp://192.168.1.180/pub/Server //URL访问路径
enabled=1 //启用此软件仓库
gpgcheck=0 //不验证软件包的签名     =1    //验证吧包的签名
gpgkey=ftp://192.168.1.180/pub//RPM-GPG-KEY-redhat-release

上述操作中,文件rhel6.repo需要手动创建,/etc/yum.repos.d/目录下若有其他末用的*.repo文件建议将其删除,配置"enabled=1"为默认项,可以省略;"gpgcheck"和"gpgkey"两行配置用来检查软件包是否为Red Hat发布,若无此要求则可以省略。

作为临时解决办法之一,实际上也可以使用本地文件夹作为软件仓库,例如,将RHEL6光盘挂在到/media目录以后,可以参考一下操作来进行配置。当然,这种方式仅限于在本机使用。

[root@localhost ~]# vi /etc/yum.repos.d/local.repo
[rhel-server]
name=Red Enterprise Linux server
baseurl=file:///mnt/Server
enabled=1
gpgcheck=0
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release

二、使用yum工具管理软件包

1、查询软件包

yum工具的常见查询操作包括获取软件包安装,查询软件包的描述信息,搜索指定的软件包,分别可结合子命令list、info、search来实现。

yum list ————查询软件包列表

直接执行“yum list”命令可以获得系统中的软件安装情况,也可以查询软件仓库中可用的软件包列表。其中子命令list表示列表查看。

[root@localhost ~]# yum list

若执行“yum list installed”则表示只列出系统中已安装的软件包,执行“yum list available” 则表示只列出软件仓库中可用(尚未安装)的软件包,执行“yum list updates”则表示只列出可以升级版本的软件包。

yum info ————查询软件包的描述信息

当前要查看某个软件包的描述信息时,可以执行“yum info软件包名”,其中子命令info表示获取信息。例如,以下操作可以查看软件包httpd的信息

[root@localhost /]# yum info httpd
Loaded plugins: product-id, refresh-packagekit, subscription-manager
Updating Red Hat repositories.
Installed Packages
Name : httpd
Arch : i686
Version : 2.2.15
Release : 9.el6
Size : 2.8 M
Repo : installed
From repo : local
Summary : Apache HTTP Server
URL : http://httpd.apache.org/
License : ASL 2.0
Description : The Apache HTTP Server is a powerful, efficient, and extensible
: web server.

yum search————查新指定的软件包

当需要根据某个关键词来查找相关的软件包时,可以执行“yum search关键词”,默认仅根据软件包名称和描述信息进行搜索;若执行“yum search all关键词”,可以扩大搜索范围。例如,以下操作将搜索软件仓库并列出与”httpd“相关的软件包。

[root@localhost /]# yum search all httpd
Loaded plugins: product-id, refresh-packagekit, subscription-manager
Updating Red Hat repositories.
============================================================================ Matched: httpd ============================================================================
httpd-devel.i686 : Development interfaces for the Apache HTTP server
httpd-manual.noarch : Documentation for the Apache HTTP server
httpd-tools.i686 : Tools for use with the Apache HTTP Server
httpd.i686 : Apache HTTP Server
mod_dav_svn.i686 : Apache httpd module for Subversion server
mod_dnssd.i686 : An Apache HTTPD module which adds Zeroconf support
mod_ssl.i686 : SSL/TLS module for the Apache HTTP Server

2、安装、升级、卸载软件包

使用yum工具安装、升级软件包、分别通过子命令install、update来完成、操作对象为指定的软件包名(可以有多个),执行操作时会自动检查并解决软件包之间的依赖关系,期间会提示用户按y键确认安装或升级操作,若希望自动确认为y,可以在yum命令后添加“-y”选项,例如,一下操作将从软件仓库下载并安装autofs软件包,并自动解决其依赖关系(安装必须的hesiod等软件包)。

[root@localhost ~]# yum -y install autofs
Loaded plugins: product-id, refresh-packagekit, subscription-manager
Updating Red Hat repositories.
Setting up Install Process
Resolving Dependencies
--> Running transaction check
---> Package autofs.i686 1:5.0.5-31.el6 will be installed
--> Finished Dependency Resolution
Dependencies Resolved
=================================================================================
Package Arch Version Repository Size
=================================================================================
Installing:
autofs i686 1:5.0.5-31.el6 Packages 464 k
Transaction Summary
=================================================================================
Install 1 Package(s)
Total download size: 464 k
Installed size: 2.9 M
Downloading Packages:
autofs-5.0.5-31.el6.i686.rpm | 464 kB 00:00
Running rpm_check_debug
Running Transaction Test
Transaction Test Succeeded
Running Transaction
Installing 1:autofs-5.0.5-31.el6.i686 1/1
duration: 246(ms)
Installed products updated.
Installed:
autofs.i686 1:5.0.5-31.el6
Complete!

使用yum工具卸载软件包时,通过子命令remove来完成,卸载操作通过软件仓库也可以完成。例如,以下操作将卸载libX11软件包,并自动解决其依赖关系(卸载依存的cairo、fprintd等软件包)。

[root@localhost ~]# yum -y remove libX11


转载于:https://blog.51cto.com/5647609/961594