Linux彻底卸载PHP及依赖教程
时间:2026-02-13 20:19:24 109浏览 收藏
在Linux系统中彻底卸载PHP远不止简单删除php命令,关键在于精准识别安装方式(包管理器安装或源码编译),并针对性执行依赖清理、配置清除、服务停用及Web服务器模块解耦;盲目使用基础卸载命令极易遗留扩展、配置文件、服务单元或动态链接库,导致重装失败、系统冲突或服务异常,本文系统梳理了Debian/Ubuntu、RHEL/CentOS/Rocky等主流发行版的完整卸载路径与验证要点,助你真正实现零残留、可复现的干净移除。

Linux 下卸载 PHP 并不等于只删掉 php 命令,真正干净移除需要分清安装来源(包管理器 vs 源码编译),否则残留配置、扩展、服务或依赖会干扰后续重装或系统稳定性。
确认 PHP 安装方式和当前版本
盲目执行 apt remove php 或 yum remove php 可能只删主包,漏掉 php-cli、php-fpm、libphp 等关键组件。先查清楚:
- 运行
which php和php -v看路径和版本 - Debian/Ubuntu:用
dpkg -l | grep php列出所有 PHP 相关包 - RHEL/CentOS/Rocky:用
rpm -qa | grep php - 若
/usr/local/bin/php存在,大概率是源码编译安装,包管理器命令无效
用 apt/yum/dnf 彻底卸载 PHP(包管理器安装)
包管理器安装的 PHP,必须按「反向依赖链」清理,否则 php-common、php-xml 这类底层包可能被其他软件依赖而保留。
- Ubuntu/Debian:
sudo apt purge $(dpkg -l | grep '^ii php' | awk '{print $2}') && sudo apt autoremove -y - CentOS 7:
sudo yum remove $(rpm -qa | grep '^php') && sudo yum autoremove -y - RHEL 8+/Rocky 9:
sudo dnf remove $(dnf list installed | grep php | awk '{print $1}' | sed 's/\.x86_64//; s/\.aarch64//'),再加sudo dnf autoremove - 注意:不要手动删
/etc/php/或/usr/lib/php/,purge或remove通常已包含配置清理;但若需彻底,可后续手动rm -rf /etc/php/ /usr/lib/php/ /var/lib/php/
源码编译安装的 PHP 怎么卸载
源码安装没有包管理器记录,卸载只能靠「反向操作」:进原编译目录执行 make uninstall(仅当 Makefile 支持),否则只能手动清理。
- 检查安装前 configure 的
--prefix参数(如--prefix=/usr/local/php),然后sudo rm -rf /usr/local/php - 删二进制链接:
sudo rm -f /usr/bin/php /usr/bin/phpize /usr/bin/php-config - 删 ini 文件:
sudo rm -f /usr/local/lib/php.ini /usr/local/etc/php-fpm.conf - 删 systemd 服务(如有):
sudo systemctl stop php-fpm && sudo systemctl disable php-fpm && sudo rm -f /etc/systemd/system/php-fpm.service - 最后检查
echo $PATH和~/.bashrc是否还存在手动添加的 PHP 路径
验证是否真卸干净
卸完别急着重装,先确认残留——很多“卸载失败”其实是 PATH 缓存或旧二进制未清导致的假象。
- 运行
command -v php、command -v php-fpm,应无输出 - 执行
php -v应报command not found,而非版本号 - 检查
ps aux | grep php和systemctl list-units | grep php,确认无进程或服务残留 - 若曾用 Ondrej PPA(Ubuntu)或 Remi 仓库(RHEL),记得
sudo add-apt-repository --remove ppa:ondrej/php或sudo dnf config-manager --disable remi-php*,避免下次apt update又拉回旧包
最常被忽略的是 Web 服务器模块(如 Apache 的 libphp.so 或 Nginx 的 FastCGI 配置),它们不会随 PHP 包自动卸载,得手动注释或删除对应配置行,否则重启服务时可能报错。
理论要掌握,实操不能落!以上关于《Linux彻底卸载PHP及依赖教程》的详细介绍,大家都掌握了吧!如果想要继续提升自己的能力,那么就来关注golang学习网公众号吧!
相关阅读
更多>
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
-
501 收藏
最新阅读
更多>
-
177 收藏
-
280 收藏
-
268 收藏
-
417 收藏
-
191 收藏
-
244 收藏
-
153 收藏
-
238 收藏
-
445 收藏
-
259 收藏
-
474 收藏
-
227 收藏
课程推荐
更多>
-
- 前端进阶之JavaScript设计模式
- 设计模式是开发人员在软件开发过程中面临一般问题时的解决方案,代表了最佳的实践。本课程的主打内容包括JS常见设计模式以及具体应用场景,打造一站式知识长龙服务,适合有JS基础的同学学习。
- 立即学习 543次学习
-
- GO语言核心编程课程
- 本课程采用真实案例,全面具体可落地,从理论到实践,一步一步将GO核心编程技术、编程思想、底层实现融会贯通,使学习者贴近时代脉搏,做IT互联网时代的弄潮儿。
- 立即学习 516次学习
-
- 简单聊聊mysql8与网络通信
- 如有问题加微信:Le-studyg;在课程中,我们将首先介绍MySQL8的新特性,包括性能优化、安全增强、新数据类型等,帮助学生快速熟悉MySQL8的最新功能。接着,我们将深入解析MySQL的网络通信机制,包括协议、连接管理、数据传输等,让
- 立即学习 500次学习
-
- JavaScript正则表达式基础与实战
- 在任何一门编程语言中,正则表达式,都是一项重要的知识,它提供了高效的字符串匹配与捕获机制,可以极大的简化程序设计。
- 立即学习 487次学习
-
- 从零制作响应式网站—Grid布局
- 本系列教程将展示从零制作一个假想的网络科技公司官网,分为导航,轮播,关于我们,成功案例,服务流程,团队介绍,数据部分,公司动态,底部信息等内容区块。网站整体采用CSSGrid布局,支持响应式,有流畅过渡和展现动画。
- 立即学习 485次学习