Tài liệu này hướng dẫn cài đặt Veeam Backup Agent Linux trên CentOS 9 Stream.
OS: CentOS 9 Stream, đang chạy kernel 5.14.0-344.el9.x86_64
Veeam repository: veeam-release-el9-1.0.8-1.x86_64.rpm
Veeam Agent: veeam-6.0.3.1221-1.el9.x86_64
Bước 1: Tải Veeam repository:
epository Veeam cho Linux có thể được tìm thấy tại Index of /backup/linux/agent/rpm/el/9/x86_64/ . Trên trang này, chọn "veeam-release-el9-1.0.8-1.x86_64.rpm".
Bước 2: Cài đặt Veeam và các phụ thuộc:
Điều này sẽ tải về một tệp RPM. Bạn có thể không tải trực tiếp tệp này từ trang này xuống máy Linux của mình vì server của bạn có thể không có GUI hoặc trình duyệt web. Để khắc phục, tốt nhất bạn nên tải tệp RPM về máy tính của mình và sau đó sử dụng WinSCP hoặc MobaXterm để sao chép tệp RPM vào server qua SSH.
Sau khi tệp RPM đã có trên server, cài đặt nó và các phụ thuộc của nó:
Các module bdevfilter và blksnap sẽ được tạo trong /lib/modules/$(uname -r)/extra
Chúng ta có thể xác nhận rằng module này chưa được tải bằng cách chạy lsmod và grep với từ khóa blksnap. Chúng ta sẽ thấy grep trả về 0 dòng kết quả.
Bước 3: Insert module bdevfilter và blksnap:
Quan trọng: Nếu server khởi động với Secure Boot, chúng ta không thể chèn module → Cần thực hiện bước 3 dưới đây trước khi sử dụng Secure Boot
Chúng ta cần tải module vào kernel hiện tại đang chạy bằng cách sử dụng insmod:
Lúc này, backup agent của chúng ta sẽ chạy tốt; tuy nhiên, module đã tải sẽ không tồn tại nếu chúng ta khởi động lại. Chúng ta cần tạo một tệp có tên /etc/modules-load.d/bdevfilter.conf và /etc/modules-load.d/blksnap.conf, và đảm bảo rằng tệp đó có tên của module kernel. Chúng ta cũng phải chạy depmod để thêm module kernel đã tải vào danh sách các module phụ thuộc của kernel.
Khi chúng ta khởi động lại server CentOS, module veeamsnap sẽ tự động được tải như một kernel module.
Và backup agent của chúng ta sẽ hoạt động đúng.
Bước 1: Tải kho lưu trữ Veeam:
Bước 2: Cài đặt Veeam và các phụ thuộc:
Điều này sẽ tải xuống một tệp RPM. Bạn có thể không thể tải tệp này trực tiếp từ trang này về máy Linux của mình, vì máy chủ của bạn có thể không có GUI hoặc trình duyệt web. Để khắc phục điều này, tốt nhất là tải tệp RPM về máy tính của bạn và sau đó sử dụng WinSCP hoặc MobaXterm để sao chép tệp RPM vào máy chủ qua SSH
Khi tệp RPM đã có trên máy chủ, hãy cài đặt nó và các phụ thuộc của nó:
Các module bdevfilter
và blksnap
sẽ được tạo ra trong thư mục /lib/modules/$(uname -r)/extra
Chúng ta có thể xác nhận rằng module này chưa được tải bằng cách chạy lsmod
và tìm kiếm blksnap
. Bạn sẽ thấy rằng lệnh grep
trả về 0 dòng đầu ra.
Bước 3: Đăng ký Veeam Kernel Module Key:
Tạo thư mục /root/module-signing:
Cấp quyền cho 3 script:
# chmod u+x one-time-setup sign-modules dkms-sign-module
Tạo 2 tệp để ký các module vào cơ sở dữ liệu UEFI.
Chạy tệp one-time-setup
trước, sau đó khởi động lại:
Trong quá trình khởi động lại, khi được nhắc, nhấn bất kỳ phím nào để thực hiện quản lý MOK.
Tại bước đầu tiên của wizard, chọn "Enroll MOK" và nhấn [Enter].
Tại bước "Enroll the key(s)", chọn "Yes" và nhấn [Enter].
Cung cấp mật khẩu của tài khoản root và nhấn [Enter].
Tại bước cuối cùng, chọn "Reboot" và nhấn [Enter].
Sau đó, ký 2 module bằng cách chạy tệp sign-modules
:
Bước 4: Chèn các module bdevfilter và blksnap:
Chúng ta cần tải module vào kernel đang chạy hiện tại bằng cách sử dụng insmod
:
Vào thời điểm này, các sao lưu dựa trên agent của chúng ta sẽ chạy bình thường; tuy nhiên, module đã tải sẽ không tồn tại nếu chúng ta khởi động lại. Chúng ta phải tạo một tệp có tên /etc/modules-load.d/bdevfilter.conf
và /etc/modules-load.d/blksnap.conf
, và đảm bảo rằng nó có tên của module kernel. Chúng ta cũng phải chạy depmod
để thêm module kernel đã tải vào danh sách phụ thuộc module kernel.
Khi chúng ta khởi động lại máy chủ CentOS, module veeamsnap sẽ tự động được tải dưới dạng một kernel module.
Sau đó agent-based backups của chúng ta sẽ hoạt động chính xác.
Kho lưu trữ Veeam repository cho Linux có thể được tìm thấy tại Index of /backup/linux/agent/rpm/el/9/x86_64/ . Trên trang này, chọn "veeam-release-el9-1.0.8-1.x86_64.rpm".
Tải 3 script từ liên kết: Make DKMS sign kernel modules on installation, with full script support and somewhat distro independent và đặt chúng vào thư mục vừa tạo: