#!/bin/sh # ============================================================================= # rclone 定时备份:把 $HERMES_HOME 同步到 $RCLONE_REMOTE # 排除 logs(体积大且可重建)和 skills(官方自带可重建,数量多易触发 R2 501)。 # copy 仅复制新增/变更文件,不删除远端文件,避免权限问题。 # 失败下次重试。 # ============================================================================= set -u [ -z "${RCLONE_REMOTE:-}" ] && exit 0 [ -z "${HERMES_HOME:-}" ] && exit 0 echo "[rclone] sync ${HERMES_HOME} -> ${RCLONE_REMOTE} ($(date -u +%FT%TZ))" rclone copy "$HERMES_HOME" "$RCLONE_REMOTE" \ --exclude "logs/**" \ --exclude "skills/**" \ --exclude ".git/**" \ --exclude ".bashrc" \ --exclude ".bash_logout" \ --exclude ".profile" \ --s3-list-version 1 \ --transfers 4 \ --checkers 8 \ --stats=30s \ --stats-one-line \ || echo "[rclone] sync 失败,将在下次间隔重试"