title: RedHat 7.3 更新yum源
time: 2018.3.15
-
查看所有yum包
[root@bogon ~]# rpm -qa | grep yum yum-rhn-plugin-2.0.1-6.el7.noarch yum-3.4.3-150.el7.noarch yum-utils-1.1.31-40.el7.noarch PackageKit-yum-1.0.7-6.el7.x86_64 yum-langpacks-0.4.2-7.el7.noarch yum-metadata-parser-1.1.4-10.el7.x86_64 -
删除原有yum包
[root@bogon ~]# rpm -e yum-rhn-plugin-2.0.1-6.el7.noarch yum-3.4.3-150.el7.noarch yum-utils-1.1.31-40.el7.noarch PackageKit-yum-1.0.7-6.el7.x86_64 yum-langpacks-0.4.2-7.el7.noarch yum-metadata-parser-1.1.4-10.el7.x86_64 --nodeps - 进入网易163源镜像地址寻找所需包:
- 点击
centos - 点击
7/ - 点击
os/ - 点击
x86_64/ - 点击
Packages/ -
ctrl+f 搜索需要的包, 如下:
yum-plugin-fastestmirror
yum-updateonboot
yum-utils
yum-metadata-parser
yum-3.4.3-150.el7
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-plugin-fastestmirror-1.1.31-42.el7.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-updateonboot-1.1.31-42.el7.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-utils-1.1.31-42.el7.noarch.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/yum-3.4.3-154.el7.centos.noarch.rpm
-
安装软件包
rpm -ivh yum-* # 报错, 依赖包的版本不符: rpm >= 0:4.11.3-22 is needed by yum-3.4.3-154.el7.centos.noarch -
解决方法: 将所依赖的python-urlgrabber和rpm包升级
wget http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-4.11.3-25.el7.x86_64.rpm wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-8.el7.noarch.rpm # 安装: rpm -Uvh rpm-4.11.3-25.el7.x86_64.rpm --nodeps rpm -Uvh python-urlgrabber-3.10-8.el7.noarch.rpm --nodeps -
重新安装软件包
rpm -ivh yum-* -
更新yum源
```
rm /etc/yum.repos.d/redhat.repo
vim /etc/yum.repos.d/CentOS-Base.repo内容:
CentOS-Base.repo
The mirror system uses the connecting IP address of the client and the
update status of each mirror to pick mirrors that are updated to and
geographically close to the client. You should use this for CentOS updates
unless you are manually picking other mirrors.
If the mirrorlist= does not work for you, as a fall back you can try the
remarked out baseurl= line instead.
[base]
name=CentOS-$7 - Base - 163.commirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=os
baseurl=http://mirrors.163.com/centos/7/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
released updates
[updates]
name=CentOS-$7 - Updates - 163.com
mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=updates
baseurl=http://mirrors.163.com/centos/7/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
additional packages that may be useful
[extras]
name=CentOS-$7 - Extras - 163.com
mirrorlist=http://mirrorlist.centos.org/?release=$7&arch=$basearch&repo=extras
baseurl=http://mirrors.163.com/centos/7/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$7 - Plus - 163.com
baseurl=http://mirrors.163.com/centos/7/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-7
- 清楚yum缓存
yum clean all
- 生成缓存
yum makecache
- 更新成功, 可以安装软件了
yum install tree
tree
```