天天看点

rpm 相关问题

specfies multiple packages 错误

这是安装了多个相同的rpm包,所以无法卸载,可以加上--allmatches

rpm -e xxx.rpm --allmatches

error: %preun( ) scriptlet failed, exit status 1 错误

运行的脚本出了问题,无法正确运行,可以加上--noscripts

rpm -e xxx.rpm --noscripts

rpm 数据库损坏修复

有时候安装rpm包,莫名其妙安装失败,安装成功了,rpm -qi 也找不到rpm包信息,可能是rpm数据库已损坏,按如下步骤可修复:

  1. 删除rpm 锁文件:

    rm -rf /var/lib/rpm/__db.00*

  2. 重建rpm 数据库:

    rpm --rebuilddb

    rpm 选项

-a:查询所有套件;
-b<完成阶段><套件档>+或-t <完成阶段><套件档>+:设置包装套件的完成阶段,并指定套件档的文件名称;
-c:只列出组态配置文件,本参数需配合"-l"参数使用;
-d:只列出文本文件,本参数需配合"-l"参数使用;
-e<套件档>或--erase<套件档>:删除指定的套件;
-f<文件>+:查询拥有指定文件的套件;
-h或--hash:套件安装时列出标记;
-i:显示套件的相关信息;
-i<套件档>或--install<套件档>:安装指定的套件档;
-l:显示套件的文件列表;
-p<套件档>+:查询指定的RPM套件档;
-q:使用询问模式,当遇到任何问题时,rpm指令会先询问用户;
-R:显示套件的关联性信息;
-s:显示文件状态,本参数需配合"-l"参数使用;
-U<套件档>或--upgrade<套件档>:升级指定的套件档;
-v:显示指令执行过程;
-vv:详细显示指令执行过程,便于排错。