| | |
| | | #!/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 |