搭建本地yum仓库

. yum是什么

yum = Yellow dog Updater, Modified
1、主要功能是更方便的添加/删除/更新RPM.
它能自动解决包的倚赖性问题.
它能便于管理大量系统的更新问题
:为什么要使用yum而不用apt,最简单的原因,Fedora自带

 

 

. yum特点
*
可以同时配置多个资源库(Repository)
*
简洁的配置文件(/etc/yum.conf)
*
自动解决增加或删除rpm包时遇到的倚赖性问题
*
使用方便
*
保持与RPM数据库的一致性

 

首先,rhel5系统安装的时候其实已经有yum了,只是因为如果用官方的网站更新的话除非你是用钱买的rhel5.否则它会提示注册之类的。所以只要把 yum的更新地址改成开源的就行了。而限定yum更新地址的文件/etc/yum.repos.d/里。先把它们改成备份文件,即在后面加.bak

 

三、常用用法

1.使用YUM查找软件包

命令:yum search <keyword>

 

2.列出所有可安装的软件包

命令:yum list

 

3.列出所有可更新的软件包

命令:yum list updates

 

4.列出所有已安装的软件包

命令:yum list installed

命令:yum list installed | more

 

5.列出所有已安装但不在 Yum Repository 內的软件包

命令:yum list extras

 

6.列出所指定的软件包

命令:yum list <package_name>

 

7.使用YUM获取软件包信息

命令:yum info <package_name>

 

8.列出所有软件包的信息

命令:yum info

 

9.列出所有可更新的软件包信息

命令:yum info updates

 

10.列出所有已安裝的软件包信息

命令:yum info installed

 

11.列出所有已安裝但不在 Yum Repository 內的软件包信息

命令:yum info extras

 

12.列出软件包提供哪些文件

 

命令:yum provides <package_name>

 

13、使用 yum remove 则会移除Linux系统上已经安装的RPM套件。

命令:# yum remove expat-devel

 

14、使用 yum install 单独安装一个RPM套件

命令:# yum install net-snmp-utils

 

四、清除YUM缓存

yum 会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除,更精确 的用法是yum clean headers清除headeryum clean packages清除下载的rpm包,yum clean all 股脑儿端

 

1.清除缓存目录(/var/cache/yum)下的软件包

命令:yum clean packages

 

2.清除缓存目录(/var/cache/yum)下的 headers

命令:yum clean headers

 

3.清除缓存目录(/var/cache/yum)下旧的 headers

命令:yum clean oldheaders

 

4.清除缓存目录(/var/cache/yum)下的软件包及旧的headers

 

命令:yum clean

命令:yum clean all (= yum clean packages; yum clean oldheaders)

 

五、使用光驱作为yum仓库

1、将光驱挂载到/mnt目录

[root@eccs_web etc]# mount /dev/cdrom /mnt

 mount: block device /dev/sr0 is write-protected, mounting read-only

 

2、配置yum仓库地址

[root@eccs_web etc]# cd /etc/yum.repos.d/

[root@eccs_web yum.repos.d]# cp rhel-source.repo rhel-source.repo.bak

[root@eccs_web yum.repos.d]# vi rhel-source.repo

[rhel-source]

name=Red Hat Enterprise Linux $releasever - $basearch - Source

baseurl=file:///mnt

enabled=1

gpgcheck=1

 

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

 

提问:为什么选择是在/mnt目录?

1、先看看光盘的目录内容,里面有个repodata目录,里面存放的是软件之间的关联关系,sqlite

搭建本地yum仓库

 

2、看看repodata目录下的内容

搭建本地yum仓库

 

里面的由sqlite3,存放着软件之间的关系。

 

3、其中仓库还可配置HighAvailability、LoadBalancer、Server

[root@eccs_web HighAvailability]# ls
listing  repodata  TRANS.TBL
[root@eccs_web HighAvailability]# cd ..
[root@eccs_web mnt]# cd LoadBalancer/
[root@eccs_web LoadBalancer]# ls
listing  repodata  TRANS.TBL
[root@eccs_web LoadBalancer]# cd ..
[root@eccs_web mnt]# cd Server/
[root@eccs_web Server]# ls
listing  repodata  TRANS.TBL

 

 备注:

[Steven]只是仓库名字,这个可以随意

Name=….这个你可以理解为仓库的描述,这个可以不写这一行

Baseurl=file:///Media/Server,这里解释一下为什么是///三个/,file:// ftp:// http://大家是不是很熟悉,file://的意思是文件在本地,在Linux中一切都以根开始的那路径上要加个/,所以最后是file:///media/Server,意思是在本地的/media/Server下

Enable=1,这里是说是否用户仓库,1是启用,0是不启用

Gpgcheck,是说是否检查软件的KEY,1是检查,0是不检查

Gpgkey=…这里是说你的KEY文件在哪里,我不启用,所以也无所谓了

 

 现在你就可以使用yum install package 来安装需要的软件包了。

现在就可以测试能不能用了哦:

[root@killgoogle ~]yum install mplayer

这是安装mplayer如果要删除则是:

 

[root@killgoogle ~]yum remove mplayer

你可能感兴趣的:(yum)