HCRM博客

彻底卸载CentOS 7.2上的Nginx指南

CentOS 7.2 彻底卸载 Nginx 操作指南

作为网站服务器管理员,确保环境整洁高效是职责所在,当 CentOS 7.2 上的 Nginx 需要更新、更换或排查故障时,彻底卸载现有版本成为必要操作,以下流程将帮助您安全、完整地移除 Nginx,不留隐患。

彻底卸载CentOS 7.2上的Nginx指南-图1

操作前重要警示:

彻底卸载CentOS 7.2上的Nginx指南-图2
  1. 备份配置: 立即备份 /etc/nginx/ 目录(特别是 nginx.confconf.d/ 下的站点配置)及 /var/www/html/ 等网站数据目录。
  2. 停止服务: 务必先停止 Nginx 运行,避免进程冲突。
    sudo systemctl stop nginx
  3. 禁用自启: 防止系统重启后服务自动运行。
    sudo systemctl disable nginx
  4. 确认安装方式: 通过 yum 安装与源码编译安装的卸载路径不同,使用以下命令确认:
    rpm -qa | grep nginx

    若有输出(如 nginx-1.16.1-1.el7.x86_64),则为 yum/rpm 安装;无输出则可能是源码安装。

卸载通过 Yum/RPM 安装的 Nginx

此方式最为常见,卸载相对规范。

  1. 移除主程序包:

    sudo yum remove nginx

    按提示输入 y 确认,此命令会移除 Nginx 主程序及其依赖(由 yum 自动安装且无其他程序使用的依赖)。

  2. 清理残留配置文件: Yum 卸载默认保留配置文件(标记为 .rpmsave),需手动清理:

    彻底卸载CentOS 7.2上的Nginx指南-图3
    sudo rm -rf /etc/nginx/   # 删除整个 Nginx 配置目录
    sudo rm -rf /var/log/nginx/ # 删除日志目录(按需备份)
  3. 检查并删除空目录(可选): 使用 find 命令定位可能遗留的空目录:

    sudo find / -name '*nginx*' -type d -empty 2>/dev/null

    谨慎评估输出结果,确认无用后删除。

卸载通过源码编译安装的 Nginx

源码安装灵活但卸载需手动处理文件。

  1. 定位安装路径: 安装时记录的路径至关重要,若遗忘,尝试查找:

    sudo find / -name nginx 2>/dev/null | grep sbin/nginx

    常见路径如 /usr/local/nginx//opt/nginx/

  2. 停止服务并删除主目录: 假设安装路径为 /usr/local/nginx/

    sudo /usr/local/nginx/sbin/nginx -s stop  # 使用 Nginx 自身命令停止
    sudo rm -rf /usr/local/nginx/             # 彻底删除安装目录
  3. 清理配置文件与日志: 源码安装的配置通常在安装目录下(如 /usr/local/nginx/conf/),删除安装目录时已移除,检查并删除 /etc/nginx/(若有)和 /var/log/nginx/

  4. 移除启动脚本: 若手动添加过系统服务:

    sudo rm -f /etc/systemd/system/nginx.service  # 删除自定义 service 文件
    sudo rm -f /etc/init.d/nginx                  # 删除 SysVinit 脚本
    sudo systemctl daemon-reload                  # 重载 systemd 配置

通用清理与验证

无论何种安装方式,完成卸载后需进行:

  1. 检查进程: 确保无 Nginx 进程残留。

    ps aux | grep nginx

    应只有 grep 进程本身,若发现 Nginx 进程,使用 sudo kill -9 <PID> 终止。

  2. 检查端口占用: Nginx 通常监听 80/443 端口。

    sudo netstat -tulnp | grep ':80\|:443'

    卸载后,这些端口应不再被 Nginx 占用。

  3. 清除临时文件: 清理 /tmp/var/tmp 中可能存在的 Nginx 临时文件。

    sudo find /tmp /var/tmp -name '*nginx*' -exec rm -rf {} + 2>/dev/null

关键注意事项

  • 依赖关系: Yum 卸载通常能处理好依赖,手动删除文件时,需留意是否影响其他软件(如共用 OpenSSL 库),一般系统核心库无需删除。
  • 用户与组: 卸载通常不会删除运行时用户(如 nginx),若确认不再使用且无其他程序关联,可删除:
    sudo userdel nginx
    sudo groupdel nginx
  • 防火墙规则: 卸载 Nginx 不影响防火墙规则,如需清理之前为 Nginx 开放的端口(如 80/tcp),使用 firewall-cmdiptables 手动处理。
  • 后续安装: 彻底卸载为安装新版本(如通过官方仓库或编译新版)扫清障碍,避免文件冲突和配置混淆。

个人观点 服务器维护的精髓在于细致和彻底,卸载软件看似简单,却最能检验管理员的严谨性,残留的配置文件或进程往往成为日后故障的源头,消耗数倍于卸载的时间去排查,尤其在 CentOS 7 这样的生产主力系统上,每一步操作都应留有记录并双重确认,定期审视服务器上的服务,移除不再使用的组件,是保持系统轻盈高效的不二法则,一次彻底的清理,远胜于十次仓促的补救。

本站部分图片及内容来源网络,版权归原作者所有,转载目的为传递知识,不代表本站立场。若侵权或违规联系Email:zjx77377423@163.com 核实后第一时间删除。 转载请注明出处:https://blog.huochengrm.cn/pc/35709.html

分享:
扫描分享到社交APP
上一篇
下一篇
发表列表
请登录后评论...
游客游客
此处应有掌声~
评论列表

还没有评论,快来说点什么吧~