yum出现的错误

本文详细介绍了在使用YUM命令安装Linux软件时遇到的问题,包括错误信息解析、常见故障排查步骤及解决方法,例如处理yum锁冲突、更新yum仓库、通过yum搜索指定软件包名、启用EPEL源解决缺失包问题、解决yum使用中出现的Segmentation fault错误,以及DNS配置问题导致的yum无法获取镜像列表等。通过遵循文中提供的步骤,读者可以有效解决在Linux系统中使用YUM命令时遇到的一系列常见问题。

文章出处:http://blog.youkuaiyun.com/rachel_luo/article/details/8692744

yum (Yellowdog Updater Modified)是一个集与查找,安装,更新和删除程序的Linux软件。它运行在RPM包兼容的Linux发行版本上,如:RedHat, Fedora, SUSE, CentOS, Mandriva。

1.another app is currently holding the yum lock;waiting for it to exit...

则输入:#rm -f /var/run/yum.pid ,然后就可以使用yum了。

2.yum 安装软件时,报错:No package XXX available.

[root@localhost ~]# yum -y install redis
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * addons: mirrors.163.com
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
Setting up Install Process
No package redis available.
Nothing to do

解决方法:

1).先去更新一下yum仓库:
#yum -y update


2).如果还是不行,可能是你安装的时候包名不够详细,可以通过yum的查找参数来列出对应软件的相关包名,拿vim的安装为例:

# yum search vim
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
* base: mirror.hosting90.cz
* extras: mirror.hosting90.cz
* updates: mirror.hosting90.cz
===================== Matched: vim ===================
vim-X11.x86_64 : The VIM version of the vi editor for the X Window System.
vim-common.x86_64 : The common files needed by any version of the VIM editor.
vim-enhanced.x86_64 : A version of the VIM editor which includes recent
: enhancements.

vim-minimal.x86_64 : A minimal version of the VIM editor.

找到包名后,执行以下命令即可:

#yum -y install vim-enhanced.x86_64
以上命令就能执行成功了。

其他程序也同样可以先进行yum查找,再通过匹配详细包名来进行安装,就不会出现上述错误了。


3)如果还是不行,应该是 EPEL未被启动,且指示的 rpm包不可用
具体原因:使用yum搜索某些rpm包,找不到包是因为CentOS是RedHat企业版编译过来的,去掉了所有关于版权问题的东西。安装EPEL后可以很好的解决这个问题。EPEL(Extra Packages for Enterprise Linux )即企业版Linux的扩展包,提供了很多可共Centos使用的组件,安装完这个以后基本常用的rpm都可以找到。
下载与安装EPEL的rpm文件包
1.下载:
#wget http://mirrors.ustc.edu.cn/fedora/epel/5/i386/epel-release-5-4.noarch.rpm
2.安装:
#rpm -ivh epel-release-5-4.noarch.rpm
安装完毕后,可以使用yum安装软件。

注意:

1. epel的版本要与centos的版本相对应,否则安装失败,即centos5版本要对应epel5版本。

2. rpm安装完后,rpm -ql  epel*,确提示未安装,此时要导入rpm的签名信息

#rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6 (root身份执行)


3.YUM 提示 Segmentation fault (段错误)
本来用得好好的yum命令,突然不能用了,报出:Segmentation fault (段错误)。
通过一番查找,原因终于找到:是有人在服务器上安装了新版本的zlib包,正巧我执行过”#yum clean all”命令。
解决办法:
#vi /etc/ld.so.conf,注释掉对应的行:/usr/local/zlib/lib
#ldconfig
#yum update
yum完全恢复正常。

说明:yum使用的是老版本的 zlib 库。如果有用户再一次清除了 yum 缓存,那么再使用yum安装软件时依然会报段错误。


4.执行yum update,报如下错误:
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=6&arch=x86_64&repo=os error was
14: PYCURL ERROR 6 - "Couldn't resolve host 'mirrorlist.centos.org'"

Error: Cannot find a valid baseurl for repo: base

原因是:DNS未配置好;
解决方案:重新配置DNS;
#vi /etc/resolv.conf
编辑文件内容为:
search localdomain
nameserver 202.101.172.35
nameserver 202.101.172.47  
保存并退出;
#service network restart   

重启网卡。


<think>我们正在解决yum运行时出现的'could not resolve host'问题,特别是针对aliyun的DNS解析问题。 根据引用内容,我们总结了几种可能的解决方法: 1. 修改yum配置文件,关闭SSL验证(如引用1所示)。 2. 修改网络接口配置,关闭ARP检查(如引用2所示)。 3. 关闭NetworkManager服务并重启网络(如引用3所示)。 但是,这些方法可能并不全面。我们还需要考虑其他常见原因,例如DNS配置错误、网络连接问题等。 因此,我们将提供一套完整的排查步骤: 步骤1:检查网络连通性 步骤2:检查DNS配置 步骤3:修改yum配置(关闭SSL验证) 步骤4:修改网络接口配置(关闭ARP检查) 步骤5:关闭NetworkManager服务(如果存在冲突) 注意:根据引用内容,这些操作都是在CentOS 7系统上进行的。如果用户使用的是其他系统,部分命令可能不同。 下面详细说明每个步骤:</think>### 解决 yum "Could not resolve host" DNS 解析问题(CentOS 7 为例) #### 问题诊断 当 yum 报错 `Could not resolve host: aliyun.com` 时,通常由以下原因导致: 1. **DNS 配置错误**:系统无法解析域名 2. **网络连接问题**:物理连接或防火墙阻断 3. **ARP 冲突**:网络接口配置问题 4. **服务冲突**:NetworkManager 与 network 服务冲突 --- #### 解决方案(逐步操作) ##### ✅ 步骤 1:检查网络连通性 ```bash # 测试物理网络连接 ping 8.8.8.8 # 若不通 → 检查网线/路由器 # 测试DNS解析能力 nslookup aliyun.com # 若报错 → 进入步骤2 ``` ##### ✅ 步骤 2:修复 DNS 配置 ```bash # 编辑DNS配置文件 vi /etc/resolv.conf # 添加阿里云公共DNS(任选一组) nameserver 223.5.5.5 # 阿里DNS1 nameserver 223.6.6.6 # 阿里DNS2 nameserver 8.8.8.8 # Google DNS # 保存后刷新 systemctl restart network ``` ##### ✅ 步骤 3:关闭 ARP 检查(解决引用[2]问题) ```bash # 查找网卡名称(通常为ens33/enp0s3) ip addr # 编辑网卡配置 vi /etc/sysconfig/network-scripts/ifcfg-<网卡名> # 如ifcfg-ens33 # 添加配置 ARPCHECK=no # 重启网络 systemctl restart network ``` ##### ✅ 步骤 4:解决服务冲突(解决引用[3]问题) ```bash # 停止NetworkManager systemctl stop NetworkManager systemctl disable NetworkManager # 重启网络服务 systemctl restart network ``` ##### ✅ 步骤 5:禁用 yum SSL 验证(临时方案) ```bash # 编辑yum全局配置 vi /etc/yum.conf # 在[main]部分添加 sslverify=false # 更新测试 yum clean all yum update -y ``` --- #### 验证修复 ```bash # 测试域名解析 ping mirrors.aliyun.com # 执行yum操作 yum install telnet -y ``` --- #### 高级排查 若上述步骤无效: 1. **检查防火墙**: ```bash systemctl stop firewalld # 临时关闭 setenforce 0 # 关闭SELinux ``` 2. **检查路由表**: ```bash route -n traceroute mirrors.aliyun.com ``` 3. **更新网络驱动**: ```bash yum install NetworkManager-tui -y nmtui # 图形化网络配置 ``` --- #### 网络服务对照表 | 服务名称 | 作用 | 推荐状态 | |-------------------|--------------------------|----------| | `network` | 基础网络服务 | ✅ 启用 | | `NetworkManager` | 动态网络管理(易冲突) | ⛔ 禁用 | | `firewalld` | 防火墙 | 按需启用 | > **注意**:生产环境操作前建议备份配置: > ```bash > cp /etc/resolv.conf /etc/resolv.conf.bak > cp /etc/sysconfig/network-scripts/ifcfg-* ~/backup/ > ```
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值