Red Hat Enterprise Linux AS release 4 安装YUM原文:
http://blog.csdn.net/zevin/article/details/8234559在redhat中,yum需要单独地安装:
(1)先查看当前redhat系统的版本:cat /etc/issue
显示:Red Hat Enterprise Linux AS release 4 (Nahant Update 6)
Kernel \r on an \m
系统信息存放在issue文件中。
(2)下载yum软件包:http://yum.baseurl.org/download/2.0/yum-2.0.8-1.src.rpm
(3)安装(由于是RPM源码包所以安装比较特殊)
#rpmbuild –rebuild yum-2.0.8-1.src.rpm
如果按照上面的命令安装,会出现如下错误:
rpmbuild: arguments to --root (-r) must begin with a /
解决方法:
rpmbuild --rebuild xxx.src.rpm
(4)安装成功后,进入到:/usr/src/redhat/RPMS/noarch/,并安装yum的rpm包:
cd /usr/src/redhat/RPMS/noarch/
rpm -ivh yum-2.0.8-1.noarch.rpm
(5)yum的配置文件(如果没有的话,可以自己创建)
cat /etc/yum.conf
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
tolerant=1
exactarch=1
[base]
name=Red Hat Linux $releasever - $basearch - Base
baseurl= http://centos.ustc.edu.cn/centos/4/os/i386/
[updates]
name=Red Hat Linux $releasever - Updates
baseurl= http://mirror.centos.org/centos/4/updates/i386/
或者(64 bit)
[main]
cachedir=/var/cache/yum
debuglevel=2
logfile=/var/log/yum.log
pkgpolicy=newest
distroverpkg=redhat-release
tolerant=1
exactarch=1
[base]
name=Red Hat Linux $releasever - $basearch - Base
baseurl=http://centos.ustc.edu.cn/centos/4/os/x86_64/
[updates]
name=Red Hat Linux $releasever - $basearch - Base
baseurl=http://centos.ustc.edu.cn/centos/4/os/x86_64/
现在问题的关键是,AS4的yum源现在都不维护了,好多源地址都不可用,少数可用的,rpm包还不全。现在是AS5和AS6最常用了。
Yum update 的可用源:
[base]
name=Red Hat Enterprise AS release 4 Updates
baseurl= http://apt.sw.be/redhat/el4/en/i386/dag/
http://apt.sw.be/redhat/el4/en/i386/rpmforge/
http://mirror.cpsc.ucalgary.ca/mirror/dag/redhat/el4/en/i386/dag/
http://mirror.cpsc.ucalgary.ca/mirror/dag/redhat/el4/en/i386/rpmforge/
gpgcheck=0
但是貌似没有xorg-x11的源
(6)执行 yum update
会出现No module named rp问题,解决方案:
常规解决方法比较麻烦,有一种很土但很简便的方法:
由于yum是基于python
修改/usr/bin下的关于yum的python文件:
#vim /usr/bin/yum
将首行显示的 #!/usr/bin/python 修改为 #!/usr/bin/python2.3(我的系统默认安装的是python2.3,你也可以用whereis python 查看升级前和升级后的版本)
执行yum --version,可以发现yum正确安装。
如果还有别的问题,就是yum.conf文件配置的问题,可以去/etc下修改该文件。
TIPS: 常规的繁琐解决方案:
由于YUM包管理是使用Python编写的,因此如果单独对Python进行升级可能会导致YUM服务无法使用。
出现这种情况的主要原因在于新安装的Python没有YUM服务所依赖的Packages。
可以尝试在Python中执行import yum语句,如果Python此时抛出异常则表示YUM无法正常运行。
一般情况下出现的问题为:No module named rpm,如果这时没有rpm-python的安装包,那么就需要来重新build一个,这个package被包含在了rpm代码当中,所以先要到rpm.org网站上下载对应机器上rpm版本的源码包,然后解压,执行./configure,进入python子目录,执行make install。安装完成后,退出python子目录,执行python,再次import yum,查看是否不再出现No module named rpm,如果依然出现可以检查一下安装路径的配置。需要注意的是:1.没有必要对整个rpm进行安装,只需要对python子目录的部分进行安装;2.在执行import yum前,一定要先退出python子目录,否则python会以当前目录下的rpm目录作为rpm包的目录位置,而不会去引用site-packages目录下的rpm,会导致出现No module named _rpm异常。
rpm下载地址http://rpm.org/wiki/Download
除了rpm-python,其他需要的一些package:
urlgrabber�0�2http://linux.duke.edu/projects/urlgrabber/download/
iniparse http://code.google.com/p/iniparse/
yum-metadata-parser http://yum.baseurl.org/download/yum-metadata-parser/
解压后执行python setup.py install,进行安装。
最后再次在Python执行import yum,如果不在抛出异常则表示修复成功。这时yum就可以正常使用了。