Cài đặt Bacula Backup Server trên Ubuntu 20.04

theanh

Administrator
Nhân viên
Bacula là một công cụ sao lưu mã nguồn mở có thể được sử dụng để sao lưu và khôi phục dữ liệu trên toàn mạng. Đây là công cụ đơn giản và dễ sử dụng, cung cấp nhiều tính năng quản lý lưu trữ nâng cao giúp bạn sao lưu và khôi phục các tệp đã mất một cách dễ dàng. Công cụ này hỗ trợ máy khách sao lưu Linux, Windows và macOS và cũng hỗ trợ nhiều thiết bị sao lưu khác nhau. Bacula được tạo thành từ một số thành phần bao gồm thư mục Bacula, Bacula, bảng điều khiển, bộ lưu trữ Bacula, tệp Bacula và danh mục Bacula. Mỗi thành phần chịu trách nhiệm quản lý các công việc cụ thể.

Trong hướng dẫn này, chúng tôi sẽ chỉ cho bạn cách cài đặt và cấu hình hệ thống sao lưu dự phòng trên Ubuntu 20.04.

Điều kiện tiên quyết​

  • Máy chủ chạy Ubuntu 20.04 với RAM tối thiểu 2 GB.
  • Máy chủ được cấu hình mật khẩu gốc.

Bắt đầu​

Đầu tiên, bạn sẽ cần cập nhật hệ thống của mình lên phiên bản ổn định mới nhất. Bạn có thể cập nhật bằng lệnh sau:
Mã:
apt-get update -y
Sau khi tất cả các gói được cập nhật, bạn có thể tiến hành bước tiếp theo.

Cài đặt Bacula​

Theo mặc định, gói Bacula có sẵn trong kho lưu trữ mặc định của Ubuntu 20.04. Bạn có thể cài đặt dễ dàng bằng lệnh sau:
Mã:
apt-get install bacula -y
Trong quá trình cài đặt, bạn sẽ được yêu cầu chọn máy chủ thư như hiển thị bên dưới:



Chọn máy chủ thư mong muốn và nhấp vào nút Ok. Bạn sẽ được yêu cầu cung cấp tên thư hệ thống của mình như hiển thị bên dưới:



Cung cấp tên thư hệ thống của bạn và nhấp vào nút Ok. Bạn sẽ được yêu cầu cấu hình cơ sở dữ liệu cho bacula như hiển thị bên dưới:



Nhấp vào nút Yes. Bạn sẽ được yêu cầu chọn máy chủ của máy chủ PostgreSQL như hiển thị bên dưới:



Chọn localhost và nhấp vào nút Ok. Bạn sẽ được yêu cầu cung cấp mật khẩu PostgreSQL như hiển thị bên dưới:



Cung cấp mật khẩu mong muốn và nhấp vào nút Ok để tiếp tục cài đặt.

Sau khi gói Bacula được cài đặt, bạn có thể tiến hành bước tiếp theo.

Cấu hình bộ lưu trữ Bacula​

Trước khi bắt đầu, hãy tạo một thư mục để lưu trữ các tệp sao lưu. Bạn có thể tạo nó bằng lệnh sau:
Mã:
mkdir /backup
Tiếp theo, thay đổi quyền sở hữu thư mục bacula thành người dùng và nhóm bacula bằng lệnh sau:
Mã:
chown -R bacula:bacula /backup
Tiếp theo, bạn sẽ cần chỉnh sửa tệp cấu hình mặc định của bộ lưu trữ bacula và xác định thiết bị và vị trí của bộ lưu trữ.
Mã:
nano /etc/bacula/bacula-sd.conf
Xóa hoặc chú thích phần "Device {" và "Autochanger {" khác và thêm các dòng sau:
Mã:
Device {Name = Local-deviceMedia Type = FileArchive Device = /backupLabelMedia = yes; # cho phép Bacula gắn nhãn phương tiện không có nhãnRandom Access = Yes;AutomaticMount = yes; # khi thiết bị được mở, hãy đọc nóRemovableMedia = no;AlwaysOpen = no;Số lượng công việc đồng thời tối đa = 5}
Lưu và đóng tệp khi bạn hoàn tất. Sau đó, khởi động lại dịch vụ lưu trữ Bacula bằng lệnh sau:
Mã:
systemctl restart bacula-sd.service
Bây giờ bạn có thể xác minh trạng thái của dịch vụ lưu trữ Bacula bằng lệnh sau:
Mã:
systemctl status bacula-sd
Bạn sẽ nhận được kết quả sau:
Mã:
? bacula-sd.service - Dịch vụ Bacula Storage Daemon Đã tải: đã tải (/lib/systemd/system/bacula-sd.service; enabled; vendor preset: enabled) Đang hoạt động: đang hoạt động (đang chạy) kể từ Tue 2020-10-06 09:32:43 UTC; 8 giây trước Tài liệu: man:bacula-sd(8) Tiến trình: 10687 ExecStartPre=/usr/sbin/bacula-sd -t -c $CONFIG (mã=thoát, trạng thái=0/THÀNH CÔNG) PID chính: 10688 (bacula-sd) Nhiệm vụ: 2 (giới hạn: 4691) Bộ nhớ: 1,0M CGroup: /system.slice/bacula-sd.service ??10688 /usr/sbin/bacula-sd -fP -c /etc/bacula/bacula-sd.conf06/10 09:32:43 ubuntu2004 systemd[1]: Đang khởi động dịch vụ Bacula Storage Daemon...06/10 09:32:43 ubuntu2004 systemd[1]: Đã khởi động dịch vụ Bacula Storage Daemon.

Cấu hình Bacula Director​

Tiếp theo, bạn sẽ cần chỉnh sửa tệp cấu hình Bacula director và cung cấp vị trí lưu trữ của mình. Bạn có thể chỉnh sửa tệp này bằng lệnh sau:
Mã:
nano /etc/bacula/bacula-dir.conf
Thêm các dòng sau, bao gồm: Tên thiết bị, Tên lưu trữ, mật khẩu, Công việc, v.v.
Mã:
Lưu trữ {Name = ubuntu2004-sd # Phải bằng tham số "Name" của phần "Storage" trong tệp /etc/bacula/bacula-sd.confAddress = 127.0.0.1Password = "aFEH-0a3QycsbYQVcoy_VoUMhAHJQ00CD" # Mật khẩu phải khớp với mật khẩu trong /etc/bacula/bacula-sd.confDevice = Local-deviceMedia Type = File}FileSet {Name = "Local-file"Include {Options {signature = MD5}File = /etc}}Schedule {Name = "LocalDaily"Run = Full daily at 06:00}Job {Name = "LocalBackup"JobDefs = "DefaultJob"Enabled = yesLevel = FullFileSet = "Local-file"Schedule = "LocalDaily"Storage = ubuntu2004-sdWrite Bootstrap = "/var/lib/bacula/LocalhostBackup.bsr"}
Lưu và đóng tệp khi bạn hoàn tất, sau đó khởi động lại dịch vụ Bacula director để áp dụng các thay đổi:
Mã:
systemctl restart bacula-dir
Bạn cũng có thể xác minh trạng thái của dịch vụ Bacula director bằng lệnh sau:
Mã:
systemctl status bacula-dir
Bạn sẽ nhận được kết quả sau:
Mã:
? bacula-director.service - Dịch vụ Bacula Director Daemon Đã tải: đã tải (/lib/systemd/system/bacula-director.service; enabled; vendor preset: enabled) Đang hoạt động: đang hoạt động (đang chạy) kể từ Tue 2020-10-06 09:32:43 UTC; 9 giây trước Tài liệu: man:bacula-dir(8) Tiến trình: 10667 ExecStartPre=/usr/sbin/bacula-dir -t -c $CONFIG (code=exited, status=0/SUCCESS) PID chính: 10683 (bacula-dir) Nhiệm vụ: 3 (giới hạn: 4691) Bộ nhớ: 2,1M CGroup: /system.slice/bacula-director.service ??10683 /usr/sbin/bacula-dir -fP -c /etc/bacula/bacula-dir.conf06/10 09:32:43 ubuntu2004 systemd[1]: Đang khởi động dịch vụ Bacula Director Daemon...06/10 09:32:43 ubuntu2004 systemd[1]: Đã khởi động dịch vụ Bacula Director Daemon.

Xác minh công việc sao lưu​

Lúc này, Bacula đã được cài đặt và cấu hình để chạy hàng ngày lúc 6:00. Bây giờ, hãy sử dụng Bacula Console để chạy công việc sao lưu đầu tiên của chúng ta.
Mã:
bconsole
Sau khi kết nối, bạn sẽ nhận được kết quả sau:
Mã:
Đang kết nối với Director localhost:91011000 OK: 103 ubuntu2004-dir Phiên bản: 9.4.2 (04 tháng 02 năm 2019)Nhập dấu chấm để hủy lệnh.
Tiếp theo, hãy chạy lệnh sau để bắt đầu công việc sao lưu:
Mã:
*run
Bạn sẽ được yêu cầu chọn công việc sao lưu như hiển thị bên dưới:
Mã:
Tự động chọn Catalog: MyCatalogSử dụng Catalog "MyCatalog"Cần phải chỉ định tên công việc.Các tài nguyên Job được xác định là: 1: BackupClient1 2: LocalBackup 3: BackupCatalog 4: RestoreFilesChọn tài nguyên Job (1-4): 2
Nhập 2 để chọn LocalBackup mà bạn đã xác định trong tệp cấu hình và nhấn Enter. Bạn sẽ thấy đầu ra sau:
Mã:
Chạy tác vụ BackupJobName: LocalBackupLevel: FullClient: ubuntu2004-fdFileSet: Local-filePool: File (From Job resource)Storage: ubuntu2004-sd (From Job resource)When: 2020-10-06 09:50:47Priority: 10OK để chạy? (có/sửa/không): cóJob queued. JobId=3Bạn có tin nhắn.
Lúc này, tác vụ Backup đã bắt đầu. Bạn có thể kiểm tra trạng thái của tác vụ sao lưu bằng lệnh sau:
Mã:
*status
Bạn sẽ được yêu cầu chọn trạng thái của các thành phần sau:
Mã:
Trạng thái khả dụng cho: 1: Director 2: Storage 3: Client 4: Scheduled 5: Network 6: AllChọn loại daemon cho trạng thái (1-6): 1
Nhập 1 và nhấn Enter để kiểm tra trạng thái của Director. Bạn sẽ thấy đầu ra sau:
Mã:
ubuntu2004-dir Phiên bản: 9.4.2 (04 tháng 02 năm 2019) x86_64-pc-linux-gnu ubuntu 20.04Daemon bắt đầu 06-Oct-20 09:50, conf tải lại 06-Oct-2020 09:50:27 Công việc: run=1, running=0 mode=0,0 Heap: heap=274.432 smbyte=106.782 max_byte=135.168 bufs=343 max_bufs=377 Res: njobs=4 nclients=1 nstores=3 npools=3 ncats=1 nfsets=3 nscheds=3Công việc theo lịch trình:Loại cấp Pri Tên công việc theo lịch trình Volume======================================================================================Full Backup 10 07-10-20 06:00 LocalBackup Vol-0001====Đang chạy tác vụ:Console được kết nối lúc 06-10-20 09:50Không có tác vụ nào đang chạy.====Công việc đã kết thúc: JobId Cấp độ Tệp Byte Trạng thái Đã hoàn thành Tên= ...
Trạng thái khả dụng cho: 1: Director 2: Storage 3: Client 4: Scheduled 5: Network 6: AllChọn loại daemon cho trạng thái (1-6): 2Các tài nguyên Storage được xác định là: 1: File1 2: ubuntu2004-sdChọn tài nguyên Storage (1-2): 1Đang kết nối với daemon Storage File1 tại localhost:9103ubuntu2004-sd Phiên bản: 9.4.2 (04 tháng 02 năm 2019) x86_64-pc-linux-gnu ubuntu 20.04Daemon bắt đầu 06-Oct-20 09:50. Công việc: run=1, running=0. Heap: heap=106.496 smbytes=369.301 max_bytes=567.404 bufs=90 max_bufs=110 Kích thước: boffset_t=8 size_t=8 int32_t=4 int64_t=8 mode=0,0 newbsr=0 Res: ndevices=1 nautochgr=0Các công việc đang chạy:Không có công việc nào đang chạy.====Các công việc đang chờ để đặt trước ổ đĩa:====Các công việc đã kết thúc: JobId Cấp độ Tệp Byte Trạng thái Đã hoàn thành Tên= ... ====
Tiếp theo, thoát khỏi bảng điều khiển Bacula bằng lệnh sau:
Mã:
*exit
Tiếp theo, xác minh thư mục sao lưu bằng lệnh sau:
Mã:
ls /backup/
Bạn sẽ thấy bản sao lưu Vol-0001 đã được tạo:
Mã:
Vol-0001

Kết luận​

Xin chúc mừng! Bạn đã cài đặt và cấu hình thành công bản sao lưu Bacula trên máy chủ Ubuntu 20.04. Bây giờ bạn có thể cài đặt máy khách Bacula trên máy từ xa và sao lưu hệ thống máy khách của mình một cách dễ dàng. Hãy thoải mái hỏi tôi nếu bạn có bất kỳ câu hỏi nào.
 
Back
Bên trên