Cài đặt rclone.
curl https://rclone.org/install.sh | sudo bash
Tham khảo bài biết này cấu hình rclone kết nối drive google
Chỗ này mình đã có cài rclone ở máy khách rồi nên mình copy file config qua thôi
mkdir -p .config/rclone/
>>copy file rclone.conf vào thư mực trên
[root@gitlab-centos7 rclone]# ls
rclone.conf
[root@gitlab-centos7 rclone]# scp rclone.conf 192.168.101.34:/root/.config/rclone/
The authenticity of host '192.168.101.34 (192.168.101.34)' can't be established.
ECDSA key fingerprint is SHA256:O0qnJU7i3o/PgSbfJlFxBn1Et7IhyNtHuwyiaIwcSao.
ECDSA key fingerprint is MD5:eb:dc:fe:76:30:a3:e3:1e:fb:45:f0:f4:e7:28:96:46.
Are you sure you want to continue connecting (yes/no)? yes
Warning: Permanently added '192.168.101.34' (ECDSA) to the list of known hosts.
root@192.168.101.34's password:
rclone.conf 100% 436 854.6KB/s 00:00
Kiểm tra file config có sài được không:
root@docker-center-u20:~/.config/rclone# rclone lsd dc_nim94_google_drive:
-1 2021-07-09 16:06:59 -1 gitlab


Dưới server mình tạo 2 folder tương ứng để mount 2 folder trên drive
root@docker-center-u20:/home# mkdir -p backup/wordpress
root@docker-center-u20:/home# mkdir -p backup/database
Tạo file chạy theo kiểu systemd để mount lên Drive
vi /etc/systemd/system/rclone-notes.service
# make in by mrnim
[Unit]
Description=Drive Google Notes (rclone)
AssertPathIsDirectory=/home/backup
After=plexdrive.service
[Service]
Type=simple
ExecStart=/usr/bin/rclone mount \
--config=/root/.config/rclone/rclone.conf \
--vfs-cache-mode full \
--vfs-cache-max-age 24h \
--allow-non-empty dc_nim94_google_drive:notes /home/backup/
ExecStop=/bin/fusermount -u /home/backup
Restart=always
RestartSec=10
[Install]
WantedBy=default.target
>>>khởi động thôi
systemctl daemon-reload
systemctl start rclone-notes
systemctl enable rclone-notes
Sử dụng câu lệnh này để nén file
tar -czvf /home/backup/wordpress/notes.tar.gz /home/docker/wordpress /home/docker/mariadb
giờ mình viết 1 script
#!/bin/bash
TIMESTAMP=$(date +%F)
tar -czvf /home/backup/wordpress/notes-$TIMESTAMP.tar.gz /home/docker/wordpress /home/docker/mariadb
find /home/backup/wordpress -mtime +3 -type f -delete
cho chạy crontab
crontab -e
>>>>add vào cuối
0 3 * * * sudo bash /root/backup_wordpress.sh
>>>>centos
systemctl restart crond.service
systemctl status crond.service
>>>>ubuntu
sudo service cron reload
or
/etc/init.d/cron reload
