解决rpm 命令不能用

欢迎大家转载,为保留作者成果,转载请注明出处,http://blog.youkuaiyun.com/netluoriver,有些文件在资源中也可以下载!如果你没有积分,可以联系我索要!

SIP voip 测试交流群: 323827101

 

今天在升级服务器时rpm命令不能用了,

输入
[root@asg ~]#rpm -qa
完全无反应,通过
[root@asg ~]#ps -ef

查看,执行的命令都在挂着呢,用命令:
[root@asg ~]#killall -9 rpm


然后执行
[root@asg ~]# cd /var/lib/rpm/
[root@asg rpm]# ls
Basenames    __db.001  __db.003 Filemd5s  Installtid  Packages     Provideversion  Requirename     Sha1header  Triggername
Conflictname __db.002 Dirnames  Group     Name        Providename  Pubkeys         Requireversion  Sigmd5


删除rpm数据表
[root@asg rpm]# rm -f __db.00
__db.001  __db.002  __db.003 
[root@asg rpm]# rm -f __db.00*


重构数据表
[root@asg rpm]# rpm --rebuilddb



再次执行rpm 命令成功了!
[root@asg rpm]# rpm -qa|grep conf
fontconfig-devel-2.4.1-7.el5
system-config-samba-1.2.41-5.el5
chkconfig-1.3.30.2-2.el5
autoconf-2.59-12
authconfig-5.3.21-7.el5
pyxf86config-0.3.31-2.fc6
system-config-network-tui-1.3.99.19-2.el5
gnome-python2-gconf-2.16.0-1.fc6
confmanage-1.0.1-0
system-config-securitylevel-tui-1.6.29.1-6.el5
system-config-date-1.8.12-4.el5.centos
xkeyboard-config-0.8-9.el5
vconfig-1.9-3
fontconfig-2.4.1-7.el5
pkgconfig-0.21-2.el5


由于给定引用内容未提及rpm命令不存在的解决方案,结合专业知识,以下是一些可能的解决办法: ### 检查RPM包是否安装 使用系统自带的包管理工具检查RPM包是否已经安装。以基于Debian或Ubuntu的系统为例,可以使用以下命令: ```bash dpkg -l | grep rpm ``` 如果未安装,在基于Debian或Ubuntu的系统上,可以使用以下命令安装: ```bash sudo apt-get update sudo apt-get install rpm ``` 在基于Red Hat或CentOS的系统上,一般RPM是系统自带的基础组件,如果缺失可能系统有严重问题,可以尝试使用yum(适用于较旧版本)或dnf(适用于较新版本)进行修复安装: ```bash # 适用于较旧版本 sudo yum reinstall rpm # 适用于较新版本 sudo dnf reinstall rpm ``` ### 检查命令路径 确认`rpm`命令是否在系统的搜索路径中。可以使用`which`命令来查找`rpm`命令的位置: ```bash which rpm ``` 如果没有输出,说明系统无法找到该命令。可以检查`PATH`环境变量是否包含了`rpm`命令所在的目录,通常是`/usr/bin`或`/bin`。可以使用以下命令查看`PATH`环境变量: ```bash echo $PATH ``` 如果`rpm`命令所在目录不在`PATH`中,可以临时添加: ```bash export PATH=$PATH:/path/to/rpm ``` 若要永久添加,需要修改`~/.bashrc`或`/etc/profile`文件。 ### 检查系统完整性 如果上述方法都无法解决问题,可能是系统文件损坏。可以使用系统自带的工具来检查和修复系统完整性。以基于Red Hat或CentOS的系统为例,可以使用`yum`或`dnf`的`check`和`repair`功能: ```bash # 适用于较旧版本 sudo yum check sudo yum clean all sudo yum update # 适用于较新版本 sudo dnf check sudo dnf clean all sudo dnf update ``` ### 重新安装系统 如果以上方法都无法解决问题,可能是系统出现了严重的损坏,此时可能需要考虑重新安装操作系统。
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值