kali恢复清华源模式

#!/bin/bash
# 恢复Kali到默认官方源状态(清除所有自定义源,还原初始配置)
# 执行:chmod +x restore-default-sources.sh && sudo ./restore-default-sources.sh

set -euo pipefail
RED="\033[31m"
GREEN="\033[32m"
YELLOW="\033[33m"
RESET="\033[0m"

# 检查是否为root用户
if [ "$(id -u)" -ne 0 ]; then
    echo -e "${RED}[ERROR] 请使用 sudo 或 root 用户执行脚本!${RESET}"
    exit 1
fi

echo -e "${GREEN}[INFO] 开始恢复Kali到默认官方源状态...${RESET}"

##############################################################################
# 1. 备份当前源配置(可选,防止后续需要恢复)
##############################################################################
BACKUP_DIR="/etc/apt/sources.backup.$(date +%Y%m%d%H%M%S)"
echo -e "\n${YELLOW}[STEP 1] 备份当前源配置到:$BACKUP_DIR${RESET}"
sudo mkdir -p $BACKUP_DIR
sudo cp -r /etc/apt/sources.list /etc/apt/sources.list.d $BACKUP_DIR 2>/dev/null || true

##############################################################################
# 2. 清除所有自定义源(关键步骤)
##############################################################################
echo -e "\n${YELLOW}[STEP 2] 清除所有自定义源和第三方源...${RESET}"
# 删除所有源配置文件(sources.list + sources.list.d目录)
sudo rm -rf /etc/apt/sources.list /etc/apt/sources.list.d/*

# 重建默认的官方源配置文件(Kali初始默认源)
sudo tee /etc/apt/sources.list << EOF
deb http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main non-free contrib
deb-src http://mirrors.tuna.tsinghua.edu.cn/kali kali-rolling main non-free contrib
EOF

##############################################################################
# 3. 清除旧源缓存,修复包管理依赖
##############################################################################
echo -e "\n${YELLOW}[STEP 3] 清除缓存并修复包管理系统...${RESET}"
# 完全清除apt缓存(旧源的包索引、下载缓存)
sudo apt clean
sudo rm -rf /var/lib/apt/lists/* /var/cache/apt/*

# 修复可能损坏的包依赖和模块(解决之前的apt_pkg/sqlite3报错)
sudo apt --fix-broken install -y
sudo apt install --reinstall python3-apt python3-sqlite3 apt -y

##############################################################################
# 4. 重新生成官方源索引(让默认源生效)
##############################################################################
echo -e "\n${YELLOW}[STEP 4] 重新同步官方源索引...${RESET}"
# 重新更新官方源(首次同步可能较慢,耐心等待)
sudo apt update -y

##############################################################################
# 5. 验证恢复结果
##############################################################################
echo -e "\n${YELLOW}[STEP 5] 验证恢复状态...${RESET}"
# 检查当前生效的源(仅显示官方源)
ACTIVE_SOURCES=$(grep -v "^#" /etc/apt/sources.list | grep -v "^$" | wc -l)
if [ $ACTIVE_SOURCES -eq 4 ]; then
    echo -e "${GREEN}[SUCCESS] 恢复成功!当前仅启用Kali官方默认源:${RESET}"
    grep -v "^#" /etc/apt/sources.list | grep -v "^$"
else
    echo -e "${RED}[ERROR] 恢复失败!请检查网络或重新执行脚本${RESET}"
    exit 1
fi

echo -e "\n${GREEN}[INFO] 恢复完成!系统已回到“未配置自定义源”的初始状态:${RESET}"
echo "1. 源配置:仅保留Kali官方默认源(无任何国内源/第三方源)"
echo "2. 包管理:已修复apt依赖和Python模块缺失问题"
echo "3. 后续操作:可正常使用 sudo apt install 安装工具(从官方源拉取)"
echo "4. 备份说明:旧源配置已保存到 $BACKUP_DIR(需要时可手动恢复)"

避免包依赖包出错,又不想重装,就直接运行它直接恢复清华源模式。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

西城男孩(0t0)

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值