如何完全删除PHP?

我需要从PHP 5.3软件包中清理我的服务器(有很多),以便能够编译PHP 5.2。 什么是最简单/最安全的方法来摆脱它们?

这应该完全删除名称以php开头的任何包以及与之相关的任何包。

 sudo apt-get purge 'php*' 

建议运行sudo apt-get purge php*

那太吓人了! 幸运的是,我没有输入-y选项,因为它在名称中选择了大约数百个没有php的包。

 sudo apt-get purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "` 

这个怎么运作:

首先 ,使用以下一系列命令生成包列表: dpkg -l | grep php| awk '{print $2}' |tr "\n" " " dpkg -l | grep php| awk '{print $2}' |tr "\n" " " dpkg -l | grep php| awk '{print $2}' |tr "\n" " "

提示:您可以在终端中运行该命令的这一部分,以查看将删除哪些软件包。 你应该得到类似的东西: libapache2-mod-php5 php5 php5-cli php5-common php5-json

最后 ,当您运行完整命令时,此包列表将传递给sudo apt-get purge,删除所有包。

提示:如果你感觉更安全,你可以轻松地单独运行它们,并复制+粘贴包的列表,如下所示: sudo apt-get purge libapache2-mod-php5 php5 php5-cli php5-common php5-json

您可能想要清除系统中的所有php *软件包。 带有外卡的东西应该有效

 sudo apt-get purge php.* 

您可能对如何回滚到PHP 5.2感兴趣, 以了解下一步的工作。

首先,您必须删除Apache及其所有依赖项:

 sudo apt-get purge apache2 php5 libapache2-mod-php5 mysql-server libapache2-mod-auth-mysql php5-mysql phpmyadmin 

然后:

 sudo rm -rf /etc/apache2; rm -rf /etc/php5; rm -rf /var/lib/mysql; rm etc/mysql 

如果您对phpMyAdmin有任何问题,请尝试将其输入终端:

 dpkg-reconfigure phpmyadmin 

除了其他答案中提到的任何清除,如果你想完全确定一切都被删除,你可能想要运行

 cd / sudo find -name "php" 

这将显示名称为php的文件/文件夹。 然后,您将要检查每个文件路径,即:

 cd /usr/local/include/php ls 

并根据需要删除它们。 但是,请注意不要删除对于需要继续运行的其他进程至关重要的任何内容,除非您不得不重新安装。

要删除目录或文件,我们使用带有-rf标志的rm注释,因此在上面的示例中,我们键入:

 sudo rm -rf /usr/local/include/php 
 sudo apt-get -y purge libapache2-mod-php5 libapache2-mod-php5filter libexpect-php5 libgv-php5 libow-php5 php5 php5-adodb php5-auth-pam php5-cgi php5-cli php5-common php5-curl php5-dbg php5-enchant php5-exactimage php5-ffmpeg php5-fpm php5-geoip php5-gmp php5-idn php5-imagick php5-imap php5-interbase php5-intl php5-json php5-lasso php5-ldap php5-librdf php5-mapscript php5-memcache php5-memcached php5-mhash php5-midgard2 php5-ming php5-mssql php5-mysql php5-mysqlnd php5-odbc php5-pgsql php5-ps php5-pspell php5-radius php5-recode php5-remctl php5-rrd php5-sasl php5-snmp php5-sqlite php5-suhosin php5-svn php5-sybase php5-tidy php5-tokyo-tyrant php5-uuid php5-xcache php5-xdebug php5-xmlrpc php5-xsl 

在您的情况下,您可以搜索所有包:

 sudo aptitude search php5|awk {'print $2'}|grep -v i386|grep -v "^A"|tr "\n" " " 

然后清除它们:

 sudo apt-get purge  

两个人说的正则表达式是不正确的。
而不是使用php.*php*应该使用^php*

这是正确的答案。
所以你会使用: sudo apt-get purge "^php*"

虽然我不建议使用这种方法导致其高度自动化,我鼓励你使用sudo apt list --installed | grep php sudo apt list --installed | grep php获取软件包列表并使用以上命令获得的这些软件包名称:

sudo apt-get purge PACKAGENAME_ONE PACKAGENAME_TWO