Lenh backup trong linux bang ssh

Hiển thị thông tin tóm tắt về các loại phần cứng như CPU, bộ nhớ, các ổ dĩa, các cổng USB, card mạng…

lspci

Liệt kê pci bus và thông tin các thiết bị đang kết nối đến pci bus như card vga, card màn hình, card mạng…

lsblk

Hiển thị tất cả các partition ổ cứng và các thiết bị lưu trữ khác như thẻ nhớ..

df hoặc df -H

Lệnh này dùng kiểm tra mount point của tập tin hệ thống và dung lượng của ổ cứng.

free

Kiểm tra dung lượng RAM đang sử dụng và còn trống trên hệ thống.

/proc file

Ngoài ra, chúng ta có thể xem thêm các thông tin về phần cứng bằng cách xuất nội dung các tập tin proc ra màn hình:

//accounts.google.com/o/oauth2/auth?client_id=123456789123-7n0vf5akeru7on6o2fjinrecpdoe99eg.apps.googleusercontent.com&redirect_uri=urn%3Aietf%3Awg%3Aoauth%3A2.0%3Aoob&response_type=code&scope=https%3A%2F%2Fwww.googleapis.com%2Fauth%2Fdrive&state=state 

Mở trình duyệt và copy link trên vào thanh địa chỉ, và đăng nhập với tài khoản google drive của bạn .

Bạn sẽ nhận được mã token sau khi xác nhận cho phép tương tác tới dịch vụ Google Drive

Copy mã token về cửa sổ SSH

Enter verification code: 4/9gKYAFAJ326XIP6JJHAEhs342t35LPiA5QGW0935GHWHy9

Vậy là bạn đã thực hiện xong việc cho phép VPS kết nối tới tài khoản Google Drive của bạn

3]. Tạo script upload như sau:

 Copy nội dung sau

#!/bin/bash
LOCALFOLDER=/backup
GFOLDERID=0B5I8-U7RcQGieF9rYmNudkkwQWM
for i in $[ls $LOCALFOLDER]
do
drive  upload --file /backup/$i -p $GFOLDERID
done

Trong đó

LOCALFOLDER là vị trí folder chứa files backup của bạn

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

3.a] 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

- Sau khi tạo folder xong, click đúp vào folder đó để mở folder. Lúc này trên thanh địa chỉ sẽ là Google Drive Folder ID của bạn, copy Google Drive Folder ID về file script

*** 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 files thực thi

4], Đặt lịch tự động backup bằng cách gõ lệnh sau vào khung cửa sổ SSH

echo "0 4 */6 * * sh /root/autobackup.sh" >> /etc/crontab

Lệnh này sẽ thực thi file backup 6 ngày một lần vào 4h sáng.

Lưu ý: bạn cần thường xuyên kiểm tra dung lượng tài khoản google drive và hãy chắc chắn backup đã được tạo để có thể sử dụng sau này

Đối với Restic, nơi sẽ lưu trữ các bản backup được gọi là repository. Một repository có thể được lưu trữ local hoặc remote.

Ở hướng dẫn này, kỹ thuật chỉ đề cập đến việc backup ở local và remote thông qua SFTP

Local

Để tạo repo trên local, ta dùng lệnh

restic init --repo 

sau đó nhập password 2 lần để đặt password cho repo

Remote thông qua SFTP

Tiến trình backup sẽ không thể thực hiện nếu như có bất kỳ thông tin xác thực nào cần cung cấp, ví dụ như password của user dùng để thực hiện SFTP. Do đó, để thực hiện backup remote thông qua SFTP, trước tiên ta cần phải thực hiện cấu hình SSH thông qua key.

Ta gọi server đã cài đặt Restic là server A và server thực hiện lưu trữ repository là server B.

Trên server A, ta tiến hành tạo cặp khoá private key và public key bằng lệnh sau:

ssh-keygen -t rsa

Lưu ý: ở dòng Enter passphrase ta phải Enter để bỏ qua vì nếu đặt passphrase thì khi SFTP ta cũng cần nhập passphrase khiến quá trình backup không thể thực hiện

Tiếp tục ta dùng lệnh sau để copy public key sang server B:

ssh-copy-id -i @

Sau khi thực hiện xong, ta có thể thực hiện tạo remote repo thông qua lệnh:

restic -r sftp:@: init

Thực hiện Backup

Đối với Restic, các bản backup được gọi là snapshot.

Ta có thể thực hiện backup với câu lệnh:

restic -r -v backup  đối với backup local

yum install restic -y
0

Ví dụ thực hiện local backup thư mục /home sang repo /backup

Ví dụ thực hiện remote backup thư mục /home sang repo /remote-backup ở một VPS khác

Thực hiện Restore

Restore từ Snapshot

Ta cần sử dụng lệnh

yum install restic -y
1
Trong đó, snapshot có thể xác định bằng lệnh
yum install restic -y
2 hoặc sử dụng từ khoá lastest để chọn bản snapshot được tạo gần nhất

Restore thông qua mount point

Đối với cách restore trên, có thể thấy là ta cần restore cả bản snapshot, điều này sẽ làm tốn thời gian và không cần thiết nếu như ta chỉ cần restore một vài file, directory mà thôi.

Ta có thể sử dụng cách restore thông qua mount point để tiến hành copy những gì mà ta cần. Để thực hiện ta dùng lệnh như sau:

yum install restic -y
3

yum install restic -y
4

yum install restic -y
5

Sau khi thực hiện xong, ta nhấn tổ hợp phím Ctrl + A + D để thoát khỏi screen

Tiếp theo ta có thể truy cập vào thư mục /mnt/restic/hosts/ thì sẽ thấy được danh sách các bản snapshot kèm theo thời gian. Ta có thể tiếp tục truy cập vào bản snapshot cần thiết và lấy dữ liệu bằng lệnh cp hoặc rsync.

Sau khi toàn tất, ta dùng lệnh umount /mnt/restic để unmount, tiếp theo dùng lệnh screen -X -S restic quit để tắt screen.

Chủ Đề