#!/bin/bash # 核云IDC服务商VPS自动监测重启程序 - 卸载脚本 # 该脚本会移除systemd服务并清理相关文件 # 定义服务名称 SERVICE_NAME="idc-monitor" SERVICE_FILE="/etc/systemd/system/${SERVICE_NAME}.service" echo "正在卸载 ${SERVICE_NAME} 服务..." # 检查是否以root权限运行 if [ "$EUID" -ne 0 ]; then echo "错误: 请以root权限运行此脚本 (sudo ./uninstall.sh)" exit 1 fi # 检查服务是否存在 if [ ! -f "${SERVICE_FILE}" ]; then echo "警告: 服务文件 ${SERVICE_FILE} 不存在" echo "可能服务未安装或已被卸载" exit 0 fi # 停止服务 echo "正在停止服务..." if systemctl is-active --quiet ${SERVICE_NAME}; then systemctl stop ${SERVICE_NAME} echo "✅ 服务已停止" else echo "服务未运行,跳过停止步骤" fi # 禁用服务(取消开机自启) echo "正在禁用服务..." if systemctl is-enabled --quiet ${SERVICE_NAME} 2>/dev/null; then systemctl disable ${SERVICE_NAME} echo "✅ 服务已禁用" else echo "服务未启用,跳过禁用步骤" fi # 重新加载systemd配置 echo "正在清理systemd配置..." systemctl daemon-reload systemctl reset-failed ${SERVICE_NAME} 2>/dev/null # 删除服务文件 echo "正在删除服务文件..." rm -f ${SERVICE_FILE} echo "✅ 服务文件已删除: ${SERVICE_FILE}" # 清理journal日志(可选) echo "" read -p "是否同时清理该服务的历史日志?(y/N): " -n 1 -r echo if [[ $REPLY =~ ^[Yy]$ ]]; then journalctl --rotate journalctl --vacuum-time=1s 2>/dev/null echo "✅ 日志已清理" else echo "跳过日志清理" fi echo "" echo "✅ ${SERVICE_NAME} 服务已成功卸载" echo "" echo "注意:" echo " - Python依赖包未被卸载,如需清理请手动执行: pip uninstall -r requirements.txt" echo " - 项目文件未被删除,如需删除请手动清理项目目录" echo "" echo "卸载完成!"