#!/bin/bash # ============================================================================== # 脚本名称: ubuntu_deep_clean.sh # 适用系统: Ubuntu 22.04 / 20.04 # 脚本功能: 暴力粉碎腾讯云组件 (免验证码) + 系统深度垃圾清理 # 使用权限: 必须以 root 或 sudo 权限运行 # ============================================================================== GREEN='\033[0;32m' YELLOW='\033[1;33m' RED='\033[0;31m' NC='\033[0m' if [ "$EUID" -ne 0 ]; then echo -e "${RED}错误: 请使用 sudo 或 root 权限运行此脚本!${NC}" exit 1 fi LOG_FILE="/var/log/ubuntu_deep_clean.log" exec > >(tee -a "$LOG_FILE") 2>&1 echo -e "${GREEN}====================================================${NC}" echo -e "${GREEN} 开始执行 Ubuntu 深度清理(强力免密粉碎版) ${NC}" echo -e "${GREEN}====================================================${NC}" # ------------------------------------------------------------------------------ # 模块一: 绕过验证码,直接从底层强杀并粉碎腾讯云组件 # ------------------------------------------------------------------------------ echo -e "\n${YELLOW}[1/6] 正在通过底层命令强制粉碎腾讯云组件...${NC}" # 1. 停止并禁用所有相关的 Systemd 服务 echo "-> 正在停止相关系统服务..." systemctl stop Yunjing barad_agent tat_agent 2>/dev/null systemctl disable Yunjing barad_agent tat_agent 2>/dev/null # 2. 暴力杀死所有腾讯云监控、安全、自动化助手的守护进程 echo "-> 正在强制杀掉 YDService, YDLive 等顽固进程..." killall -9 YDService YDLive barad_agent tat_agent sgagent 2>/dev/null ps -ef | grep -E 'qcloud|YDService|YDLive|tat_agent|barad_agent' | grep -v grep | awk '{print $2}' | xargs -r kill -9 2>/dev/null # 3. 删除服务配置文件,防止重启后复活 echo "-> 移除系统服务配置残留..." rm -f /etc/systemd/system/Yunjing.service rm -f /etc/systemd/system/tat_agent.service systemctl daemon-reload # 4. 直接干掉安装目录,让其彻底失去运行实体 echo "-> 粉碎腾讯云默认安装目录..." rm -rf /usr/local/qcloud rm -rf /usr/local/tat_agent # 5. 清理 root 用户 crontab 中隐藏的复活下载脚本 echo "-> 清理定时任务中的厂商脚本..." crontab -l 2>/dev/null | grep -v -E 'qcloud|sec_agent|download.tencentcloudapi.com' | crontab - echo -e "${GREEN}-> 腾讯云组件已强行清理完毕!${NC}" # ------------------------------------------------------------------------------ # 模块二: 软件包管理器清理 # ------------------------------------------------------------------------------ echo -e "\n${YELLOW}[2/6] 正在深度清理 APT 软件包缓存...${NC}" apt-get update -y apt-get autoremove --purge -y apt-get clean -y # ------------------------------------------------------------------------------ # 模块三: Snap 软件包瘦身 # ------------------------------------------------------------------------------ echo -e "\n${YELLOW}[3/6] 正在清除旧版本的 snap 包 (仅保留最新版本)...${NC}" if command -v snap &> /dev/null; then snap list --all | awk '/disabled/{print $1, $3}' | while read snapname revision; do snap remove "$snapname" --revision="$revision" done else echo "-> 系统未安装 snap,自动跳过。" fi # ------------------------------------------------------------------------------ # 模块四: 系统日志裁切与临时文件清理 # ------------------------------------------------------------------------------ echo -e "\n${YELLOW}[4/6] 正在清理系统日志文件与临时缓存...${NC}" if command -v journalctl &> /dev/null; then echo "-> 压缩并裁切 systemd journal 日志至 3 天内..." journalctl --vacuum-time=3d fi # 清理历史归档旧日志 find /var/log -type f \( -name "*.gz" -o -name "*.1" \) -delete # 清理临时物理缓存 rm -rf /var/tmp/* find /tmp -type f -atime +2 -delete rm -rf ~/.cache/thumbnails/* rm -rf /home/*/.cache/thumbnails/* 2>/dev/null # ------------------------------------------------------------------------------ # 模块五: 孤立旧内核清理 # ------------------------------------------------------------------------------ echo -e "\n${YELLOW}[5/6] 正在检查并清理多余的旧内核...${NC}" current_kernel=$(uname -r) echo "-> 当前正在使用的内核版本为: $current_kernel" dpkg --list | grep -E 'linux-image|linux-headers' | awk '{print $2}' | \ grep -v "$current_kernel" | grep -v "linux-image-generic" | grep -v "linux-headers-generic" | \ xargs apt-get -y purge 2>/dev/null # ------------------------------------------------------------------------------ # 模块六: Docker 深度清理 (默认安全关闭,需要请编辑脚本取消下方 # 注释) # ------------------------------------------------------------------------------ echo -e "\n${YELLOW}[6/6] Docker 残留深度清理检测...${NC}" # if command -v docker &> /dev/null; then # docker system prune -a --volumes -f # fi echo "-> 提示: Docker 深度清理默认关闭,不影响当前运行的容器。" # ------------------------------------------------------------------------------ # 状态展示 # ------------------------------------------------------------------------------ echo -e "\n${GREEN}====================================================${NC}" echo -e "${GREEN} 所有清理任务已自动执行完毕! ${NC}" echo -e "${GREEN}====================================================${NC}" df -h echo -e "\n${YELLOW}关键操作: 请现在立刻运行 'sudo reboot' 重启服务器,彻底释放物理内存并彻底断绝进程复活!${NC}"