Puo's 菜园子 学习园地 http://puo.cn
易记网址: http://wordpress.cn.com

七牛云自动备份脚本

七牛云的对象存储有免费的10G存储空间,很适合用来当服务器的关键配置文件备份,所以自己写了一个sh脚本用来定时将本地文件备份后上传到七牛云存储空间。

该脚本依赖于官方命令行工具,下载地址

密钥获取

七牛云qshell自动备份文件脚本如下

#!/bin/bash

# 设置七牛云存储空间的相关信息
# 将获取到的密钥放在这儿
ACCESS_KEY="AZmEJedxxxxxxxxxxxxxxxxxxxxxxxx"
SECRET_KEY="ZBgriX3Yxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
qshell="/usr/bin/qshell"  # 请将路径替换为实际的 qshell 路径

# 这个name随意取
$qshell account "$ACCESS_KEY" "$SECRET_KEY" "name"

# 备份的源目录和目标目录
# 这个放你需要备份的目录列表,我需要备份三个目录,所以写了三个
SRC_DIRS=("/root" "/etc/nginx/conf.d" "/usr/local/ServerStatus")
# 备份文件的名称,和SRC_DIRS相对应
BASE_NAME=("root" "conf" "server")
# 这儿写备份后的文件存放在什么地方
BACKUP_DIR="/backup"

# 检查备份目录是否存在,如果不存在则创建
if [ ! -d "$BACKUP_DIR" ]; then
  mkdir "$BACKUP_DIR"
fi

# 当前日期
CURRENT_DATE=$(date +"%Y%m%d")

# 计算备份文件的索引,每5天切换一个备份
# 每五天备份一次,一共保持两个备份,一个五天前,一个十天前
INDEX=$((($CURRENT_DATE / 5) % 2))

# 循环备份每个目录
# 这儿的{0..2}和上面的SRC_DIRS数量相对应,0..2为三个文件夹
for i in {0..2}
do
    # 构建备份文件名,包括日期和索引
    BACKUP_FILE="${BACKUP_DIR}/${BASE_NAME[$i]}$((INDEX + 1)).tar.gz"

    # 使用 tar 命令备份目录
    tar czf "$BACKUP_FILE" "${SRC_DIRS[$i]}"

    # 输出备份信息
    echo "备份 ${SRC_DIRS[$i]}${BACKUP_FILE}"
done

# 确保配置文件存在,然后上传
# 将/root/sh/up.conf替换为你的上传配置文件
if [ -f "/root/sh/up.conf" ]; then
  $qshell qupload /root/sh/up.conf
else
  echo "配置文件不存在"
fi
{
    "src_dir" : "/backup",
    "ignore_dir" : true,
    "bucket" : "xiny-like",
    "rescan_local" : true,
    "overwrite" : true,
    "key_prefix": "backup/2/"
}
 

上传配置文件

{
    "src_dir" : "/backup",
    "ignore_dir" : true,
    "bucket" : "xiny-like",
    "rescan_local" : true,
    "overwrite" : true,
    "key_prefix": "backup/2/"
}
 

src_dir是本地备份文件的存放位置,bucket替换为七牛云空间创建时的名字,去查看空间名字

key_prefix替换为空间存储中文件夹的名字,我的文件将会存放在xiny-like存储空间中的backup/2/文件夹下,文件夹需要提前先创建。

定时备份

将脚本保存,然后添加到定时任务中

执行

crontab -e

输入

0 0 /5  * /bin/bash /root/sh/backup.sh
 

/root/sh/backup.sh为脚本位置,记得添加可执行权限

chmod 755 /root/sh/backup.sh
 
打赏
谢谢谅解上文的粗糙,允许转载,请注明转载地址:Puo's 菜园子 » 七牛云自动备份脚本
分享到

评论 2

  1. #1

    学习的公式https://mp.weixin.qq.com/s?__biz=MzIyNzk1NjE5OA==&mid=2247487141&idx=1&sn=0537e562c30ad064e57128f25b2f8697&chksm=e8580a2cdf2f833a64ca74af2e33bffa617878c08d9d3f48233a15293bde7e7d517db101196c&scene=21#wechat_redirect

    jianpi2年前 (2024-01-25)回复
  2. #2

    最近在听小说:
    《布衣官道》又名《破局》
    https://baike.baidu.com/item/%E5%B8%83%E8%A1%A3%E5%AE%98%E9%81%93/10978232?fr=ge_ala
    http://www.aixiashu.info/16/16224/
    喜马拉雅听小说《破局》
    https://www.ximalaya.com/album/75846675

    剑 痞1年前 (2024-04-04)回复

做一个好的个人学习园地

主要网建,域名、集装箱物流、生活方法论的学习及研究,整理等内容

我的原创博客-忆秋年Puo's菜园子-我的学习园地

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册