YUM源

概述

基于Debian的发行版类似,基于Red Hat的系统也有几种不同的可用前端工具。常见的有以下三种。

□yum: 在Red Hat和Fedora中使用。

□urpm:在Mandriva中使用。

□Zyper:在openSUSE中使用。

这些前端都是基于rpm命令行工具的。重点是基于Red Hat,yum来管理软件包的

一、yum仓库(服务器端):

repodata这个路径就是访问到YUM仓库的路径

红帽5,yum仓库分为4个目录

红帽6,yum仓库就分为1个目录

最后用createrepo创建YUM仓库源

[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5

其中mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os

$releasever:当前主发形版本,不包括子版本号。对红帽来5来说它就是5,对红帽6来说它就是6。

&arch:取得当前服务器处的系统平台是32位还是64位的,类似于 uname -m

$baserch:取得32位平台的基本平台i386

二、yum(客户端):

配置文件/etc/yum.conf

[main]#每一个仓库配置一个main
cachedir=/var/cache/yum/$basearch/$releasever#缓存目录
keepcache=0#rmp在本地是否长久保存
debuglevel=2
logfile=/var/log/yum.log#日志文件
exactarch=1#精确匹配系统平台版本1是“YES”0是“NO”
obsoletes=1
gpgcheck=1#检查RPM来源合法性
plugins=1
installonly_limit=5
bugtracker_url=http://bugs.centos.org/set_project.php?project_id=16&ref=http://bugs.centos.org/bug_repor
t_page.php?category=yum
distroverpkg=centos-release
[root@TP-CW-WS-PH-01 ~]# cd /etc/yum.repos.d/
[root@TP-CW-WS-PH-01 yum.repos.d]# ls
CentOS-Base.repo  CentOS-Debuginfo.repo  CentOS-Media.repo  CentOS-Vault.repo

在/etc/yum.resops.d下的目录中,只有CentOS-Base.repo是有效的,其它三个可以删除

查看配置文件

[base]
#repository_ID 只要唯一就可
name=CentOS-$releasever - Base
#仓库名
mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&    repo=os
#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/
#仓库源头的URL
gpgcheck=1
#需要gpg验证
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#所以rpm包来源验证的存放位置,如果gpgcheck=0,可以不指定

yum客户端命令操作:

yum SUBCOMMAND;

list {all|installed|available}

all:

屏幕显示installed和@开头的表示已经安装。

屏幕显示base表示尚且未安装,可以安装的包

installed:已安装的包

available:可安装的包

update:显示可更新的包

extras:额为的包,无法归类的包

recent:新添加yum源的包

repolist命令:

显示所有包

[root@localhost ~]# yum repolist
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirrors.grandcloud.cn
 * base: mirror.esocc.com
 * extras: mirror.esocc.com
 * updates: mirror.esocc.com
repo id                    repo name                              status
addons                     CentOS-5 - Addons                      enabled:     0
base                       CentOS-5 - Base                        enabled: 2,770
extras                     CentOS-5 - Extras                      enabled:   276
updates                    CentOS-5 - Updates                     enabled:   508
repolist: 3,554

也可以用通配符查找,所需要的软件包

[root@TP-CW-WS-DL-01 ~]# yum list all nginx*
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: centos.ustc.edu.cn
 * epel: mirrors.yun-idc.com
 * extras: centos.ustc.edu.cn
 * updates: mirror.esocc.com
Installed Packages
nginx.i686                          1.0.15-3.el6                           @epel
Available Packages
nginx.i686                          1.0.15-5.el6                           epel

yum

info packge_name:查看包信息

group list:查看软件包组

clean [ packages | metadata | expire-cache | rpmdb | plugins | all ]

本地的包 源数据 过期缓存 缓存 所有

makcache:手动创建缓存

install package_name~ 可以有多个

yum -y:自动回答为yes;

reinstall package_name~:重新安装软件包

check_update:检查可升级的包

update packeage_name~:升级软件包

update-to:升级到指定版本

remove package_name~:卸载包,记住会卸载依赖的包

provides:查询提供软件包的出处

search :模糊匹配查询

groupinstall

开发组:RHEL6“Development tools"、”Server Platform Development" "Desktop Platform Development"

RHEL5 “Development tools"、“Development Libraries"

localinstall:本地安装RMP包,好处比直接用rpm来安装,可以将依赖的包全部装上。


三、本地光盘挂载做YUM源

1、首先将光盘镜像挂载到/media/cdrom/

mount -o loop -t iso9660 /root/CentOS-6.3-x86_64-bin-DVD1.iso /mnt/cdrom
[root@TP-CW-WS-PH-01 cdrom]# ls
CentOS_BuildTag  EULA  p_w_picpaths    Packages                  repodata              RPM-GPG-KEY-CentOS-Debug-6     RPM-GPG-KEY-CentOS-Testing-6
EFI              GPL   isolinux  RELEASE-NOTES-en-US.html  RPM-GPG-KEY-CentOS-6  RPM-GPG-KEY-CentOS-Security-6  TRANS.TBL

2、配置本地光盘YUM仓库配置文件base.repo


[base]
name=Centos 6.4
baseurl=file:///media/cdrom/
#本地yum仓库需要用file:///
enabled=1
gpgcheck=0

3、创建yum缓存

yum makecache

4、yum repolist就可以看到本地光盘的repo name了



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章