定时备份服务器 / 网站数据到 Github 私人仓库
定时备份服务器 / 网站数据到 Github 私人仓库
现在 Github 被微软收购后,私人仓库已经开始免费了,然后就可以拿来折腾下了,让其充分发挥下作用,这里我们可以用来备份下网站或者服务器一些数据。
配置 Git SSH 密钥
由于本地 Git 仓库和 GitHub 仓库之间的传输是通过 SSH 加密的,所以必须要让 github 仓库认证你 SSH key,在操作之前,需要先在服务器上生成 SSH key。
我们先去根目录下使用命令:
cd ~ |
这里会要你命名密匙名称 (这里建议使用默认名称),然后连续按几次 Enter,这时候会在 /root/.ssh 文件夹生成 2 个 ssh 密钥,然后我们查看公钥 id_rsa.pub。
cat ~/.ssh/id_rsa.pub |
查看后,再复制下公钥,然后打开 Github 官网,进入 https://github.com/settings/ssh/new ,Title 随便填,然后 Key 填入刚刚复制的密匙,最后点击 Add SSH Key 添加即可。
建立私人仓库
我们需要先访问 https://github.com/new ,新建一个仓库用来存放备份文件,名称自己随意,记得下面一定要勾选 Private,也就是私人仓库。
配置本地仓库
由于博主是用来备份网站,所以需要备份文件夹为网站根目录 /alidata/,也就是把该文件夹定为本地仓库,使用命令:
#进入需要备份的文件夹 |
关联仓库的时候,后面可以用 HTTPS 链接也可以用 SSH,这里强烈建议选择 SSH,安全性很高。
初次备份
#进入备份的文件夹 |
推送的时候可能会提示 The authenticity of host ‘github.com’ can’t be established. 信息,直进 yes 即可。
然后可以看到仓库的备份文件了。
设置定时备份
在根目录先新建一个 bash 脚本:
nano ~/gitback.sh |
代码如下:
|
然后编辑好了后,使用 ctrl+x,y 保存退出。再测试下脚本,使用命令
bash ~/gitback.sh |
脚本没问题的话,再设置为每天 05:15 执行一次:
#并将运行日志输出到根目录的siteback.log文件 |
最后使用命令查看添加成功。
crontab -l |