Hướng dẫn backup dữ liệu securecrt
Show
Download Personal Backup 6 miễn phí - Phần mềm sao lưu dữ liệu trên ổ cứng máy tính chuyên nghiệp với khả năng sao chép dữ liệu trên ổ cứng và lưu lạiTổng quan phần mềm Personal Backup Sao lưu dữ liệu máy tính:Personal Backup là phần mềm sao lưu dữ liệu trên ổ cứng máy tính chuyên nghiệp với khả năng sao chép dữ liệu trên ổ cứng và lưu lại bất kỳ thư mục nào. Personal Backup là phương pháp tối ưu nhất để đảm bảo an toàn cho dữ liệu trên máy tính tránh khỏi các loại virus, mã độc xâm nhập và làm mất dữ liệu bởi bạn có thể khôi phục lại dữ liệu đã mất bất cứ lúc nào nếu nó đã được sao lưu và lưu trữ trên thư mục của máy tính. Personal Backup - Sao lưu dữ liệu máy tính Tính năng của Personal Backup
Personal Backup được sao lưu dữ liệu thông qua ứng dụng FTP với tùy chọn với proxy và FTPS với nhiều tùy chọn sao lưu khác nhau như sao lưu trong tập tin đơn lẻ, sao lưu trong tập tin zip... Ngòa ra, Personal Backup đưa ra hướng dẫn cụ thể đối với các công việc sao lưu mới bạn sẽ không mất nhiều thời gian để tìm hiểu và sử dụng phần mềm, chương trình không giới hạn số lần sao lưu và thực hiện quá trình hoàn chỉnh nhất để thực hiện công việc của mình. Hôm nay BKNS sẽ hướng dẫn bạn cách backup VPS lên Google Drive bằng Rclone đơn giản và dễ dàng. Cùng theo dõi ngay nhé Mục lục
1. Cài đặt RcloneĐầu tiên bạn phải cài đặt Rclone để backup VPS lên Google Driver – Cài đặt với phiên bản v1.42 hệ điều hành Linux 64bit cd /root/ wget https://downloads.rclone.org/v1.42/rclone-v1.42-linux-amd64.zip unzip rclone-v*.zip \cp rclone-v*-linux-amd64/rclone /usr/sbin/ rm -rf rclone-* – Cài đặt với phiên bản v1.42 hệ điều hành Linux 32bit cd /root/ wget https://downloads.rclone.org/v1.42/rclone-v1.42-linux-386.zip unzip rclone-v*.zip \cp rclone-v*-linux-386/rclone /usr/sbin/ rm -rf rclone-*
Giờ bạn có thể sử dụng lệnh 2. Một số câu lệnh thông dụngCác câu lệnh sử dụng Rclone thường có dạng như sau: rclone command Trong đó Một số lệnh thông dụng khi dùng Rclone:
Thông tin chi tiết từng lệnh bạn xem thêm ở đây. 3. Cách backup VPS lên Cloud với Rclone3.1. Tạo kết nối với Google DriveĐầu tiên chúng ta sẽ cấu hình kết nối Rclone với Google Drive, việc này chỉ phải làm 1 lần duy nhất. Kết nối được tạo tên remote Kết nối SSH với VPS rồi chạy lệnh: # rclone config Bạn sẽ nhận được
thông báo: Ở dòng name bạn nhập Một danh sách các dịch vụ cloud xuất hiện, hãy chọn số Ở 2 dòng tiếp theo Mục Tiếp theo, để trống
với Khi được hỏi Giao diện sẽ xuất hiện như sau: Giao diện sau khi bạn click vào một đường link mà Rclone đưa raNhấn nút Allow để đồng ý, sau đó bạn sẽ nhận được đoạn mã verification code như hình dưới:
Quay trở lại cửa
sổ SSH, copy rồi paste code này vào dòng Chọn n tức no đối với Rclone cần xác nhận thông tin một lần nữa, bạn nhấn Toàn bộ quá trình cài đặt sẽ tương tự như sau (bôi đỏ là cần nhập input): # rclone config No remotes found - make a new one n) New remote s) Set configuration password q) Quit config n/s/q> n name> remote Type of storage to configure. Choose a number from below, or type in your own value 1 / Alias for a existing remote \ "alias" 2 / Amazon Drive \ "amazon cloud drive" 3 / Amazon S3 Compliant Storage Providers (AWS, Ceph, Dreamhost, IBM COS, Minio) \ "s3" 4 / Backblaze B2 \ "b2" 5 / Box \ "box" 6 / Cache a remote \ "cache" 7 / Dropbox \ "dropbox" 8 / Encrypt/Decrypt a remote \ "crypt" 9 / FTP Connection \ "ftp" 10 / Google Cloud Storage (this is not Google Drive) \ "google cloud storage" 11 / Google Drive \ "drive" 12 / Hubic \ "hubic" 13 / Local Disk \ "local" 14 / Mega \ "mega" 15 / Microsoft Azure Blob Storage \ "azureblob" 16 / Microsoft OneDrive \ "onedrive" 17 / OpenDrive \ "opendrive" 18 / Openstack Swift (Rackspace Cloud Files, Memset Memstore, OVH) \ "swift" 19 / Pcloud \ "pcloud" 20 / QingCloud Object Storage \ "qingstor" 21 / SSH/SFTP Connection \ "sftp" 22 / Webdav \ "webdav" 23 / Yandex Disk \ "yandex" 24 / http Connection \ "http" Storage> 11 Google Application Client Id - leave blank normally. client_id> Google Application Client Secret - leave blank normally. client_secret> Scope that rclone should use when requesting access from drive. Choose a number from below, or type in your own value 1 / Full access all files, excluding Application Data Folder. \ "drive" 2 / Read-only access to file metadata and file contents. \ "drive.readonly" / Access to files created by rclone only. 3 | These are visible in the drive website. | File authorization is revoked when the user deauthorizes the app. \ "drive.file" / Allows read and write access to the Application Data folder. 4 | This is not visible in the drive website. \ "drive.appfolder" / Allows read-only access to file metadata but 5 | does not allow any access to read or download file content. \ "drive.metadata.readonly" scope> 1 ID of the root folder - leave blank normally. Fill in to access "Computers" folders. (see docs). root_folder_id> Service Account Credentials JSON file path - leave blank normally. Needed only if you want use SA instead of interactive login. service_account_file> Remote config Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine or Y didn't work y) Yes n) No y/n> n If your browser doesn't open automatically go to the following link: https://accounts.google.com/o/oauth2/auth?access_type=offlinexxxx Log in and authorize rclone for access Enter verification code> 4/AABw8gMKPxxxxxxxxxx Configure this as a team drive? y) Yes n) No y/n> n -------------------- [remote] type = drive client_id = client_secret = scope = drive root_folder_id = service_account_file = token = {"access_token":"xxx","token_type":"Bearer","refresh_token":"1/xxx","expiry":"2018-05-16T10:55:03.488381196+07:00"} -------------------- y) Yes this is OK e) Edit this remote d) Delete this remote y/e/d> y Current remotes: Name Type ==== ==== remote drive e) Edit existing remote n) New remote d) Delete remote r) Rename remote c) Copy remote s) Set configuration password q) Quit config e/n/d/r/c/s/q> q Vậy là xong, giờ bạn có thể test với lệnh liệt kê thư mục trong kết nối # rclone lsd remote: 3.2. Tạo kết nối với Amazon Drive/One Drive/YandexHiện nay, bên cạnh GG Drive, các Cloud khác cũng dần trở nên phổ biến và có nhiều ưu đãi cho người dùng. Việc tạo kết nối tới Amazon Drive/OneDrive/Yandex tương tự GG Drive, chỉ khác biệt bước lấy access_token. Việc xác thực được thực hiện qua remote machine có trình duyệt (ví dụ máy tính của bạn) với lệnh Ví dụ cụ thể OneDrive, đến bước xác thực: Microsoft App Client Id - leave blank normally. client_id> Microsoft App Client Secret - leave blank normally. client_secret> Remote config Choose OneDrive account type? * Say b for a OneDrive business account * Say p for a personal OneDrive account b) Business p) Personal b/p> p Use auto config? * Say Y if not sure * Say N if you are working on a remote or headless machine y) Yes n) No y/n> n For this to work, you will need rclone available on a machine that has a web browser available. Execute the following on your machine: rclone authorize "onedrive" Chạy lệnh
C:\Users\HocVPS>D:\Rclone\rclone.exe authorize "onedrive" Choose OneDrive account type? * Say b for a OneDrive business account * Say p for a personal OneDrive account b) Business p) Personal b/p> p If your browser doesn't open automatically go to the following link: http://127.0.0.1:53682/auth Log in and authorize rclone for access Waiting for code... Got code Paste the following into your remote machine ---> {"access_token":"EwD4Aq1DBAAUcSSzoTJJxxx","expiry":"2018-05-16T11:43:25.3184173+07:00""} <---End paste Chú ý, access_token là một chuỗi kí tự liền mạch nên khi copy từ CMD bạn paste qua trình chỉnh sửa như EmEditor hay Notepad++ để loại bỏ hoàn toàn các kí tự thừa gây cách dòng. 3.3. Script backup toàn bộ VPS và upload lên Cloud– Script hoạt động với Rclone phiên bản 1.35 trở lên. – Tạo file vi /root/backup.sh – Copy toàn bộ nội dung script bên dưới rồi paste vào file) # HocVPS Script Plugin - Backup Server and Upload to Cloud # Version: 1.1 #!/bin/bash . /etc/hocvps/scripts.conf SERVER_NAME=HOCVPS_BACKUP TIMESTAMP=$(date +"%F") BACKUP_DIR="/root/backup/$TIMESTAMP" MYSQL_USER="root" MYSQL=/usr/bin/mysql MYSQL_PASSWORD=$mariadbpass MYSQLDUMP=/usr/bin/mysqldump SECONDS=0 mkdir -p "$BACKUP_DIR/mysql" echo "Starting Backup Database"; databases=`$MYSQL --user=$MYSQL_USER -p$MYSQL_PASSWORD -e "SHOW DATABASES;" | grep -Ev "(Database|information_schema|performance_schema|mysql)"` for db in $databases; do $MYSQLDUMP --force --opt --user=$MYSQL_USER -p$MYSQL_PASSWORD $db | gzip > "$BACKUP_DIR/mysql/$db.gz" done echo "Finished"; echo ''; echo "Starting Backup Website"; # Loop through /home directory for D in /home/*; do if [ -d "${D}" ]; then #If a directory domain=${D##*/} # Domain name echo "- "$domain; zip -r $BACKUP_DIR/$domain.zip /home/$domain/public_html/ -q -x /home/$domain/public_html/wp-content/cache/**\* #Exclude cache fi done echo "Finished"; echo ''; echo "Starting Backup Nginx Configuration"; cp -r /etc/nginx/conf.d/ $BACKUP_DIR/nginx/ echo "Finished"; echo ''; size=$(du -sh $BACKUP_DIR | awk '{ print $1}') echo "Starting Uploading Backup"; /usr/sbin/rclone move $BACKUP_DIR "remote:$SERVER_NAME/$TIMESTAMP" >> /var/log/rclone.log 2>&1 # Clean up rm -rf $BACKUP_DIR /usr/sbin/rclone -q --min-age 2w delete "remote:$SERVER_NAME" #Remove all backups older than 2 week /usr/sbin/rclone -q --min-age 2w rmdirs "remote:$SERVER_NAME" #Remove all empty folders older than 2 week /usr/sbin/rclone cleanup "remote:" #Cleanup Trash echo "Finished"; echo ''; duration=$SECONDS echo "Total $size, $(($duration / 60)) minutes and $(($duration % 60)) seconds elapsed." Lưu ý:
– Nhấn Ctrl+O, Enter để lưu và Ctrl+X để thoát. – Phân quyền cho script chmod +x /root/backup.sh – Vậy là xong rồi đó, giờ bạn có thể test lại bằng cách chạy lệnh: /root/backup.sh Thử kiểm tra trên Cloud xem có thư mục mới với dữ liệu backup chưa nhé, hoặc test với lệnh: rclone lsl remote:HOCVPS_BACKUP Nếu không có vấn đề gì sẽ thấy kết quả trả về có một thư mục là ngày hiện tại, bên trong có chứa file nén website (.zip), cấu hình Nginx (.conf) và database (.gz). 3.4. Tạo cronjob tự động backup hàng ngàyGiờ mình sẽ cho script tự động chạy lúc 2h00 sáng. EDITOR=nano crontab -e Dán nội dung sau vào cửa sổ Terminal 0 2 * * * /root/backup.sh > /dev/null 2>&1 Nhấn Ctrl+O, Enter để lưu và Ctrl+X để thoát Vậy là xong, cứ 2h sáng hàng ngày script sẽ tự động chạy, backup toàn bộ dữ liệu của VPS rồi upload lên Cloud. Đồng thời, dữ liệu backup trên VPS sẽ được xóa luôn sau khi upload xong. 4. Tải file backup từ Cloud xuống VPSCách đơn giản nhất để bạn khôi phục lại dữ liệu đó là tải file backup từ Cloud xuống máy tính, rồi tùy theo nhu cầu mà up trở lại lên VPS. Tuy nhiên, nếu muốn tải trực tiếp file backup về VPS, bạn có thể sử dụng luôn Rclone với câu lệnh Ví dụ tham khảo: rclone copy "remote:/HOCVPS_BACKUP/2017-11-01" /root/ Lệnh trên sẽ copy folder Trên đây là cách backup VPS lên Google Drive bằng Rclone mà BKNS muốn hướng dẫn cho bạn. Chúc các bạn may mắn và thành công với cách làm trên! >> Tìm hiểu thêm:
Nguồn: BKNS |