文件
scripts/backup/backup.conf
2026-04-26 23:24:48 +08:00

86 行
3.3 KiB
Plaintext

此文件含有模棱两可的 Unicode 字符

此文件含有可能会与其他字符混淆的 Unicode 字符。 如果您是想特意这样的,可以安全地忽略该警告。 使用 Escape 按钮显示他们。

# backup.sh 配置文件
# 所有配置项均可通过命令行参数覆盖(参数优先级高于本文件)。
#
# 备份方式由命令行第一个位置参数决定:
# bash backup.sh smb -> 使用本文件 SMB 段配置
# bash backup.sh rclone -> 使用本文件 RCLONE 段配置(上传到网盘等 rclone 支持的远端)
# bash backup.sh sftp -> 使用本文件 SFTP 段配置(暂未实现)
# ===== 公共配置COMMON_*=====
# 要备份的源目录或文件(多个用空格分隔,需引号包裹)
COMMON_SOURCE_PATHS="/opt/app"
# 本地临时打包目录(用于存放归档/分卷/sha 文件)
# 注意:当 COMMON_CLEAN_LOCAL=true 时,会清理目录下所有以 COMMON_ARCHIVE_PREFIX 开头
# 的文件/目录(包含上次失败遗留的中间产物),其它无关文件不受影响。
COMMON_TMP_DIR="/tmp/backup_script"
# 归档/远端目录命名前缀,最终形如 ${COMMON_ARCHIVE_PREFIX}-YYYYmmdd-HHMMSS/
COMMON_ARCHIVE_PREFIX="backup"
# 上传完成后是否删除本地归档true / false
COMMON_CLEAN_LOCAL="true"
# 远端保留天数,0 表示不清理;按 ${COMMON_ARCHIVE_PREFIX}-YYYYmmdd-HHMMSS 目录整体清理
COMMON_RETENTION_DAYS=15
# 分卷大小,默认 1G;留空表示不分卷;非空时形如 1G / 500M / 100k
# 文件名形如 backup-YYYYmmdd-HHMMSS.tar.gz.0 / .1 / .2 ...
# 同目录下还会生成 backup-YYYYmmdd-HHMMSS.sha256覆盖所有分卷的校验清单
#
# 恢复(在备份目录里执行):
# sha256sum -c backup-YYYYmmdd-HHMMSS.sha256 # 校验
# cat $(ls *.tar.gz.* | sort -V) | tar -xzf - # 合并并解压
COMMON_SPLIT_SIZE="1G"
# ===== SMB / Samba 配置(仅 bash backup.sh smb 使用)=====
# 服务器地址,例如 192.168.1.10 或 nas.local
SMB_HOST=""
# 共享名,例如 backup
SMB_SHARE=""
# 共享内的子目录(可选),例如 servers/web1
SMB_PATH=""
# 用户名 / 密码
SMB_USER=""
SMB_PASSWORD=""
# 域 / 工作组(可选)
SMB_DOMAIN=""
# SMB 协议版本(可选),例如 3.0
SMB_VERSION=""
# ===== rclone 配置(仅 bash backup.sh rclone 使用)=====
# 前置条件:先在本机用 `rclone config` 配置好远端OAuth 流程各家网盘不同,由 rclone 自己处理)。
# 配置完成后用 `rclone listremotes` 可看到远端名(带尾随冒号),填到 RCLONE_REMOTE 时不带冒号。
# rclone 可执行文件路径(可选,留空则从 PATH 中查找 `rclone`
# 适用于 rclone 装在非标准路径(例如 /usr/local/bin/rclone、/opt/rclone/rclone的情况
RCLONE_EXECUTABLE=""
# rclone 远端名(不带冒号),例如 gdrive / onedrive / s3-backup
RCLONE_REMOTE=""
# 远端目标子路径,例如 vps-backup/web1。最终路径 = ${RCLONE_REMOTE}:${RCLONE_PATH}/${ARCHIVE_BASENAME}/
RCLONE_PATH=""
# 自定义 rclone.conf 路径(可选,留空则使用 rclone 默认位置 ~/.config/rclone/rclone.conf
RCLONE_CONFIG=""
# 透传给 rclone copy / purge / lsf 的额外参数(可选)
# 常用:--bwlimit 10M限速 --transfers 2并发数 --tpslimit 4每秒事务上限,避免被风控
RCLONE_FLAGS=""
# ===== SFTP 配置(仅 bash backup.sh sftp 使用,预留,暂未实现)=====
SFTP_HOST=""
SFTP_PORT="22"
SFTP_USER=""
SFTP_PASSWORD=""
SFTP_KEY=""
SFTP_PATH=""