RHEL5实现YUM本地源的配置

 RHEL5实现YUM本地源的配置

2009年12月26日 20:54
实现YUM本地源的配置 (RHEL5) =================================================================================== 1、将DVD光盘挂载到/media/cdrom中; # mount /dev/cdrom /mnt/ 其实在RHEL5中,当光盘放入光驱后,在/misc 中就会自动挂载cd 的内容,

实现YUM本地源的配置(RHEL5)
===================================================================================
1、将DVD光盘挂载到/media/cdrom中;
#mount /dev/cdrom /mnt/
其实在RHEL5中,当光盘放入光驱后,在/misc 中就会自动挂载cd 的内容,但不会显示,在cd /misc 后就会显示 cd 的目录,然后再 cd /misc/cd 就会显示光盘的内容。
2、修改系统配置文件
vi /etc/yum.repos.d/rhel-debuginfo.repo 
[rhel-debuginfo]
name=Red Hat Enterprise Linux $releasever - $basearch - Debug
baseurl=ftp://ftp.redhat.com/pub/redhat/linux/enterprise/$releasever/en/os/$basearch/Debuginfo/
enabled=0
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release

#将上面的红色部分改为下面的黄色字
-------------------------------------------------------------------------------------------------------------------------------------
baseurl=file:///mnt/Server
enable=1
gpgcheck=0
-------------------------------------------------------------------------------------------------------------------------------------

baseurl=file:///mnt/Server
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release
-------------------------------------------------------------------------------------------------------------------------------------

baseurl=file:///mnt/Server
enabled=1
gpgcheck=1
-------------------------------------------------------------------------------------------------------------------------------------
#vi /usr/lib/python2.4/site-packages/yum/yumRepo.py
第411行,799行:
remote = url + '/' + relative
改为:
remote = “/mnt/Server” + '/' + relative
-------------------------------------------------------------------------------------------------------------------------------------
导入rpm的签名信息
rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 
-------------------------------------------------------------------------------------------------------------------------------------
3、清除系统缓存
#yum clean all
4、安装bind
#yum install bind
=================================================================================== 在RHEL5中在安装时没有选择所有软件包,以后在使用过程中想再增加缺少的软件包,通常情况可以通过两种途径完成。

一是通过rpm手工安装需要安装的软件包;
二是通过注册RHN,然后由yum通过internet连接到RHN站来新增软件包。

这两种情况都有其不便之外:
第一种由于存在软件包的依赖性关系,可能需要在安装一个rpm包之前要安装多个与之关联的软件包,而往往这些依赖的包的名称我们无法正确定位。尤其经常提示缺乏某一动态函数库时,我们就不容易方便查到所需软件包的名称。
第二种方法虽然不存在上述情况,但显而易见的问题是需要连接 internet,而且安装软件包的速度会很慢。

为了避免上述两种情况的弊端,我们可以通过自己

创建本地

repository

的方法来实现软件包的快速安装。(此方法前提是你有Red Hat Enterprise Linux 5安装介质盘)



1. 首先,我们可以把几张rhel 5的安装盘copy到某一指定目录下。 如/iso/rhel51server



2. 所有盘都copy完成后,把系统原有的存放repository内容的目录改名。


#mv /iso/rhel51server/Server/repodata /iso/rhel51server/Server/bakrepo



3.安装创建repository的软件包。


#yum install createrepo



#rpm -ivh createrepo-0.4.4-2.fc6.noarch.rpm



4. 创建存放自己创建repository软件列表的目录。


#mkdir /iso/rhel51server/Server/repodata



5. 创建自己的repository。


#cd /iso/rhel51server/Server/repodata


#createrepo -g bakrepo/comps-rhel5-server-core.xml /iso/rhel51server/Server


一旦创建完成,会在repodata目录下生成5个文件:


comps-rhel5-server-core.xml中是软件包组分类;


filelists.xml.gz, other.xml.gz,primary.xml.gz是软件包列表;


repomd.xml中存放md5校验信息。



6.创建yum的repository配置文件。


#cd /etc/yum.repos.d


#touch rhel51-server.repo


#vi rhel51-server.repo , 内容如下


[rhel51-server]


name=Red Hat Enterprise Linux $releasever - $basearch


baseurl=file:///iso/rhel51server/Server


enable=1


gpgcheck=1


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



7.清除以前安装时yum缓存的包头文件信息。


#yum clean all



8.所有创建工作到些完成,接下来你就可以正常通过yum完装、删除自己需要的/不需要的软件包了。



如果还想实现更新库的功能,只需要把从RHN下载的新的软件包copy到Server目录下,再运行createrepo命令更新库内容就可以了。


===================================================================================


TypeError

:

unsubscriptable object
Local variables in innermost frame:
item: name
db_obj: None
这个问题是由于yum的原数据损坏导致的,需要先删除原数据和数据库缓存,然后重建,问题即可解决
解决方法,依次运行以下命令:
yum clean metadata  //通常执行这句就能解决,如果这句不能解决问题,继续下面操作
yum clean dbcache
yum makecache

===================================================================================

你可能感兴趣的:(linux,职场,yum,源,休闲)