Dùng Syncthing để đồng bộ, sao lưu dữ liệu dự phòng

2
703
(Last Updated On: Th9 18, 2018)

Chào tất cả các bạn, trước đây mình có viết bài về Dùng nhiều máy chủ cho Website của bạn. Trong đó mình có đề cập tới việc cài đặt Syncthing để đồng bộ dữ liệu trên 2 Server. Dĩ nhiên bạn có thể đồng bộ nhiều server hơn nếu muốn tùy theo nhu cầu cũng như khả năng của bạn. Việc mở rộng hay tùy biến là không giới hạn.

Chúng ta sử dụng Syncthing để đồng bộ dữ liệu cho các máy chủ. Việc cài đặt bạn cũng có thể tham khảo bài viết mà mình đã đưa đường dẫn ở trên. Hoặc bạn truy cập vào địa chỉ này.

Sau đây mình sẽ tiến hành đồng bộ dữ liệu thư mục trên một máy chủ với máy chủ sao lưu. Chúng ta sẽ sao lưu những gì cần thiết trên máy chủ được sao lưu và tất cả được lưu trên ổ cứng trên máy chủ sao lưu.

Theo như thông tin bạn đã thấy, có một ổ đĩa /dev/sda được gắn vào có dung lượng 15Gb.

Bạn có thể lựa chọn sao lưu toàn bộ đĩa cứng, hoặc cũng có thể sao lưu một số thư mục quan trọng và những tập tin được thêm vào hàng ngày.

Mình ví dụ như cấu trúc các tập tin và thư mục của WordPress:

  • wp-includes/
  • wp-content/
  • wp-admin/
  • xmlpc.php
  • wp-trackback.php
  • wp-signup.php
  • wp-settings.php
  • wp-mail.php
  • wp-login.php
  • wp-load.php
  • wp-links-opml.php
  • wp-cron.php
  • wp-config.php
  • wp-comments-post.php
  • wp-blog-header.php
  • wp-activate.php
  • readme.html
  • license.txt
  • index.php

Trong ngoại trừ thư mục wp-content ra thì các tập tin cũng như thư mục khác hầu như giữ nguyên và chỉ thay đổi khi có một Plugin nào đó thêm vào hoặc khi WordPress có bản cập nhật mới. Do đó, dĩ nhiên chúng ta tốt nhất là sao lưu hết thảy bởi vì dung lượng không đáng là bao nhiêu. Và bạn cũng có thể lựa chọn sao lưu tất cả để an tâm mà không phải ngại ngần điều gì. Syncthing với giao diện web Gui sẽ cực kỳ dễ dàng cho bạn thiết lập các cấu hình mong muốn mà không cần phải biết đến lệnh Linux như Rsync.

Bây giờ mình gắn thêm một ổ cứng mới vào hệ thống.

Kiểm tra lại bằng dòng lệnh fdisk – l:

Bây giờ chúng ta đã có ổ cứng /dev/sdb được gắn vào với dung lượng 10GB.

Bây giờ chúng ta tiến hành tạo nhãn đĩa GPT:

parted -s /dev/sdb mklabel gpt

Tiếp tục chúng ta tiến hành tạo phân vùng Partition:

parted -s /dev/sdb unit mib mkpart primary 0% 100%

Có nghĩa là chúng ta sẽ tạo một phân vùng duy nhất chiếm toàn bộ dung lượng ổ cứng có được.

Chúng ta đã có phân vùng /dev/sdb1 với dung lượng bằng với ổ cứng chúng ta gắn vào.

Bây giờ chúng ta sẽ format phân vùng này với định dạng ext4 (phổ biến trên Ubuntu và có nhiêu ưu điểm):

mkfs -t ext4 /dev/sdb1
Vậy là chúng ta đã format xong phân vùng /dev/sdb1.

Tuy nhiên không giống như trên Windows, nếu xong bước Format là chúng ta đã có thể sử dụng, nhưng trên Linux, phân vùng này mặc dù đã có nhưng chưa sử dụng được vì chưa có thư mục để chúng ta “mount” vào. Hiểu nôm na rằng bạn cần tạo một thư mục mới đại diện cho phân vùng này, và mỗi khi bạn chép dữ liệu vào thư mục đại diện, đồng nghĩa với bạn truy xuất dữ liệu trên phân vùng.

Bây giờ mình sẽ tạo một thư mục với tên là /saoluu:

mkdir /saoluu

Và “mount” phân vùng mà nãy giờ chúng ta tạo vào thư mục /saoluu:

mount /dev/sdb1 /saoluu
Vậy là coi như là xong 90% rồi.

Bạn biết 10% còn lại là gì không? Đó là chúng ta cần thiết lập để mỗi khi khởi động lại hệ thống tự “mount” phân vùng /dev/sdb1 vào thư mục /saoluu luôn. Vì mỗi lần khởi động mà bạn đều phải gõ lại lệnh mount… cái gì gì đó thì thật là phiền toái. Cần phải sửa đổi một chút trong tập tin /etc/fstab:

nano /etc/fstab

Bên trong file /etc/fstab trông sẽ như thế này:

Bên trong tập tin /etc/fstab, tập tin quản lý và cấu hình mount trên hệ thống Linux.

Bây giờ chúng ta thêm dòng này:

/dev/sdb1 /saoluu ext4 defaults,nofail 0 0

Từ trái sang có nghĩa là: hệ thống tập tin –> thư mục được mount –> loại định dạng –> cấu hình tùy chọn –> tần suất filesystem được backup –> ưu tiên thời điểm cần được kiểm tra fsck trước khi được mount vào hệ thống.

Như vậy có thể hiểu dòng lệnh mà chúng ta thêm vào có nghĩa là:

Phân cùng /dev/sdb1 được mount vào thư mục /saoluu, với định dạng ext4, tùy chọn có cấu hình mặc định, nofail là gắn (mount) khi có nhưng bị bỏ qua nếu không có, bởi nếu bạn tháo ổ cứng này ra, hệ thống sẽ không báo lỗi –> 0 (dump) 0 (pass) – theo mặc định.

Cấu hình xong các bạn nhớ lưu lại tập tin /etc/fstab

Bây giờ bạn có thể khởi động lại máy và kiểm tra.

Chúng ta cần chú ý và ghi nhớ điều này:

  • Hệ thống và các tập tin cần lưu trữ: /var
  • Thư mục có vai trò lưu trữ (được lưu trên ổ cứng mới thêm vào): /saoluu

Bây giờ chúng ta truy cập vào Syncthing. Địa chỉ đó là http://IP_may-tinh-cai-dat-Syncthing:8384

Máy chủ được sao lưu.
Máy chủ sao lưu.

Mời các bạn xem video dưới đây để tiện theo dõi:

Chúc các bạn thành công, sắp tới mình sẽ có bài viết về đồng bộ dữ liệu, các tập tin và thư mục nội bộ với Unison. Các bạn đón xem nhé.

2 BÌNH LUẬN

Bình luận