linux——rhel安装yum
在进行下面的操作之前,一定要确保网络正常,如果没有网络,下面的所有操作一个都不能实现。(下次会写个本地源的配置,这个就可以离线的状态下进行,需要用到系统的镜像文件,安装好系统之后不要删掉。)
首先配置网络源需要一些安装包,先简单罗列出来:
python-iniparse-0.3.1-2.1.el6.noarch.rpm
python-urlgrabber-3.9.1-11.el6.noarch.rpm
yum-3.2.29-73.el6.CentOS.noarch.rpm
yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm
可以到这个网站直接下载:http://mirrors.163.com/centos/6/os/x86_64/Packages/
现在基本工作已经做好了,接下来就进行安装和配置:
1、安装之前要先卸载系统本来的yum源,执行以下命令
[root@localhost ~]# rpm -aq|grep yum|xargs rpm -e –nodeps
2、查询一下是否完全卸载了
[root@localhost ~]# rpm -qa |grep yum
执行完这一条命令没有任何信息提示,就表示已经完全卸载了。(啰嗦一句,给刚接触Linux的提示一下,其他的可以飘过。在Linux下如果命令执行成功是不会出现任何提示,有错误才会提示)
3、先安装这下面的两个包
[root@localhost ~]# rpm -ivh python-iniparse-0.3.1-2.1.el6.noarch.rpm
[root@localhost ~]# rpm -ivh yum-metadata-parser-1.1.2-16.el6.x86_64.rpm
这两个包安装一般都不会出现问题,直接就通过(我是没出现问题,其他人如果出现问题,可以自行百度一下解决办法)
4、接下来尝试安装这两个包,一定要一起安装,也就是要在一条命令中执行,不可以跟上面的两个包一样分两条指令执行(网上的教程说是包的依赖关系)
[root@localhost ~]# rpm -ivh yum-3.2.29-73.el6.centos.noarch.rpm yum-plugin-fastestmirror-1.1.30-37.el6.noarch.rpm
如果能直接通过是最好的结果,可以省略不少麻烦,直接跳到第6步执行配置文件内容的替换。
不过应该不会那么顺利,我这里的错误提示是缺少了一个包的依赖
warning: yum-3.2.29-73.el6.centos.noarch.rpm: Header V3 RSA/SHA1 Signature, key ID c105b9de: NOKEY
error: Failed dependencies:
python-urlgrabber >= 3.9.1-10 is needed by yum-3.2.29-73.el6.centos.noarch
在 >= 左边的就是提示缺少依赖的包,找到名字为python-urlgrabber+版本号.rpm的包进行安装。这个提示,之前找到的教程是没有的,可能当时他们不存在这个问题。
还有可能会有其他的包依赖问题,根据个人的具体情况,找相应的安装包。
5、安装这个缺少的依赖包
[root@localhost ~]# rpm -ivh python-urlgrabber-3.9.1-11.el6.noarch.rpm
这里也可能会出现问题,当然没问题最好了。
这个网络yum源的配置是自己配置了两次,第一次是没有完全删除系统自带的yum源,到了这一步提示安装包冲突,之后就是完全删除了系统自带的yum源,重新从第3步开始安装一次,问题就解决了。第二次也就是按照现在的步骤,一开始就完全删除了系统自带的yum源,但是到了这一步还是提示安装冲突,网上的解决办法就是强制安装,也没有找到其他办法,所以也只有执行强制安装了。
提示信息都是这个
file /usr/lib/python2.6/site-packages/urlgrabber/grabber.py from install of python-urlgrabber-3.9.1-11.el6.noarch conflicts with file from package python-urlgrabber-3.9.1-9.el6.noarch
强制安装缺少的依赖包
[root@localhost ~]# rpm -ivh –force python-urlgrabber-3.9.1-11.el6.noarch.rpm
安装完之后,再执行第4步,应该就可以完全通过了。
6、更改配置文件 rhel-debuginfo.repo
更配置文件之前先进行备份(新手一定要记住这一点,更改系统配置文件之前一定要备份)
[root@localhost ~]# cp /etc/yum.repos.d/rhel-source.repo /etc/yum.repos.d/rhel-source.repo.bak
或者cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak(我用的第二个)
编辑该配置文件
[root@localhost ~]# vim /etc/yum.repos.d/rhel-source.repo或者vim /etc/yum.repos.d/CentOS-Base.repo(我用的第二个)
可能也有一些人装了系统之后,没有vim可以使用,但是vi是一定有的,所以上面的指令如果是出错提示没有该命令,可以用vi打开
[root@localhost ~]# vi /etc/yum.repos.d/rhel-source.repo
(vi或者vim的使用:上面的命令执行完成之后,会出现一个文本的编辑界面,按 i 键进入编辑模式,方向键进行光标移动,这里的复制和粘贴使用的是Ctrl+Shift+C、Ctrl+Shift+V ,然后按ESC键退出编辑模式,输入 “:wq” ,保存退出。)
将这里面的内容全部删掉,替换成以下内容
[base]
name=CentOS-$releasever - Base
baseurl=http://mirrors.163.com/centos/6/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#released updates
[updates]
name=CentOS-$releasever - Updates
baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
[extras]
name=CentOS-$releasever - Extras
baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.163.com/centos/RPM-GPG-KEY-CentOS-6
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
gpgcheck=1
enabled=0
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
这里也有要注意的地方,还是文件名的问题,版本更替是一定的会有的,在此过程中可能会产生文件名的更改,也许我现在可行的方法,到你用的时候就失效了,这时候你就得自己去核实路径文件名的正确与否了。因为我在这里也出过错,所以才能指出来,之前那些教程的baseurl路径都是baseurl=http://mirrors.163.com/centos/6.0/centosplus/$basearch/,以前是命名为6.0,现在已经更改为6,所以之前这个文件改好之后,在下一步进行验证的时候,也是提示连接失败。
这些内容更替好之后,保存退出就可以了。
7、清除原来的源配置
[root@localhost ~]# yum clean all
8、安装现在的yum源,这一步也是测试新安装的yum源有没有安装成功
[root@localhost ~]# yum install yum
如果这条命令能执行成功,就说明新安装的yum源已经正确配置好了。
9、更新yum源到本地
[root@localhost ~]# yum list
我到这里就已经完全没有问题了,如果有其他问题,到网上找找解决办法。这个可能也会随着时间的推移而失效,所以能提供只是个大概的方向,具体细节只能具体分析。
yum源使用的几个报错小总结
服务器上的yum突然不好使用,使用yum时有如下几个保持,解决方案如下:
1)Error: Cannot retrieve repository metadata (repomd.xml) for repository: rpmforge.
[root@bastion-IDC src]# yum list
......
Could not retrieve mirrorlist http://mirrorlist.repoforge.org/el6/mirrors-rpmforge error was
14: PYCURL ERROR 7 - "couldn't connect to host"
http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/repodata/repomd.xml: [Errno 14]
PYCURL ERROR 7 - "couldn't connect to host"
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: rpmforge.
Please verify its path and try again
解决办法:(或者把/etc/yum.repos.d下的文件全部删除,然后将能正常使用yum的同类服务器的这个目录下的文件全部拷贝过来,然后yum clean all 和yum makecache 即可)
下载新的CentOS-Base.repo 到/etc/yum.repos.d/
[root@bastion-IDC src]# cd /etc/yum.repos.d/
其实就是将yum源更改为阿里云的yum源,操作如下:
1)centos5.*的下载连接:
[root@bastion-IDC yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-5.repo
2)centos6.*的下载连接:
[root@bastion-IDC yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-6.repo
3)centos7.*的下载连接:
[root@bastion-IDC yum.repos.d]# wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
然后执行以下命令:
[root@bastion-IDC yum.repos.d]# rpm -e rpmforge-release --nodeps
-------------------------------------------------------------------------------------------------------------
如果报错:
error: package rpmforge-release is not installed
解决办法:安装这个源
下载地址:https://pan.baidu.com/s/1pKBtm11
提取密码:erte
[root@bastion-IDC yum.repos.d]# rpm -ivh rpmforge-release-0.5.2-2.el6.rf.x86_64.rpm
-------------------------------------------------------------------------------------------------------------
[root@bastion-IDC yum.repos.d]# yum clean all
[root@bastion-IDC yum.repos.d]# yum makecache //将服务器上的软件包信息缓存到本地,以提高搜索安装软件的速度
[root@bastion-IDC yum.repos.d]# yum update
最后再次使用yum就ok了
[root@bastion-IDC yum.repos.d]# yum list
2)UnicodeDecodeError: 'ascii' codec can't decode ... ordinal not in range
|
1
2
3
4
5
6
7
8
9
10
11
|
在使用yum部署环境的时候,出现了报错:UnicodeDecodeError: 'ascii' codec can't decode ... ordinal not in range解决办法:[root@kvmserver ~]# ll /var/lib/rpm/*db*-rw-r--r-- 1 root root 73728 Aug 15 14:52 /var/lib/rpm/__db.001-rw-r--r-- 1 root root 270336 Aug 15 14:52 /var/lib/rpm/__db.002-rw-r--r-- 1 root root 1318912 Aug 15 14:52 /var/lib/rpm/__db.003-rw-r--r-- 1 root root 778240 Aug 15 14:52 /var/lib/rpm/__db.004 [root@kvmserver ~]# rm -f __db.*[root@kvmserver ~]# yum clean all |
3)Error: xz compression not available
|
1
2
3
4
5
6
7
|
测试服务器(centos6.5)经过一段时间的折腾,有一天在上面进行yum操作时突然出现下面的报错:Error: xz compression not available最后经过一番排查,发现原因是之前安装软件时错误安装了centos7版本的软件,软件版本不兼容,这才导致了yum不可用。解决措施:首先查看/root/install.log安装日志,找出版本不兼容软件,然后将其卸载就ok了。另外:如果因为安装epel导致此类问题,可以进行如下删除操作:# rm -rf /etc/yum.repos.d/epel* |
公司提供的CentOS VM中,/etc/yum.repos.d 下 只有一个build.repo,其中提供的yum 源只有公司内部的几个源,很多包在这些源中都找不到。于是要添加别的源,下面的帖子中介绍了如何在CentOS中添加中科大、搜狐和163的yum源:http://www.husw.net/blog/post/1386/。摘录如下:
本文章介绍的yum源支持的版本是CentOS 6系列,理论上支持RHEL6系列。
更新方法如下:
先进入yum源配置目录
备份系统自带的yum源
下载其他更快的yum源
中科大的yum源:
163的yum源:
sohu的yum源
更新完yum源后,建议更新一下,使操作立即生效
Loaded plugins: fastestmirrorRepository base is listed more than once in the configurationRepository updates is listed more than once in the configurationRepository extras is listed more than once in the configurationRepository centosplus is listed more than once in the configurationRepository contrib is listed more than once in the configurationLoading mirror speeds from cached hostfile* addons: mirrors.163.com* base: mirror.metrocast.net* extras: mirror.beyondhosting.net* fasttrack: centos.vipernetworksystems.com* updates: centos.vipernetworksystems.comhttp://mirrors.163.com/centos/6/addons/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"Trying other mirror.http://mirror.centos.org/centos/6/addons/x86_64/repodata/repomd.xml: [Errno 14] PYCURL ERROR 22 - "The requested URL returned error: 404"Trying other mirror.Error: Cannot retrieve repository metadata (repomd.xml) for repository: addons. Please verify its path and try again
#[addons]#name=CentOS-$releasever - Addons - 163.com#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons#baseurl=http://mirrors.163.com/centos/$releasever/addons/$basearch/#gpgcheck=1#pgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5
#[addons]#name=CentOS-$releasever - Addons - sohu.com#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=addons#baseurl=http://mirrors.sohu.com/centos/$releasever/addons/$basearch/#gpgcheck=1#gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5CentOS-Base-sohu.repo
vim-X11.x86_64 : The VIM version of the vi editor for the X Window Systemvim-common.x86_64 : The common files needed by any version of the VIM editorvim-enhanced.x86_64 : A version of the VIM editor which includes recent enhancementsvim-minimal.x86_64 : A minimal version of the VIM editor今天帮同事搭建环境时碰到yum更新出问题了,报如下错误:
YumRepo Error: All mirror URLs are not using ftp, http[s] or file.
Eg. $releasever is not a valid release or hasnt been released yet/
removing mirrorlist with no valid mirrors: /var/cache/yum/base/mirrorlist.txt
Error: Cannot retrieve repository metadata (repomd.xml) for repository: base. Please verify its path and try again从字面意思是看是不能正确连接到http或是ftp的真实地址上。
1.有可能是防火墙阻碍了出网http请求或是ftp请求,请检查网关防火墙。
2.有可能是dns不对,无法正常解析,换成8.8.4.4
3.系统取不到Release号
我这里碰到真正的原因是就是3,系统读取不到Release号。
正常一般可以看到版本号
# 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.0-noarch
Distributor ID: CentOS
Description: CentOS release 6.2 (Final)
Release: 6.2
Codename: Final但是同事的环境上确是,原因就不说了,又想骂人了,哎。
LSB Version: :core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch
Distributor ID: n/a
Description: n/a
Release: n/a
Codename: n/a而/etc/yum.repos.d下的*.repo源文件中都是baseurl都是带变量的
baseurl=http://mirrors.163.com/centos/$releasever/contrib/$basearch/
所以yum去尝试读取xml文件自然失败了。
# wget http://mirrors.163.com/centos/%releasever/os/x86_64/repodata/repomd.xml
--2013-01-24 10:50:10-- http://mirrors.163.com/centos/%releasever/os/x86_64/repodata/repomd.xml
Resolving mirrors.163.com... 123.58.173.89, 123.58.173.106
Connecting to mirrors.163.com|123.58.173.89|:80... connected.
HTTP request sent, awaiting response... 404 Not Found
2013-01-24 10:50:11 ERROR 404: Not Found.所以需要修改*.repo源文件中将$releasever变量全替换成6即可正常yum了。
cat /etc/yum.repos.d/CentOS6-Base-163.repo
# CentOS-Base.repo
[base]
name=CentOS-6 - Base - 163.com
baseurl=http://mirrors.163.com/centos/6/os/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=os
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6#released updates
[updates]
name=CentOS-6 - Updates - 163.com
baseurl=http://mirrors.163.com/centos/6/updates/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=updates
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6#additional packages that may be useful
[extras]
name=CentOS-6 - Extras - 163.com
baseurl=http://mirrors.163.com/centos/6/extras/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=extras
gpgcheck=1
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6 - Plus - 163.com
baseurl=http://mirrors.163.com/centos/6/centosplus/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=centosplus
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6#contrib - packages by Centos Users
[contrib]
name=CentOS-6 - Contrib - 163.com
baseurl=http://mirrors.163.com/centos/6/contrib/$basearch/
#mirrorlist=http://mirrorlist.centos.org/?release=6&arch=$basearch&repo=contrib
gpgcheck=1
enabled=0
gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6看看这次更新缓存就成功了。
# yum makecache
base | 3.7 kB 00:00
base/filelists_db | 5.9 MB 00:04
base/primary_db | 4.5 MB 00:03
base/other_db | 2.6 MB 00:01
base/group_gz | 211 kB 00:00
extras | 3.5 kB 00:00
extras/filelists_db | 13 kB 00:00
extras/prestodelta | 1.3 kB 00:00
extras/primary_db | 23 kB 00:00
extras/other_db | 7.9 kB 00:00
updates | 3.5 kB 00:00
updates/filelists_db | 3.6 MB 00:02
updates/prestodelta | 642 kB 00:00
updates/primary_db | 4.6 MB 00:03
updates/other_db | 473 kB 00:00yum时出现以下错误:
Could not retrieve mirrorlist http://apt.sw.be/redhat/el6/en/mirrors-rpmforge error was
14: PYCURL ERROR 6 – “Couldn’t resolve host ‘apt.sw.be'”
* base: mirror.sjc02.svwh.net
* extras: mirror.sjc02.svwh.net
* updates: repos.lax.quadranet.com
http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/repodata/repomd.xml: [Errno 14] PYCURL ERROR 6 – “Couldn’t resolve host ‘apt.sw.be'”
Trying other mirror.
Error: Cannot retrieve repository metadata (repomd.xml) for repository: rpmforge. Please verify its path and try again解决方法:
打开
/etc/yum.repos.d
改名 rpmforge.repo为 rpmforge.repo.bak
故障解决
linux——rhel安装yum的更多相关文章
- Linux下安装yum工具
Linux下安装yum工具 http://blog.csdn.net/caoshichaocaoshichao/article/details/13171919
- Red Hat Enterprise Linux(RHEL)中yum的repo文件详解
Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器.基于RPM包管理,能够从指定的服务器自动下载 ...
- linux如何安装yum
yum全称Yellow dog Updater Modified,yum的主要用途是对rpm包进行管理,包括安装.卸载.升级等.linux安装yum也较为简单,具体如下: 工具/原料 1.电脑: 2. ...
- 【Linux】Linux 在线安装yum
Linux如何安装软件? 一.RPM安装 优点: 安装过程很简单 缺点: 需要自己寻找和系统版本对应的RPM包 安装过程中需要解决包的依赖问题(例如tftp包) 二.yum在线安装 软件包仓库 仓库的 ...
- Linux软件安装-yum安装
虽然RPM包安装软件很方便.快捷,但是还是需要现有安装包才能安装.为了更为方便的安装软件,发展出了利用网络自动安装的方式--yum安装. 使用yum安装的前提是机器可以上网. 1.配置yum源 在/e ...
- linux 值安装yum包
1. 创建文件,挂载 rhel7-repo-iso [root@rhel7 ~]# mkdir /media/rhel7-repo-iso [root@rhel7 ~]# mount /dev/cd ...
- .NET平台系列27:在 Linux 上安装 .NET Core/.NET5/.NET6
系列目录 [已更新最新开发文章,点击查看详细] .NET 在不同的 Linux 发行版上可用. 大多数 Linux 平台和发行版每年都有一个主要版本,并提供用于安装 .NET 的包管理器. 本 ...
- mac mamp环境 和linux下 安装redis 和可视化工具 Redis Desktop Manager
mac下安装 第一步:安装redis 1. brew install redis 2.启动服务/usr/local/opt/redis/bin/redis-server 3.配置redis密码访问 编 ...
- Linux软件安装,RPM与YUM
为了防止无良网站的爬虫抓取文章,特此标识,转载请注明文章出处.LaplaceDemon/SJQ. http://www.cnblogs.com/shijiaqi1066/p/3843955.html ...
随机推荐
- tcp客户端socket
import socket # 和udp的区别显而易见,udp发送和接收的是一个元祖,因为udp是不建立连接的,只有得到了对方的端口和ip才能进行沟通. # 而tcp不是,tcp发送和接受的是一个字符 ...
- 正则表达式re.S的用法
正则表达式re.S的用法 在Python的正则表达式中,有一个参数为re.S.它表示"."(不包含外侧双引号,下同)的作用扩展到整个字符串,包括"\n".看如下 ...
- python-无参函数
#!/usr/local/bin/python3 # -*- coding:utf-8 -*- ''' #-----------定义函数---------- def func1(): "te ...
- stark组件(11):组合搜索
效果图: 新增函数和类 Option 获取字段的对象或元组 SearchGroupRow 封装数据,展示到前端 get_search_group 获取组合搜索的字段 get_search_group_ ...
- POJ:3320-Jessica's Reading Problem(尺取法)
Jessica's Reading Problem Time Limit: 1000MS Memory Limit: 65536K Total Submissions: 15224 Accepted: ...
- POJ:3268-Silver Cow Party
Silver Cow Party Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 26184 Accepted: 11963 De ...
- 适合pc端的移动拖拽,分享一下。
h5新加的特性拖拽事件,但是只适合PC端哦.不多说了上代码 <!DOCTYPE html> <html> <head> <title></titl ...
- J.U.C 系列之Atomic原子类
一 什么是原子类? 所谓原子类必然是具有原子性的类,原子性操作--原子操作,百度百科中给的定义如下 "原子操作(atomic operation)是不需要synchronized" ...
- UOJ #2321. 「清华集训 2017」无限之环
首先裂点表示四个方向 一条边上都有插头或者都不有插头,相当于满足流量平衡 最大流 = 插头个数*2时有解 然后求最小费用最大流 黑白染色分别连原点汇点
- Mac 小技巧
本文的大部分技巧来自于池建强老师的<MacTalk.人生元编程>,感谢他的辛苦付出,本文多系整理而已. 终端输入说英语 说英语时我们当然希望有标准发音.在Mac中不需要字典,直接在终端里输 ...
转载▼