备份WordPress站点到Mega网盘并自动清理旧的备份

138次阅读
没有评论

共计 1582 个字符,预计需要花费 4 分钟才能阅读完成。

首先,你要做如下事情:
1. 去 mega 官网找到 megacmd 这个工具的 rpm 或者 deb 安装包下载到你的服务器上并进行安装
这里以 ubuntu 20.04 为例:

wget https://mega.nz/linux/repo/xUbuntu_20.04/amd64/megacmd-xUbuntu_20.04_amd64.deb
sudo apt install ./megacmd-xUbuntu_20.04_amd64.deb
  1. 在 mega 网盘控制台上新建一个文件夹,下方脚本用到的文件夹是Backups/Wordpress,以你自己的喜好建一个然后改变下面脚本的路径就行了
  2. 执行 mega-login email password 命令,自己替换一下邮箱和密码,如果开了两部验证也需要输入一下那个 6 位数字

直接上脚本:

cur_day="$(date +%Y-%m-%d)"
wordpress_backup(){
    db_username="root"
    db_password=""db_name="my_wordpress"
    cd /home/wwwroot
    tar czvf www.sharpgan.com_$cur_day.tgz www.sharpgan.com/
    mega-put www.sharpgan.com_$cur_day.tgz /Backups/Wordpress
    rm -rf  www.sharpgan.com_$cur_day.tgz
    mysqldump --opt -u$db_username -p$db_password $db_name | gzip > ./wordpress_db_$cur_day.sql
    mega-put wordpress_db_$cur_day.sql /Backups/Wordpress
    rm -rf  wordpress_db_$cur_day.sql
    old_mega_files=$(mega-ls --time-format="%s" -lR --show-handles /Backups/Wordpress |  grep "H:" | sort -rk 4 | awk "{ if (\$4 < $(date --date='7 days ago'+%s) ) print \$5}")
    if [! -z "$old_mega_files"]
    then
        mega-rm -r $old_mega_files
    fi
}
wordpress_backup

以上脚本你需要修改一下 WordPress mysql 数据库的用户名密码和库名为你自己的,以及你的 WordPress 程序的根目录的上一级的路径和你的网站的文件名,就是下面这一些内容:

db_username="root"
db_password=""db_name="my_wordpress"
cd /home/wwwroot
tar czvf www.sharpgan.com_$cur_day.tgz www.sharpgan.com/
mega-put www.sharpgan.com_$cur_day.tgz /Backups/Wordpress
rm -rf  www.sharpgan.com_$cur_day.tgz

别的就不用动了,另外本文标题中的自动清理旧的备份的核心命令如下:

mega-rm -r $(mega-ls --time-format="%s" -lR --show-handles /compucenter |  grep "H:" | sort -rk 4  | awk "{ if (\$4 < $(date --date='7 days ago'+%s) ) print \$5}")

这里是保留了七天的备份,你可以自行修改上述命令中的时间为你想要的时间。
我这里之所以强调要自动清理旧的备份,是因为现在新的 mega 网盘账号的免费空间据说只有 15G,虽然我的老账号有 50 个 G 也要省着用。
下面展示一下以上脚本的终端输出效果:
备份 WordPress 站点到 Mega 网盘并自动清理旧的备份
以下是 mega 网盘控制台的效果:
备份 WordPress 站点到 Mega 网盘并自动清理旧的备份

正文完
 
sharp097
版权声明:本站原创文章,由 sharp097 2023-03-04发表,共计1582字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)