yanchang
yanchang
发布于 2025-03-13 / 45 阅读
1
0

Proot 初始化命令

mysql初始化启动

/etc/init.d/mysql start

halo初始化启动

nohup java -Dfile.encoding=UTF-8 -jar ~/app/halo.jar --spring.config.additional-location=optional:file:$HOME/.halo2/ &

Alist初始化启动

nohup /opt/alist/alist server &

ddns初始化启动

nohup ~/ddns/ddns-go &

脚本化运行

# #!/bin/bash

# # 启动MySQL服务
# /etc/init.d/mysql start

# # 启动Halo服务(后台运行)
# nohup java -Dfile.encoding=UTF-8 -jar ~/app/halo.jar --spring.config.additional-location=optional:file:$HOME/.halo2/ &

# # 启动Alist服务(后台运行)
# nohup /opt/alist/alist server &

# # 启动DDNS-Go服务(后台运行)
# nohup ~/ddns/ddns-go &

# # 保持脚本运行(防止退出导致后台进程终止)
# wait
#!/bin/bash
# 服务控制脚本 (支持 start/stop/restart 参数)
# 2025-03-13 更新

# 服务路径配置
MYSQL_CMD="/etc/init.d/mysql"
HALO_JAR="$HOME/app/halo.jar"
HALO_CONFIG="$HOME/.halo2/"
ALIST_BIN="/opt/alist/alist"
DDNS_GO="$HOME/ddns/ddns-go"
LOG_DIR="$HOME/service_logs"

# 启动所有服务
start_services() {
    mkdir -p $LOG_DIR
    
    # 启动MySQL
    echo "[$(date +%F\ %T)] 启动MySQL..."
    $MYSQL_CMD start >> $LOG_DIR/mysql.log 2>&1
    
    # 启动Halo并记录日志
    nohup java -Dfile.encoding=UTF-8 -jar $HALO_JAR \
        --spring.config.additional-location=optional:file:$HALO_CONFIG \
        >> $LOG_DIR/halo.log 2>&1 &
    
    # 启动Alist
    nohup $ALIST_BIN server >> $LOG_DIR/alist.log 2>&1 &
    
    # 启动DDNS-Go
    nohup $DDNS_GO >> $LOG_DIR/ddns.log 2>&1 &
    
    echo "服务已启动 | 查看日志: ls $LOG_DIR"
}

# 停止所有服务
stop_services() {
    
    # 停止Java服务(Halo)
    pkill -f "halo.jar" >> $LOG_DIR/halo_stop.log 2>&1
    
    # 停止Alist
    pkill -f "alist server" >> $LOG_DIR/alist_stop.log 2>&1
    
    # 停止DDNS-Go
    pkill -f "ddns-go" >> $LOG_DIR/ddns_stop.log 2>&1
    
    echo "Halo. DDNS. Alist服务已停止"
}

# 根据参数执行操作
case "$1" in
    start)
        start_services
        ;;
    stop)
        stop_services
        ;;
    restart)
        stop_services
        sleep 3
        start_services
        ;;
    *)
        echo "用法: $0 {start|stop|restart}"
        exit 1
esac

给执行权限

chmod +x service_init.sh


评论