Add files via upload
This commit is contained in:
1 parent
f2b13855ba
commit
f4fac43a03
13 files changed
+84484
No files matched your search
@@ -0,0 +1,198 @@
|
||||
#!/bin/sh
|
||||
|
||||
SCRIPT_VERSION="v0.1.2-alpha"
|
||||
|
||||
GREEN='\033[0;32m'
|
||||
RED='\033[0;31m'
|
||||
YELLOW='\033[1;33m'
|
||||
NC='\033[0m'
|
||||
|
||||
log_info() { echo -e "${GREEN}[INFO]${NC} $*"; }
|
||||
log_warn() { echo -e "${YELLOW}[WARN]${NC} $*"; }
|
||||
log_error() { echo -e "${RED}[ERROR]${NC} $*" >&2; }
|
||||
log_step() { echo -e "${GREEN}=== $* ===${NC}"; }
|
||||
log_done() { echo -e "${GREEN}$*${NC}"; }
|
||||
|
||||
USE_APK=0
|
||||
if command -v apk > /dev/null 2>&1; then
|
||||
USE_APK=1
|
||||
fi
|
||||
|
||||
is_pkg_installed() {
|
||||
if [ "$USE_APK" -eq 1 ]; then
|
||||
apk info "$1" > /dev/null 2>&1
|
||||
else
|
||||
opkg list-installed 2>/dev/null | grep -q "^$1 "
|
||||
fi
|
||||
}
|
||||
|
||||
remove_pkg() {
|
||||
if [ "$USE_APK" -eq 1 ]; then
|
||||
apk del "$1" > /dev/null 2>&1 || true
|
||||
else
|
||||
opkg remove "$1" > /dev/null 2>&1 || true
|
||||
fi
|
||||
}
|
||||
|
||||
remove_mihomo() {
|
||||
log_info "Проверка наличия Mihomo..."
|
||||
local CLEANED=0
|
||||
|
||||
if [ -f "/etc/init.d/mihomo" ]; then
|
||||
/etc/init.d/mihomo stop 2>/dev/null || true
|
||||
/etc/init.d/mihomo disable 2>/dev/null || true
|
||||
rm -f /etc/init.d/mihomo
|
||||
CLEANED=1
|
||||
fi
|
||||
|
||||
if [ -f "/usr/bin/mihomo" ]; then
|
||||
rm -f /usr/bin/mihomo
|
||||
CLEANED=1
|
||||
fi
|
||||
|
||||
if [ -d "/etc/mihomo" ] || [ -d "/www/luci-static/resources/view/mihomo" ]; then
|
||||
rm -rf /etc/mihomo
|
||||
rm -f /usr/share/luci/menu.d/luci-app-mihomo.json
|
||||
rm -f /usr/share/rpcd/acl.d/luci-app-mihomo.json
|
||||
rm -rf /www/luci-static/resources/view/mihomo
|
||||
CLEANED=1
|
||||
fi
|
||||
|
||||
if [ "$CLEANED" -eq 1 ]; then
|
||||
log_done "Mihomo и его файлы успешно удалены."
|
||||
else
|
||||
log_done "Mihomo не найден (уже удалён)."
|
||||
fi
|
||||
}
|
||||
|
||||
remove_hev_tunnel() {
|
||||
log_info "Проверка наличия Hev-Socks5-Tunnel..."
|
||||
local ACTION_TAKEN=0
|
||||
|
||||
if [ -f "/etc/init.d/hev-socks5-tunnel" ]; then
|
||||
/etc/init.d/hev-socks5-tunnel stop 2>/dev/null || true
|
||||
fi
|
||||
|
||||
if is_pkg_installed hev-socks5-tunnel; then
|
||||
remove_pkg hev-socks5-tunnel
|
||||
ACTION_TAKEN=1
|
||||
fi
|
||||
|
||||
if [ -d "/etc/hev-socks5-tunnel" ] || [ -f "/etc/config/hev-socks5-tunnel" ]; then
|
||||
rm -rf /etc/hev-socks5-tunnel
|
||||
rm -f /etc/config/hev-socks5-tunnel
|
||||
ACTION_TAKEN=1
|
||||
fi
|
||||
|
||||
echo "--> Очистка UCI..."
|
||||
uci delete network.Mihomo 2>/dev/null || true
|
||||
|
||||
local fw_section
|
||||
for fw_section in $(uci show firewall 2>/dev/null \
|
||||
| grep -E "\.name='Mihomo'" \
|
||||
| sed "s/\.name.*//"); do
|
||||
uci delete "$fw_section" 2>/dev/null || true
|
||||
done
|
||||
|
||||
for fw_section in $(uci show firewall 2>/dev/null \
|
||||
| grep -E "\.(src|dest)='Mihomo'" \
|
||||
| sed -E "s/\.(src|dest).*//"); do
|
||||
uci delete "$fw_section" 2>/dev/null || true
|
||||
done
|
||||
|
||||
uci delete firewall.Mihomo 2>/dev/null || true
|
||||
uci delete firewall.lan_to_Mihomo 2>/dev/null || true
|
||||
|
||||
uci commit network
|
||||
uci commit firewall
|
||||
|
||||
/etc/init.d/network reload 2>/dev/null || true
|
||||
/etc/init.d/firewall restart 2>/dev/null || true
|
||||
|
||||
if [ "$ACTION_TAKEN" -eq 1 ]; then
|
||||
log_done "Hev-Socks5-Tunnel и настройки удалены."
|
||||
else
|
||||
log_done "Hev-Socks5-Tunnel не найден (уже удалён)."
|
||||
fi
|
||||
}
|
||||
|
||||
remove_magitrickle() {
|
||||
log_info "Проверка наличия MagiTrickle..."
|
||||
local PKG_REMOVED=0
|
||||
|
||||
if [ -f "/etc/init.d/magitrickle" ]; then
|
||||
/etc/init.d/magitrickle stop 2>/dev/null || true
|
||||
/etc/init.d/magitrickle disable 2>/dev/null || true
|
||||
fi
|
||||
|
||||
if is_pkg_installed magitrickle_mod; then
|
||||
log_info "Найден MagiTrickle Mod. Удаление..."
|
||||
remove_pkg magitrickle_mod
|
||||
PKG_REMOVED=1
|
||||
fi
|
||||
|
||||
if is_pkg_installed magitrickle; then
|
||||
log_info "Найден MagiTrickle. Удаление..."
|
||||
remove_pkg magitrickle
|
||||
PKG_REMOVED=1
|
||||
fi
|
||||
|
||||
local FILES_REMOVED=0
|
||||
if [ -d "/www/luci-static/resources/view/magitrickle" ] || \
|
||||
[ -f "/usr/share/luci/menu.d/luci-app-magitrickle.json" ]; then
|
||||
rm -rf /www/luci-static/resources/view/magitrickle
|
||||
rm -f /usr/share/luci/menu.d/luci-app-magitrickle.json
|
||||
FILES_REMOVED=1
|
||||
fi
|
||||
|
||||
if [ -f "/etc/magitrickle/state/config.yaml" ]; then
|
||||
rm -f /etc/magitrickle/state/config.yaml
|
||||
rm -f /etc/magitrickle/state/config.yaml.backup
|
||||
FILES_REMOVED=1
|
||||
fi
|
||||
|
||||
if [ "$PKG_REMOVED" -eq 1 ] || [ "$FILES_REMOVED" -eq 1 ]; then
|
||||
log_done "MagiTrickle и его файлы удалены."
|
||||
else
|
||||
log_done "MagiTrickle не найден (уже удалён)."
|
||||
fi
|
||||
}
|
||||
|
||||
cleanup_system() {
|
||||
log_info "Очистка кэша и перезапуск служб..."
|
||||
rm -rf /tmp/luci-indexcache /tmp/luci-modulecache/
|
||||
/etc/init.d/firewall stop >/dev/null 2>&1
|
||||
sleep 2
|
||||
/etc/init.d/firewall start >/dev/null 2>&1
|
||||
conntrack -F 2>/dev/null
|
||||
/etc/init.d/dnsmasq restart >/dev/null 2>&1
|
||||
/etc/init.d/odhcpd restart >/dev/null 2>&1
|
||||
/etc/init.d/rpcd restart >/dev/null 2>&1
|
||||
/etc/init.d/uhttpd restart >/dev/null 2>&1
|
||||
}
|
||||
|
||||
main() {
|
||||
clear
|
||||
log_done "Скрипт удаления Mixomo OpenWrt $SCRIPT_VERSION от Internet Helper"
|
||||
echo ""
|
||||
|
||||
log_step "[1/4] Удаление Mihomo"
|
||||
remove_mihomo
|
||||
echo ""
|
||||
|
||||
log_step "[2/4] Удаление Hev-Tunnel"
|
||||
remove_hev_tunnel
|
||||
echo ""
|
||||
|
||||
log_step "[3/4] Удаление MagiTrickle"
|
||||
remove_magitrickle
|
||||
echo ""
|
||||
|
||||
log_step "[4/4] Завершение"
|
||||
cleanup_system
|
||||
echo ""
|
||||
|
||||
log_done "Удаление успешно завершено!"
|
||||
}
|
||||
|
||||
main
|
||||
Reference in new issue
Block a user