宝塔面板定时保存计划任务配置脚本
本文最后更新于 291 天前,其中的信息可能已经有所发展或是发生改变。
#!/bin/bash

# 宝塔面板配置
# /www/server/panel/config/api.json  API_key:key,SECRET_KEY:token
BT_PANEL_URL="宝塔面板url地址"
API_KEY="/www/server/panel/config/api.json 里面的key字段"  
SECRET_KEY="/www/server/panel/config/api.json 里面的token字段"

# 备份文件保存路径
BACKUP_DIR="备份的文件夹路径"
BACKUP_FILE="${BACKUP_DIR}/计划任务配置.json" 

echo "========================================"
echo "宝塔面板计划任务配置自动备份脚本"
echo "开始时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo "面板地址: ${BT_PANEL_URL}"
echo "备份文件: ${BACKUP_FILE}"
echo "========================================"


# 第一步:创建备份目录(如果不存在)
echo "检查备份目录"
if [ ! -d "$BACKUP_DIR" ]; then
     echo "   ⚠ 备份目录不存在,创建中..."
     mkdir -p "$BACKUP_DIR"
     chown www:www "$BACKUP_DIR" 2>/dev/null || true
     echo "   ✓ 备份目录已创建: ${BACKUP_DIR}"
else
     echo "   ✓ 备份目录已存在: ${BACKUP_DIR}"
fi

# 第二步:创建新备份
echo "创建计划任务配置备份"

# 生成签名
TIME_STAMP=$(date +%s)
REQUEST_TOKEN=$(echo -n "${TIME_STAMP}${SECRET_KEY}" | md5sum | awk '{print $1}')

echo "   时间戳: ${TIME_STAMP}"
echo "   请求令牌: ${REQUEST_TOKEN}"
echo "   API密钥: ${API_KEY}"

# 调用创建备份接口
echo "   正在调用备份接口..."
RESPONSE=$(curl -s -X POST "${BT_PANEL_URL}/crontab?action=export_crontab_to_json" \
  -H "Authorization: bt-panel ${API_KEY}" \
  -d "request_time=${TIME_STAMP}&request_token=${REQUEST_TOKEN}" \
  --connect-timeout 30 \
  --max-time 120)

echo "   原始响应: ${RESPONSE}"

# 解析响应
# 简单判断是否成功
if echo "$RESPONSE" | grep -q "true" && echo "$RESPONSE" | grep -q ".json"; then
    # 直接查找/tmp下的文件
    BACKUP_SOURCE=$(find /tmp -name "*计划任务*.json" -type f -mmin -5 2>/dev/null | head -1)
    
    if [ -n "$BACKUP_SOURCE" ] && [ -f "$BACKUP_SOURCE" ]; then
        cp "$BACKUP_SOURCE" "$BACKUP_FILE"
        echo "备份成功: $BACKUP_FILE"
        echo "文件大小: $(du -h "$BACKUP_FILE" | cut -f1)"
        exit 0
    else
        echo "未找到临时备份文件"
        exit 1
    fi
else
    echo "   ✗ API调用失败"
    echo "   响应内容: ${RESPONSE}"
fi

echo ""
echo "========================================"
echo "备份完成时间: $(date '+%Y-%m-%d %H:%M:%S')"
echo "备份状态: ✗ 失败"
echo "========================================"
exit 1
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇