定时备份linux里的数据
定时备份linux里的数据
最近听说有博主的文档被删除了,触发了我的被害妄想症所以做了备份的策略
策略很简单,利用crontab 定期去备份指定路径,压缩 并上传到ftp中。
crontab
利用工具
- linux crontab
- 一台ftp 服务器
- 由于我shell 命令不太熟,这里使用的java 实现,打成docker 镜像。
docker 备份工具介绍
我还备份了mysql
time=$(date "+%Y%m%d-%H%M%S")
# 备份到mysql 到指定目录
docker exec -it mysql mysqldump -uroot -pllw19950822 halodb > /root/backup/mysql/"${time}backup.sql"
把本地文件定期备份到ftp中
docker run -it --rm \
-e "JAVA_OPTS=--PATHS=/data/xxx --HOST=yourhost --PORT=port --USER_NAME=username --PASSWORD=password --BACK_UP_DIR=yourDir" \
-v ~/:/data ccr.ccs.tencentyun.com/liulewei/back-up:latest
参数 | 说明 | 例子 |
---|---|---|
PATHS | 你需要备份文件的本地路径 可以为多个以,分割 | /data/xxx,/data/xyy |
HOST | 你ftp 服务器的路径 | xxx.site |
PORT | 你ftp 服务器的端口号 一般为21 | 21 |
USER_NAME | 你ftp 服务器的用户名 | root |
PASSWORD | 你ftp 服务器的密码 | pass |
BACK_UP_DIR | 你ftp中的文件夹路径 | /backup |