一、基于Debian/Ubuntu系统
使用包管理器卸载
- 基础卸载命令:`sudo apt remove 软件包名称`(如`sudo apt remove nginx`)
- 彻底卸载(删除配置文件):`sudo apt purge 软件包名称`(如`sudo apt purge nginx`)
- 示例:`sudo apt purge mysql-server`(删除MySQL服务及配置文件)
手动删除残留文件
- 删除安装目录:`sudo rm -rf /usr/local/bin/脚本名称`(如`sudo rm -rf /usr/local/bin/php-fpm`)
- 清理配置文件:`sudo rm -rf /etc/php/版本号/apache2.conf`(如`sudo rm -rf /etc/php/7.4/apache2.conf`)
- 重启服务:`sudo systemctl restart apache2`(确保服务停止后删除配置)
二、基于CentOS/RHEL系统
使用包管理器卸载
- 基础卸载命令:`sudo yum remove 软件包名称`(如`sudo yum remove httpd`)
- 彻底卸载:`sudo yum purge 软件包名称`(如`sudo yum purge httpd`)
- 示例:`sudo yum purge php-mysqlnd`(删除PHP及扩展模块)
手动删除残留文件
- 删除安装目录:`sudo rm -rf /usr/local/bin/脚本名称`(如`sudo rm -rf /usr/local/bin/php-fpm`)
- 清理配置文件:`sudo rm -rf /etc/httpd/conf/httpd.conf`(如`sudo rm -rf /etc/php/7.4/httpd.conf`)
- 重启服务:`sudo systemctl restart httpd`(确保服务停止后删除配置)
三、其他注意事项
使用包管理器的优势
- 包管理器会自动处理依赖关系,避免手动删除冲突文件
- 例如:`sudo apt-get autoremove`(卸载后自动清理依赖包)
特殊情况处理
- 通过SSH连接执行命令:`ssh 用户名@IP地址 "命令序列"`(如`ssh root@192.168.1.100 "sudo apt-get purge nginx"`)
- 删除系统级脚本需谨慎,避免影响系统核心功能
验证卸载结果
- 使用`dpkg -l | grep 软件包名称`(如`dpkg -l | grep nginx`)检查是否残留
- 手动查找配置文件(如`grep -r "配置文件名" /etc`)确认删除
建议优先使用包管理器的`purge`选项,再手动清理残留文件。若涉及第三方脚本(如宝塔面板),需先通过面板内置卸载功能或手动删除相关文件。卸载后建议重启服务以确保配置生效。