Hướng dẫn tự động tạo backup VPS lên google drive

1. Các công cụ cần dùng

Mysqlmydumper

gdrive

HocVps Script 

 

Đầu tiên mình cài đặt HocVps Script, cách cài như thế nào các bạn vui lòng lên trang chủ hocvps để tìm hiểu.

Sau khi cài xong mình vào thư mục domain chính ở mục private_html mình cài thêm Mysqldumper bản mới nhất.

2. Cài đặt drive

a. Tải file drive

wget -O drive https://drive.google.com/uc?id=0B3X9GlR6EmbnMHBMVWtKaEZXdDg  
mv drive /usr/sbin/drive  
chmod 755 /usr/sbin/drive

Nếu bạn chưa có wget có thể cài đặt bằng lệnh sau yum install wget -y

b. Thực thi drive và lấy token google drive

Bạn gõ vào drive

Sau đó hệ thống phản hồi bạn đường dẫn, bạn chỉ cần lấy đường dẫn đó đăng nhập bằng tài khoản google drive của mình thì sẽ nhận được mã token xác nhận.

sau đó bạn sao chép mã token về cửa sổ SSH

Enter verification code: 1/2gKYAFAJ345XIP6JJHAEhs123t35LPiA5QGW1111GHWHy1

Như vậy là thành công.

c. Tạo script upload như sau:

nano /root/autobackup.sh

Copy nội dung sau

#!/bin/bash
perl /home/............../private_html/mysqldumper/msd_cron/crondump.pl -config=mysqldumper -html_output=0
LOCALFOLDER=/backup
GFOLDERID=0B5I8-U7RcQGieF9rYmNudkkwQWM

LOCALFOLDERHOME=/home
DATEE=$(date +"%d-%m-%Y")

TIMESTAMP=$(date +"%d-%m-%Y_%H-%M")
mkdir -p /backup/$TIMESTAMP/
for i in $(ls $LOCALFOLDERHOME)
do
	zip -r /backup/$TIMESTAMP/$i"_"$TIMESTAMP.zip /home/$i -q -x /home/$i/public_html/wp-content/cache/**\*
	echo /backup/$TIMESTAMP/$i"_"$TIMESTAMP.zip " -> DONE!";
done

for i in $(ls $LOCALFOLDER)
do
	drive  upload --file /backup/$i -p $GFOLDERID
	rm -rf /backup/$i/
done

LOCALFOLDER là vị trí thư mục chứa files backup của bạn trên servers

GFOLDERID là ID folder trên google drive sẽ lưu trữ file backup của bạn

“………” bạn thay đổi cho phù hợp, có thể lấy từ Perl Mysqldumper

Cách lấy Google Drive Folder ID

– Đăng nhập vào tài khoản google drive của bạn, và tạo folder

Quan sát đường dẫn, https://drive.google.com/drive/u/0/folders/XXXXXXXXXXXXXXXXXXXXXXXXXX

ID của bạn có dạng XXXXXXXXXXXXXXXXXXXXXXXXXX

Sau khi hoàn thành các phần khai báo bạn, ấn lần lượt các phím sau “Ctrl + X“, Y , [Enter] để lưu lại file thực thi

  • bạn nhớ chmod 777 đối với autobackup.sh
  • tạo thư mục /backup/ ngang hàng với /home/ và phải chmod 777
mkdir /backup/
chmod -R 777 /backup/
chmod -R 777 /root/autobackup.sh

3. Hẹn giờ tự động tạo backup và upload lên drive

EDITOR=nano crontab -e

chèn vào nội dung sau để tạo backup lúc 0h00 hằng ngày:

0 0 * * * sh /root/autobackup.sh

Sau đó bấm ctrl+x; nhấn y, và enter.

Sau đó khởi động lại cron daemon:

/etc/init.d/crond restart

Lưu ý thêm nếu Perl của mysqldumper lỗi, thì bạn hãy thử chạy câu lệnh sau

yum install "perl(DBD::mysql)"
yum install perl-CGI

Chúc bạn thành công.

Trả lời

Email của bạn sẽ không được hiển thị công khai. Các trường bắt buộc được đánh dấu *