以下腳本使用前請用dos2unix進行轉碼
centos系列可以不用轉碼
CentOS 6.4 rpm -aq|grep yum|xargs rpm -e --nodeps//此命令爲卸載自帶的yum
#總結本文的目的是由於我自己yum故障,在網上找了很多方法均不完全活着根本不能成功,故此總結於此,希望能對才入門的同學有所幫助;我也是才接觸CENTOS不久
我會把我&&Linux的點點滴滴記錄下來,希望能幫助
-------------------靈魂超越者--------------------------------
#!/bin/bash
PATH=~/bin:/usr/lib64/qt-3.3/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin:/root/bin
export PATH
# Check if user is root
if [ $(id -u) != "0" ]; then
echo "Error: You must be root to run this script"
exit 1
fi
clear
echo "========================================================================="
echo "Replace Redhat Enterprise Yum to CentOS Yum and Repos, Written by Licess"
echo "========================================================================="
# uninstall rhel yum
echo "Uninstall Rhel Yum......"
rpm -qa|grep yum|xargs rpm -e --nodeps
# delete old rpm
echo "Clean old cache......"
rm -rf python-iniparse-0.3.1-2.1.el6.noarch.rpm
rm -rf yum-metadata-parser-1.1.2-16.el6.x86_64.rpm yum-3.2.29-40.el6.centos.noarch.rpm yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm
# change directory for download
echo "change directory for download......"
mkdir /root/tmp4yuan/
cd /root/tmp4yuan/
# download CentOS Yum
echo "Download Python-iniparse......"
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/python-iniparse-0.3.1-2.1.el6.noarch.rpm
echo "Download yum-metadata-parse......"
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
echo "Download yum......"
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-3.2.29-40.el6.centos.noarch.rpm
echo "Download yum fastmirror......"
wget http://mirrors.163.com/centos/6/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm
# install CentOS Yum
echo "Installing......"
rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm yum-3.2.29-40.el6.centos.noarch.rpm yum-plugin-fastestmirror-1.1.30-14.el6.noarch.rpm
# replace repos
rm -rf /etc/yum.repos.d/CentOS-Base.repo
echo "[base]
name=CentOS-6.4 - Base - 163.com
baseurl=http://mirrors.163.com/centos/6.4/os/x86_64/
#mirrorlist=http://mirrors.163.com/?release=6.4&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#released updates
[updates]
name=CentOS-6.4 - Updates - 163.com
baseurl=http://mirrors.163.com/centos/6.4/updates/x86_64/
#mirrorlist=http://mirrors.163.com/?release=6.4&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#additional packages that may be useful
[extras]
name=CentOS-6.4 - Extras - 163.com
baseurl=http://mirrors.163.com/centos/6.4/extras/x86_64/
#mirrorlist=http://mirrors.163.com/?release=6.4&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6.4 - Plus - 163.com
baseurl=http://mirrors.163.com/centos/6.4/centosplus/x86_64/
#mirrorlist=http://mirrors.163.com/?release=6.4&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#contrib - packages by Centos Users
[contrib]
name=CentOS-6.4 - Contrib - 163.com
baseurl=http://mirrors.163.com/centos/6.4/contrib/x86_64/
#mirrorlist=http://mirrors.163.com/?release=6.4&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6" >> /etc/yum.repos.d/CentOS-Base.repo
#####
yum clean all
yum makecache
#yum update
# delete download directory
echo "delete download directory......"
rm -rf /root/tmp4yuan/
echo "=========================================================================="
echo "You have successfully replace RedhatEnterprise Yum to CentOS yum and repos"
echo "=========================================================================="
sh 該腳本後如若還有問題,那可能是版本問題以下的方法對此問題可能有幫助
1.下載repo文件
1.wget
http://mirrors.163.com/.help/CentOS6-Base-163.repo #你也可以將此地址更換
2.備份並替換系統的repo文件
1.[root@localhost ~]# cd /etc/yum.repos.d/
2.[root@localhost ~]# mv CentOS-Base.repo CentOS-Base.repo.bak
3.[root@localhost ~]# mv CentOS6-Base-163.repo CentOS-Base.repo
3.執行yum源更新
1.[root@localhost ~]# yum clean all
2.[root@localhost ~]# yum makecache
3.[root@localhost ~]# yum update
希望對大家有所幫助!