centos7安装yum命令失败

本文记录了一次在CentOS 7上因误删yum命令后,通过rpm手动安装遇到的依赖错误及排查过程。详细列出了缺失的依赖库,如libc.so.6(GLIBC_2.2.5),并检查了glibc版本。最后发现系统位数不匹配导致的问题。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

不小心把yum命令卸载了,结果安装过程出了一系列问题,我是通过rpm安装的,还没有尝试源码安装,记一下排查步骤

首先,根据yum安装博客在http://mirrors.163.com/centos/7/os/x86_64/Packages/找到了三个rpm包,

使用rpm -ivh yum-*命令安装报错如下

[root@localhost yum]# rpm -ivh yum-*
错误:依赖检测失败:
        libc.so.6()(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libc.so.6(GLIBC_2.2.5)(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libc.so.6(GLIBC_2.4)(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libglib-2.0.so.0()(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libpthread.so.0()(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libpython2.7.so.1.0()(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libsqlite3.so.0()(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libxml2.so.2()(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要
        libxml2.so.2(LIBXML2_2.4.30)(64bit) 被 yum-metadata-parser-1.1.4-10.el7.x86_64 需要

通过 ldconfig -p | grep pcap命令查找libc.so.6结果如下

[root@localhost yum]# ldconfig -p | grep libc.so.6
        libc.so.6 (libc6, OS ABI: Linux 2.6.32) => /lib/libc.so.6
[root@localhost yum]# 

查看glibc版本信息

linux查看glibc版本信息

[root@localhost yum]# rpm -qa |grep glibc
glibc-common-2.17-292.el7.i686
glibc-headers-2.17-292.el7.i686
glibc-2.17-292.el7.i686
glibc-devel-2.17-292.el7.i686
[root@localhost yum]# 

2.17版本应该足够了,

通过命令strings /lib/libc.so.6 | grep GLIBC查看so信息

[root@localhost yum]# strings /lib/libc.so.6 | grep GLIBC
GLIBC_2.0
GLIBC_2.1
GLIBC_2.1.1
GLIBC_2.1.2
GLIBC_2.1.3
GLIBC_2.2
GLIBC_2.2.1
GLIBC_2.2.2
GLIBC_2.2.3
GLIBC_2.2.4
GLIBC_2.2.6
GLIBC_2.3
GLIBC_2.3.2
GLIBC_2.3.3
GLIBC_2.3.4
GLIBC_2.4
GLIBC_2.5
GLIBC_2.6
GLIBC_2.7
GLIBC_2.8
GLIBC_2.9
GLIBC_2.10
GLIBC_2.11
GLIBC_2.12
GLIBC_2.13
GLIBC_2.14
GLIBC_2.15
GLIBC_2.16
GLIBC_2.17
GLIBC_PRIVATE

没有GLIBC_2.2.5,难道是因为这个原因吗。

后面就不知道怎么办了,再后来才知道原来系统版本搞错了,系统32位的,结果装的都是64位软件

<think>嗯,用户想在CentOS 7.9上安装或配置yum,但可能不太清楚具体步骤。首先,我需要确认yumCentOS中的默认状态。CentOS通常预装了yum,但有时候可能被误删或者配置有问题。用户可能遇到了yum无法使用的情况,需要重新安装或者修复配置。 根据引用[3],用户可能尝试过搭建本地Yum源,使用ISO镜像挂载。这可能意味着他们需要配置本地仓库,或者网络源。如果用户无法连接外部源,本地源是个好选择。但如果是安装yum本身,可能需要先确保rpm包存在。 接下来,我需要检查yum是否已经安装。用户可能运行了`rpm -q yum`来查看状态。如果未安装,应该从镜像或安装介质中获取对应的rpm包,比如yumyum-utils等。引用[3]中的挂载ISO方法可以用来获取这些包,然后用rpm命令安装。 另外,引用[1]和[2]提到了配置仓库,比如EPEL仓库,这可能与yum的配置有关。用户可能需要正确设置.repo文件,确保baseurl正确。例如,引用[1]中使用了ftp地址,而引用[3]使用的是本地挂载点。如果用户配置了错误的仓库地址,yum可能会无法工作,需要检查/etc/yum.repos.d/下的文件,备份并重新配置。 可能出现的问题包括仓库文件被误删或配置错误,如gpgcheck设置导致安装失败,或者网络不可达。用户需要根据具体情况调整.repo文件,禁用gpgcheck或确保密钥正确。 最后,测试yum命令是否正常,比如`yum makecache`生成缓存,然后尝试安装软件如lrzsz,如引用[1]所示。如果成功,说明配置正确。如果遇到依赖问题,可能需要启用其他仓库,如EPEL(引用[2])或者AppStream。 总结步骤应该是:检查yum安装情况,修复或安装必要rpm包,配置正确的仓库源,处理可能的问题,测试并验证。同时提醒用户注意备份原有配置,避免操作失误。</think>在CentOS 7.9系统中,yum软件包管理器默认已预装,但若因特殊原因需要重新安装或修复配置,请按以下步骤操作: --- ### 一、检查yum状态 1. **验证安装**: ```bash rpm -q yum ``` 若输出类似$yum-3.4.3-168.el7.centos.noarch$,则说明已安装;若显示未安装,需从镜像源获取rpm包[^3] 2. **查看配置文件**: ```bash ls /etc/yum.repos.d/ ``` 确保存在`.repo`文件(如$CentOS-Base.repo$) --- ### 二、修复/重新安装yum 1. **挂载系统镜像**(若缺少yum包): ```bash sudo mount -o loop /path/to/CentOS-7.9-x86_64-DVD-2009.iso /mnt/centos7 ``` 2. **安装核心组件**: ```bash cd /mnt/centos7/Packages sudo rpm -ivh yum-*.rpm yum-utils-*.rpm ``` --- ### 三、配置仓库源 1. **备份旧配置**: ```bash cd /etc/yum.repos.d/ sudo mkdir bak && sudo mv *.repo bak/ [^1] ``` 2. **新建本地源配置**: ```bash sudo vi CentOS-Local.repo ``` 添加以下内容: ```ini [Local-Base] name=CentOS 7.9 Local baseurl=file:///mnt/centos7 enabled=1 gpgcheck=0 ``` 3. **或配置网络源**: ```bash sudo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo ``` --- ### 四、验证与测试 1. **清理缓存并重建**: ```bash sudo yum clean all sudo yum makecache ``` 2. **安装测试软件**: ```bash sudo yum install -y lrzsz ``` --- ### 常见问题处理 | 问题现象 | 解决方案 | |---------|----------| | `Error: Cannot find a valid baseurl` | 检查网络连接或仓库路径配置 | | `Existing lock /var/run/yum.pid` | 执行`sudo rm -f /var/run/yum.pid` | | 依赖冲突 | 尝试`sudo yum-complete-transaction` | ---
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值