使用 rpm删除软件时报错如下:

[root@hostxxlidan]# rpm -qa |grep -i mysql
mysql-devel-5.0.95-5.el5_9
mysql-devel-5.0.95-5.el5_9
MySQL-shared-5.5.34-1.rhel5
mysql-5.0.95-5.el5_9
mysql-server-5.0.95-5.el5_9
MySQL-shared-compat-5.5.34-1.rhel5
perl-DBD-MySQL-3.0007-2.el5
mysql-5.0.95-5.el5_9

然后执行删除:

[root@host74 lidan]# rpm -e mysql-5.0.95-5.el5_9
error: "mysql-5.0.95-5.el5_9" specifies multiple packages

上面确实两个包,故报这个问题很正常。

man rpm 发现有一个参数 --allmatches

--allmatches
              Remove all versions of the package which match PACKAGE_NAME. Normally an error is issued if PACKAGE_NAME
              matches multiple packages.

然后执行

[root@hostxxx lidan]# rpm -e --allmatches   mysql-5.0.95-5.el5_9
error: Failed dependencies:
        mysql = 5.0.95-5.el5_9 is needed by (installed) mysql-devel-5.0.95-5.el5_9.x86_64
        mysql = 5.0.95-5.el5_9 is needed by (installed) mysql-devel-5.0.95-5.el5_9.i386
        libmysqlclient.so.15 is needed by (installed) mysql-devel-5.0.95-5.el5_9.i386
        libmysqlclient_r.so.15 is needed by (installed) mysql-devel-5.0.95-5.el5_9.i386

还有依赖再去依赖

rpm -e --allmatches --nodeps  mysql-5.0.95-5.el5_9

05-24 08:22