redhat 7.2更新yum源时踩的坑

一、update yum

1、先查看redhat7.2中yum的包版本
[[email protected] jiayimeng]#  rpm -qa | grep yum
yum-rhn-plugin-2.0.1-5.el7.noarch
yum-metadata-parser-1.1.4-10.el7.x86_64
yum-langpacks-0.4.2-4.el7.noarch
yum-utils-1.1.31-34.el7.noarch
yum-3.4.3-132.el7.noarch

2、删除原有的yum包
[[email protected] jiayimeng]# rpm -e yum-rhn-plugin-2.0.1-5.el7.noarch yum-metadata-parser-1.1.4-10.el7.x86_64 yum-langpacks-0.4.2-4.el7.noarch yum-utils-1.1.31-34.el7.noarch yum-3.4.3-132.el7.noarch --nodeps
警告:/etc/yum/pluginconf.d/langpacks.conf 已另存为 /etc/yum/pluginconf.d/langpacks.conf.rpmsave

3、在各大开源镜像站下载对应包
163: 
aliyun: 
中科大:

4、下载并ftp到redhat server
[[email protected] jiayimeng]# ll
总用量 1472
-rw-r--r--. 1 root root 1288436 12月 22 17:13 yum-3.4.3-154.el7.centos.noarch.rpm
-rw-r--r--. 1 root root   28348 12月 22 17:13 yum-metadata-parser-1.1.4-10.el7.x86_64.rpm
-rw-r--r--. 1 root root   32776 12月 22 17:13 yum-plugin-fastestmirror-1.1.31-42.el7.noarch.rpm
-rw-r--r--. 1 root root   25592 12月 22 17:13 yum-updateonboot-1.1.31-42.el7.noarch.rpm
-rw-r--r--. 1 root root  120184 12月 22 17:13 yum-utils-1.1.31-42.el7.noarch.rpm

5、安装软件包
[[email protected] jiayimeng]# rpm -ivh yum-*
警告:yum-3.4.3-154.el7.centos.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
错误:依赖检测失败:
    python-urlgrabber >= 3.10-8 被 yum-3.4.3-154.el7.centos.noarch 需要
    rpm >= 0:4.11.3-22 被 yum-3.4.3-154.el7.centos.noarch 需要
    
6、报错,依赖包的版本不符
解决方案有两个,一是在网上找低版本rpm包安装,二是将所依赖的python-urlgrabber和rpm包升级,我这里用第二个方法
----下载----
[[email protected] jiayimeng]# wget http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-4.11.3-25.el7.x86_64.rpm
--2017-12-22 17:18:59--  http://mirrors.163.com/centos/7/os/x86_64/Packages/rpm-4.11.3-25.el7.x86_64.rpm
正在解析主机 mirrors.163.com (mirrors.163.com)... 123.58.190.235, 123.58.190.228, 123.58.190.236, ...
正在连接 mirrors.163.com (mirrors.163.com)|123.58.190.235|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:1216680 (1.2M) [application/x-redhat-package-manager]
正在保存至: “rpm-4.11.3-25.el7.x86_64.rpm”

100%[====================>] 1,216,680   2.29MB/s 用时 0.5s   

2017-12-22 17:19:00 (2.29 MB/s) - 已保存 “rpm-4.11.3-25.el7.x86_64.rpm” [1216680/1216680])

[[email protected] jiayimeng]# wget http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-8.el7.noarch.rpm
--2017-12-22 17:19:44--  http://mirrors.163.com/centos/7/os/x86_64/Packages/python-urlgrabber-3.10-8.el7.noarch.rpm
正在解析主机 mirrors.163.com (mirrors.163.com)... 123.58.190.235, 123.58.190.234, 123.58.190.237, ...
正在连接 mirrors.163.com (mirrors.163.com)|123.58.190.235|:80... 已连接。
已发出 HTTP 请求,正在等待回应... 200 OK
长度:110540 (108K) [application/x-redhat-package-manager]
正在保存至: “python-urlgrabber-3.10-8.el7.noarch.rpm”

100%[====================>] 110,540      462KB/s 用时 0.2s   

2017-12-22 17:19:44 (462 KB/s) - 已保存 “python-urlgrabber-3.10-8.el7.noarch.rpm” [110540/110540])

----升级----
[[email protected] jiayimeng]# rpm -Uvh rpm-4.11.3-25.el7.x86_64.rpm --nodeps
警告:rpm-4.11.3-25.el7.x86_64.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:rpm-4.11.3-25.el7                ################################# [ 50%]
正在清理/删除...
   2:rpm-4.11.3-17.el7                ################################# [100%]
[[email protected] jiayimeng]# rpm -Uvh python-urlgrabber-3.10-8.el7.noarch.rpm --nodeps
警告:python-urlgrabber-3.10-8.el7.noarch.rpm: 头V3 RSA/SHA256 Signature, 密钥 ID f4a80eb5: NOKEY
准备中...                          ################################# [100%]
正在升级/安装...
   1:python-urlgrabber-3.10-8.el7     ################################# [ 50%]
正在清理/删除...
   2:python-urlgrabber-3.10-7.el7     ################################# [100%]
   

7、更新yum源
[[email protected] jiayimeng]# rm /etc/yum.repos.d/redhat.repo 
rm:是否删除普通文件 "/etc/yum.repos.d/redhat.repo"?y
[[email protected] jiayimeng]# 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.com
#mirrorlist=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

8、清除yum缓存
[[email protected] ~]# yum clean all

9、生成缓存
[[email protected] ~]# yum makecache 
已加载插件:fastestmirror, product-id, search-disabled-repos,
          : subscription-manager
This system is not registered to Red Hat Subscription Management. You can use subscription-manager to register.
base                                   | 3.6 kB     00:00     
extras                                 | 3.4 kB     00:00     
updates                                | 3.4 kB     00:00     
(1/12): base/x86_64/group_gz             | 156 kB   00:00     
(2/12): base/x86_64/filelists_db         | 6.7 MB   00:02     
(3/12): base/x86_64/primary_db           | 5.7 MB   00:01     
(4/12): base/x86_64/other_db             | 2.5 MB   00:00     
(5/12): extras/x86_64/prestodelta        |  71 kB   00:00     
(6/12): extras/x86_64/filelists_db       | 528 kB   00:00     
(7/12): extras/x86_64/other_db           |  96 kB   00:00     
(8/12): extras/x86_64/primary_db         | 145 kB   00:00     
(9/12): updates/x86_64/prestodelta       | 605 kB   00:01     
(10/12): updates/x86_64/filelists_db     | 2.8 MB   00:01     
(11/12): updates/x86_64/other_db         | 492 kB   00:00     
(12/12): updates/x86_64/primary_db       | 4.6 MB   00:00     
Determining fastest mirrors
元数据缓存已建立

二、踩坑

在第6步报错时,我在安装新版本的rpm包时,未使用-Uvh参数,而是使用-ivh参数附加--nodeps,这时安装失败,按照网上的方法,加上了--force参数,导致rpm包依赖出现问题报错为

/usr/lib64/python2.7/site-packages/rpm/_rpm.so: 未定义符号: rpmpkgVerifySigs

这样的话,水平有限,只能重装解决。总结教训,rpm的强制忽略依赖关系参数易导致版本间出现问题。铭记!

时间: 2024-10-10 12:54:51

redhat 7.2更新yum源时踩的坑的相关文章

创建本地yum源时遇到的坑

RHEL有时候使用自定义的YUM源是很方便的事情. yum install createrepo createrepo /your/repo/directory/ 不过由于粗心,本人在使用时遇到很郁闷的坑,错误如下: [[email protected] rpms]# yum install openssl Loaded plugins: product-id, security, subscription-manager This system is not registered to Red

CentOS更新yum源的方法

一.下载国内比较稳定的yum源,我这里下载163的源 同时我使用的是CentOS6.2的x86_64版本,所以下载的是CentOS6-Base-163.repo 请根据,如下方法确认自己系统的版本 [[email protected] ~]# lsb_release -a LSB Version: :core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4

在VMware中为Redhat HAT配置本地yum源

在VMware中为Redhat HAT配置本地yum源 今天准备使用CM安装大数据环境,到需要几台机器都使用同一套yum源才可以,所以想到将Redhat镜像文件拷贝到虚拟机中,在挂起使用,最后通过http分享给其他虚拟机.后再想想,这样做真的很愚蠢,首先在虚拟机安装的时候我已经挂起过一次镜像啦,所以我只要在每个虚拟机中再挂起一下,直接配置yum源就可以,也不用将iso拷贝到虚拟机中,减少磁盘占用.所以现在就来说说怎么做: 一.安装前检查,首先需要确保你的虚拟机已经加载了本地镜像,如下图所示: 注

替换yum源时出现的错误

今天在redhat 5.4_64系统替换yum源的时候出现: [[email protected] yum.repos.d]# yum clean metadata There was a problem importing one of the Python modules required to run yum. The error leading to this problem was: /usr/lib/python2.4/site-packages/_sqlitecache.so: w

centos6.4更新yum源来搭建高版本lamp环境

服务器使用centos6的话,使用yum方式搭建lamp环境,可能会面临软件版本过低的问题,这时可以选择新的yum源(这里选择的是Webtatic EL6 YUM源),然后选择安装较高版本的mysql.php等软件. 步骤一:更新yum源 1.执行以下命令更新yum源为Webtatic EL6 YUM源: rpm -Uvh http://repo.webtatic.com/yum/el6/latest.rpm 步骤二:查看yum源中软件包可以下载安装的版本 1.查看可以安装的php版本,如: y

ubuntu12.04更新软件源时出现校验和不符

在执行update命令之后,出现系统校验和不符,网上找了一些方法,最后在大神的帮助下终于解决了!! 1.更改 /etc/apt/apt.conf.d/00aptitude 文件,在最后一行加入: Acquire::CompressionTypes::Order "gz"; 然后执行 update就可以了. (我是用这个方法解决的) 2.在软件更新管理器中点击右下角的"设置",在其它软件中把两个"独立"前边的对勾去掉.这个方法解决了一些朋友的问题,

redhat配置centos网络yum源

方案一: 配置网络yum源rpm -ivh vsftpd-2.2.2-6.el6_0.1.x86_64service vsftpd restartchkconfig --level 35 vsftpd oncd /var/ftp/pub/mkdir yum把上面的挂载点改成/var/ftp/pub/yumvim /etc/yum.repos.d/rhel-source.repo[server]name=serverbaserul=ftp://pub/yum/Server/  #(注意要挂载光驱)

RedHat 7 配置本地yum源

本文配置本地yum源是把redhat 7的系统盘内容复制到服务器硬盘的目录/RH7ISO中,然后配置yum指向该目录.首先挂载光驱到/mnt目录 :mount /dev/cdrom /mnt 复制系统盘的内容到/RH7ISO目录中:cp -R /mnt/* RH7ISO 进入yum配置目录 : cd /etc/yum.repos.d/   建立yum配置文件: touch  rh7ISO.repo 编辑配置文件,添加以下内容: vi  rh7ISO.repo 清除yum缓存: yum clean

Redhat 6配置本地Yum源

注明:我的方法适用于iso镜像(光盘或光盘镜像:iso9660) 1.挂载(mount) 其它的mount方法可參见此链接 http://www.jb51.net/os/RedHat/1109.html #mkdir /mnt/vcdrom 说明:创建一个文件夹作为挂接点 #mount -o loop -t iso9660 /home/sunky/mydisk.iso /mnt/vcdrom 说明:使用文件夹/mnt/vcdrom.就可以訪问盘镜像文件mydisk.iso中的全部文件. 2.開始