昨天刚刚安装好CentOS 6.4,本来打算在CentOS安装nagios,可是就在安装准备的环境的时候,用yum命令居然报错,错误代码如下:
[root@Centos yum.repos.d]# yum install -y php httpd gcc glibc glibc-common gd gd-devel php-devel php-mysql mysql mysql-server php-snmp php-pdo perl-DBD-MYSQL php-pear
Loaded plugins: fastestmirror, refresh-packagekit
Loading mirror speeds from cached hostfile
Traceback (most recent call last):
File "/usr/bin/yum", line 29, in <module>
yummain.user_main(sys.argv[1:], exit_code=True)
File "/usr/share/yum-cli/yummain.py", line 285, in user_main
errcode = main(args)
File "/usr/share/yum-cli/yummain.py", line 136, in main
result, resultmsgs = base.doCommands()
File "/usr/share/yum-cli/cli.py", line 434, in doCommands
self._getTs(needTsRemove)
File "/usr/lib/python2.6/site-packages/yum/depsolve.py", line 99, in _getTs
self._getTsInfo(remove_only)
File "/usr/lib/python2.6/site-packages/yum/depsolve.py", line 110, in _getTsInfo
pkgSack = self.pkgSack
File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 887, in <lambda>
pkgSack = property(fget=lambda self: self._getSacks(),
File "/usr/lib/python2.6/site-packages/yum/__init__.py", line 669, in _getSacks
self.repos.populateSack(which=repos)
File "/usr/lib/python2.6/site-packages/yum/repos.py", line 279, in populateSack
self.doSetup()
File "/usr/lib/python2.6/site-packages/yum/repos.py", line 105, in doSetup
self.ayum.plugins.run('postreposetup')
File "/usr/lib/python2.6/site-packages/yum/plugins.py", line 184, in run
func(conduitcls(self, self.base, conf, **kwargs))
File "/usr/lib/yum-plugins/fastestmirror.py", line 197, in postreposetup_hook
if downgrade_ftp and _len_non_ftp(repo.urls) == 1:
File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 699, in <lambda>
urls = property(fget=lambda self: self._geturls(),
File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 696, in _geturls
self._baseurlSetup()
File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 648, in _baseurlSetup
self.mirrorurls = self._replace_and_check_url(mirrorurls)
File "/usr/lib/python2.6/site-packages/yum/yumRepo.py", line 691, in _replace_and_check_url
print 'YumRepo Error: All mirror URLs are not using ftp, http[s] or file.\n Eg. %s' % misc.to_utf8(skipped)
File "/usr/lib64/python2.6/codecs.py", line 351, in write
data, consumed = self.encode(object, self.errors)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xd1 in position 72: ordinal not in range(128)
尝试了以下几种方法
方法一:
将 /etc/yum.conf 文件中的 plugins 设为 0 。
发现失败了,于是尝试了方法二:
yum clean all
发现问题还是没有解决,于是尝试了方法三:
cd /var/lib/rpm/
rm -i __db.*
yum clean all
yum history new
问题是解决