#!/data/data/com.termux/files/usr/bin/env bash
|
|
LOG_DIR="$HOME"
|
SESSION1="sening_vdp1"
|
SESSION2="sening_vdp2"
|
|
export GODEBUG=netdns=go+ipv4
|
|
# 清理旧日志(可选)
|
find "$LOG_DIR" -maxdepth 1 -name "*.log" -type f -delete
|
|
echo "[$(date)] Starting Termux service script..." >> "$LOG_DIR/boot.log"
|
|
# 等待网络上线
|
until ping -c 1 8.8.8.8 > /dev/null 2>&1; do
|
echo "[$(date)] Waiting for network..." >> "$LOG_DIR/network_wait.log"
|
sleep 5
|
done
|
|
# 启动 sening_vdp1(clash) 如果没启动的话
|
if ! tmux has-session -t "$SESSION1" 2>/dev/null; then
|
echo "[$(date)] Starting $SESSION1 in tmux..." >> "$LOG_DIR/boot.log"
|
tmux new-session -d -s "$SESSION1" "$HOME/sening_vdp1 -f $HOME/sening_vdp1.yaml >> $LOG_DIR/sening_vdp1.log 2>&1"
|
else
|
echo "[$(date)] $SESSION1 already running" >> "$LOG_DIR/boot.log"
|
fi
|
|
# 启动 sening_vdp2(frq)守护循环
|
if ! tmux has-session -t "$SESSION2" 2>/dev/null; then
|
echo "[$(date)] Starting $SESSION2 in tmux..." >> "$LOG_DIR/boot.log"
|
tmux new-session -d -s "$SESSION2" "while true; do \
|
echo \"[\$(date)] Running sening_vdp2...\" >> $LOG_DIR/sening_vdp2.log; \
|
$HOME/sening_vdp2 -c $HOME/sening_vdp2.toml >> $LOG_DIR/sening_vdp2.log 2>&1; \
|
echo \"[\$(date)] sening_vdp2 exited. Restarting in 15s...\" >> $LOG_DIR/sening_vdp2.log; \
|
sleep 15; \
|
done"
|
else
|
echo "[$(date)] $SESSION2 already running" >> "$LOG_DIR/boot.log"
|
fi
|