OpenWrt 使用 alist 挂载了网盘,现在需要定时把配置文件备份到网盘上。

OpenWrt 挂载 WebDAV

安装 davfs2

opkg update
opkg install davfs2

设置 WebDAV 地址及账号,/etc/davfs2/secrets

https://webdav.example/path davusername davpassword

设置权限

# chmod 600 /etc/davfs2/secrets
# chown root:root /etc/davfs2/secrets

将网盘挂载到指定路径

mount.davfs http(s)://address:<port>/path /mount/point

开机自动加载,在 /etc/rc.local 文件加上挂载命令。

备份打包配置文件脚本

#!/bin/sh

# 定义备份目录和文件名
BACKUP_DIR="opt/backup"
DATE=$(date +%Y%m%d%H%M%S)
BACKUP_FILE="openwrt_backup_$DATE.tar.gz"

# 要备份的文件夹列表
BACKUP_FOLDERS="etc/ opt/flask/ opt/cookiecloud/ opt/ql/"

# 创建备份目录
# mkdir -p $BACKUP_DIR

# 备份所有文件夹到指定目录,排除指定的子目录
tar -czf /$BACKUP_DIR/$BACKUP_FILE -C / $BACKUP_FOLDERS # --exclude=/etc/config/subfolder1 --exclude=/etc/config/subfolder2

# 打印备份完成信息
echo "配置备份完成: $BACKUP_DIR/$BACKUP_FILE"

添加定时任务

备份时间根据自己需求设置,这里设置的是每周 4 凌晨 2 点备份

echo "0 2 * * 4 sh /opt/backup.sh" >> /etc/crontabs/root