转自:http://bbs.51cto.com/thread-861410-1.html
一、在linux 6.1中本地yum源配置:
首先编辑yum源配置文件
我们可以再这个目录中新创建一个配置文件,vim yum.repo
这里我引用redking大哥的配置文件说明
配置文件内容简介:
[ ]内的是仓库的名字
name是仓库的描述也可以说是名字
baseurl 仓库的位置
enabled 是否启用这个仓库,1为起用,0为禁用
gpgcheck 是否检查GPG签名(用来验证要安装的包是不是REDHAT官方的)
我是这样配置的:
GPGKEY 的存放地址我们需要命令导入这个签名。才能使用这项功能
然后我们将签名写入Yum配置文件中
一定要注意是>>,不是>
最后yum源配置文件如此:
保存退出后,我们将镜像活光驱挂载到目录中
现在我们就可以使用yum源来安装RPM包了
如像这样安装telnet包
yum命令如下,参照fenghao.cn大哥的文章:
yum install package 安装指定的安装包package1
yum localinstall package 本地安装软件包
更新和升级
yum update 全部更新
yum update package 更新指定程序包package
yum check-update 检查可更新的程序
查找和显示
yum info <package> 显示安装包信息
yum list 显示所有已经安装和可以安装的程序包
yum list <package> 显示指定程序包安装情况
yum search <keyword>查找软件包
删除程序
yum remove | erase package1 删除程序包
yum 会把下载的软件包和header存储在cache中,而不会自动删除。如果我们觉得它们占用了磁盘空间,可以使用yum clean指令进行清除.
yum clean headers清除header
yum clean packages清除下载的rpm包
yum clean all 清除header与rpm包
二、在linux redhat enterprise 5中配置本地yum源
linux redhat enterprise 5没有6.0版本那么智能,配置完yum源配置文件就可以使用yum安装RPM包,linux redhat enterprise 5需要创建YUM通用数据库,这里我写一种不需要CP那么多安装包的方法。
配置方法如下:
如在6.0版本中配置方法
这时如果我们执行yum安装操作时,会出现如下提示错误:
我们如下操作,会解决此类问题,并且不需要CP大量的RPM安装包。
1.将光盘镜像挂载到/media/RHEL/目录下
2.生成库文件
首先在media下创建yum目录,然后安装createrepo工具
生成RPM数据库
数据库创建完成:
挂载数据库目录
3.生成依赖关系,重新编辑Yum源配置文件
下面这一步也很重要:
RHEL5.1下的本地YUM源就这样OK了,注意,这里并没有拷贝大量的文件,而是挂载.
如果想实现下次重启时还能够正常使用YUM本地源,需要将挂载信息写入/etc/fstab文件中
重启后先挂载光驱,然后mount -a 将fstab中文件全部挂载就可以了
当然如果大家不想挂载通过挂载目录来实现yum的实现,也可以使用VSFTPD网络安装RPM包,网络安装多用于局域网中!
大家可以参照http://bbs.51cto.com/thread-532851-1.html
注意:在经过上面的步骤后,yum可以正常使用。不过后来我在使用过程中遇到如下问题:
(1)umount /media/cdrom 提示:
umount: /media/cdrom: device is busy
umount: /media/cdrom: device is busy
而且,使用fuser -m /media/cdrom也查不出谁在使用它。回想下上面的步骤就可以知道我们在挂载数据库目录时执行过这样的挂载命令:
mount --bind /media/yum/repodata/ /media/cdrom/Server/repodata/。所以我们需要先执行umount /media/cdrom/Server/repodata/,然后再执行umount /media/cdrom就可以成功卸载了。
(2)最开始,我是想先卸载/media/cdrom,然后重启下系统。执行卸载命令就遇到了如(1)所示的问题,纠结的是起初没有找到问题的原因所在,就在不卸载的情况下直接执行了shutdown -r now重启命令。悲催的是在重启过程中遇到了更让人头疼的问题,错误提示如下:
/media/cdrom/Server/repodata:rcercrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrcrce
INIT:no more process left in this runlevel
_(重启动过程就停止在这里,动也不动,让人很是头疼)
很明显,从错误提示中可以看出问题出在/media/cdrom/Server/repodata,我想还是因为umount不成功的原因(其实,只要在重启前执行了umount /media/cdrom/Server/repodata就不会出现这个问题了) 。
这时,没得选,强制关机吧。其实强制关机后,再开机的话已经可以正常启动了,启动后你也发现/media/cdrom已经被卸载了。