Files

49 lines
1.2 KiB
Bash

#!/usr/bin/env bash
# ==============================================================================
# 模块:基础环境、常量定义与通用日志工具
# ==============================================================================
# 颜色代码
CLR_RED="\033[31m"
CLR_GREEN="\033[32m"
CLR_YELLOW="\033[33m"
CLR_BLUE="\033[36m"
CLR_PURPLE="\033[35m"
CLR_RESET="\033[0m"
CLR_BOLD="\033[1m"
# 路径常量
INSTALL_DIR="/etc/sing-box"
CONFIG_FILE="${INSTALL_DIR}/config.json"
META_FILE="${INSTALL_DIR}/meta.json"
BIN_DIR="/usr/local/bin"
BIN_PATH="${BIN_DIR}/sing-box"
SERVICE_NAME="sing-box"
SERVICE_FILE="/etc/systemd/system/${SERVICE_NAME}.service"
SCRIPT_LINK="${BIN_DIR}/sb"
# 日志输出函数
log_info() {
echo -e "${CLR_BLUE}[INFO]${CLR_RESET} $1"
}
log_success() {
echo -e "${CLR_GREEN}[SUCCESS]${CLR_RESET} $1"
}
log_warn() {
echo -e "${CLR_YELLOW}[WARN]${CLR_RESET} $1"
}
log_error() {
echo -e "${CLR_RED}[ERROR]${CLR_RESET} $1" >&2
}
# 权限校验:必须以 root 权限运行
check_root() {
if [[ $EUID -ne 0 ]]; then
log_error "本脚本需要 root 权限,请使用 sudo 或切换至 root 用户执行!"
exit 1
fi
}