由于工作需要,可能要进行Apache mariadb php等服务的卸载,闲话不多说,直接上方法。
Apache 卸载我们的第一个例子就先拿 Apache 来开刀。不管你信不信现在我就要把它从Centos里卸载掉,不要问为什么,你懂的!执行下面一行代码 # rpm -qa|grep httpd然后终端窗口就可显示如下两条信息 httpd-2.4.6-40.el7.centos.1.x86_64httpd-tools-2.4.6-40.el7.centos.1.x86_64很棒,我们已经找到猎物了,下一步要做的就是有的放矢 # rpm -e httpd-2.4.6-40.el7.centos.1.x86_64回车后竟然提示如下错误 error: Failed dependencies:httpd-mmn = 20120211x8664 is needed by (installed) php-5.4.16-36.1.el7_2.1.x86_64稍微懂点英文的朋友估计已经知道这是什么回事了,大概意思就是说,php 依赖了 Apache 环境。 所以我们得先把这个幕后的“黑手”干掉。 在干掉它之前,我们肯定得了解下 php 的能力几何,配置了什么装备对吧,毕竟知己知彼,百战不殆!执行命令 # rpm -qa|grep php终端会列出如下信息(这个会因人而异,就看你之前安装了多少扩展) [iyunv@niaoyun53098 ~]# rpm -qa|grep phpphp-cli-5.4.16-36.1.el7_2.1.x86_64php-pear-1.9.4-21.el7.noarchphp-mbstring-5.4.16-36.1.el7_2.1.x86_64php-common-5.4.16-36.1.el7_2.1.x86_64php-process-5.4.16-36.1.el7_2.1.x86_64php-xml-5.4.16-36.1.el7_2.1.x86_64php-gd-5.4.16-36.1.el7_2.1.x86_64php-ldap-5.4.16-36.1.el7_2.1.x86_64php-pdo-5.4.16-36.1.el7_2.1.x86_64php-mysql-5.4.16-36.1.el7_2.1.x86_64php-bcmath-5.4.16-36.1.el7_2.1.x86_64php-5.4.16-36.1.el7_2.1.x86_64php-odbc-5.4.16-36.1.el7_2.1.x86_64php-xmlrpc-5.4.16-36.1.el7_2.1.x86_64扩展这么之,我们要删掉哪一个?答案是你可以全删了,也可以只删掉刚才报错的 php-5.4.16-36.1.el7_2.1.x86_64,下面我就简单点只删掉 php-5.4.16-36.1.el7_2.1.x86_64 这个绊脚石。 # rpm -e php-5.4.16-36.1.el7_2.1.x86_64这个执行完之后,你再 # rpm -qa|grep php查看下,在列出的信息中已经不见了 php-5.4.16-36.1.el7_2.1.x86_64 的踪影了。接下来要做的就是 卸载 Apache 了。 # rpm -e httpd-2.4.6-40.el7.centos.1.x86_64执行完后会有如下提示 warning: /etc/httpd/conf/httpd.conf saved as /etc/httpd/conf/httpd.conf.rpmsave不用管它,现在执行下命令 # rpm -qa|grep httpd里面只剩下 httpd-tools-2.4.6-40.el7.centos.1.x86_64好了,到这里已经完成了 Apache 服务的卸载。 如果你觉得上面分两步执行很麻烦,那么你可以使用下面这一行命令来一石两鸟。 # yum erase httpd这个命令行会自动的帮你卸载 httpd 服务,如果有其实服务(如 php )依赖于 Apache 的话,也会一同被卸载。 MariaDB 卸载为了让你更详细的了解 yum erase 这个命令行,下面我用 yum erase *(*代表服务,如:MariaDB,Apache,FTP,php) 再来举个例子,由于我用的是centos 7,所以也装了一个MariaDB 数据库,所以就拿它来当这次的小白鼠吧。 下面是 yum erase mariadb 命令的 执行记录 [iyunv@niaoyun53098 ~]# rpm -qa|grep mariadbmariadb-devel-5.5.47-1.el7_2.x86_64mariadb-embedded-5.5.47-1.el7_2.x86_64mariadb-bench-5.5.47-1.el7_2.x86_64mariadb-server-5.5.47-1.el7_2.x86_64mariadb-test-5.5.47-1.el7_2.x86_64mariadb-libs-5.5.47-1.el7_2.x86_64mariadb-embedded-devel-5.5.47-1.el7_2.x86_64mariadb-5.5.47-1.el7_2.x86_64[iyunv@niaoyun53098 ~]# rpm -e mariadb-5.5.47-1.el7_2.x86_64error: Failed dependencies:mariadb(x86-64) = 1:5.5.47-1.el7_2 is needed by (installed) mariadb-server-1:5.5.47-1.el7_2.x86_64mariadb(x86-64) = 1:5.5.47-1.el7_2 is needed by (installed) mariadb-test-1:5.5.47-1.el7_2.x86_64mariadb(x86-64) = 1:5.5.47-1.el7_2 is needed by (installed) mariadb-bench-1:5.5.47-1.el7_2.x86_64[iyunv@niaoyun53098 ~]# yum erase mariadb-5.5.47-1.el7_2.x86_64Loaded plugins: fastestmirrorResolving Dependencies--> Running transaction check---> Package mariadb.x86_64 1:5.5.47-1.el7_2 will be erased--> Processing Dependency: mariadb(x86-64) = 1:5.5.47-1.el7_2 for package: 1:mariadb-bench-5.5.47-1.el7_2.x86_64--> Processing Dependency: mariadb(x86-64) = 1:5.5.47-1.el7_2 for package: 1:mariadb-test-5.5.47-1.el7_2.x86_64--> Processing Dependency: mariadb(x86-64) = 1:5.5.47-1.el7_2 for package: 1:mariadb-server-5.5.47-1.el7_2.x86_64--> Running transaction check---> Package mariadb-bench.x86_64 1:5.5.47-1.el7_2 will be erased---> Package mariadb-server.x86_64 1:5.5.47-1.el7_2 will be erased---> Package mariadb-test.x86_64 1:5.5.47-1.el7_2 will be erased--> Finished Dependency ResolutionDependencies Resolved===============================================================================================================================================================================================================Package Arch Version Repository Size===============================================================================================================================================================================================================Removing:mariadb x86_64 1:5.5.47-1.el7_2 @updates 49 MRemoving for dependencies:mariadb-bench x86_64 1:5.5.47-1.el7_2 @updates 2.6 Mmariadb-server x86_64 1:5.5.47-1.el7_2 @updates 56 Mmariadb-test x86_64 1:5.5.47-1.el7_2 @updates 124 MTransaction Summary===============================================================================================================================================================================================================Remove 1 Package (+3 Dependent packages)Installed size: 231 MIs this ok [y/N]: yDownloading packages:Running transaction checkRunning transaction testTransaction test succeededRunning transactionWarning: RPMDB altered outside of yum.Erasing : 1:mariadb-bench-5.5.47-1.el7_2.x86_64 1/4Erasing : 1:mariadb-test-5.5.47-1.el7_2.x86_64 2/4Erasing : 1:mariadb-server-5.5.47-1.el7_2.x86_64 3/4warning: /var/log/mariadb/mariadb.log saved as /var/log/mariadb/mariadb.log.rpmsaveErasing : 1:mariadb-5.5.47-1.el7_2.x86_64 4/4Verifying : 1:mariadb-bench-5.5.47-1.el7_2.x86_64 1/4Verifying : 1:mariadb-test-5.5.47-1.el7_2.x86_64 2/4Verifying : 1:mariadb-server-5.5.47-1.el7_2.x86_64 3/4Verifying : 1:mariadb-5.5.47-1.el7_2.x86_64 4/4Removed:mariadb.x86_64 1:5.5.47-1.el7_2Dependency Removed:mariadb-bench.x86_64 1:5.5.47-1.el7_2 mariadb-server.x86_64 1:5.5.47-1.el7_2 mariadb-test.x86_64 1:5.5.47-1.el7_2Complete![iyunv@niaoyun53098 ~]# rpm -qa|grep mariadbmariadb-devel-5.5.47-1.el7_2.x86_64mariadb-embedded-5.5.47-1.el7_2.x86_64mariadb-libs-5.5.47-1.el7_2.x86_64mariadb-embedded-devel-5.5.47-1.el7_2.x86_64如果你看得够仔细的话,那会看到 yum erase * 这个命令行是如何一步一步删掉目标服务的以及如何处理删除目标服务所依赖的服务。
|