Veeam Agent Installation for RHEL 9.2
Overview
This document is for installing the Veeam Backup Agent Linux on RHEL 9.2
Procedure
OS: RHEL 9.2, running kernel 5.14.0-362.13.1.el9_3.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
Veeam blksnap module: blksnap-6.0.3.1221-1
Step 1: Download Veeam repository:
The Veeam repository for Linux can be found at Index of /backup/linux/agent/rpm/el/9/x86_64/ . On this page select "veeam-release-el9-1.0.8-1.x86_64.rpm", “blksnap-6.0.3.1221-1.noarch.rpm”, “veeam-6.0.3.1221-1.el9.x86_64.rpm“.

Step 2: Install Veeam and dependencies:
This will download an RPM file. You will likely be unable to download this directly from this page to your Linux machine, as your server will likely not have a GUI or web browser. To get around this, it is best to download the RPM to your workstation and then use WinSCP or MobaXterm to copy the RPM file to your server via SSH.
Once the RPM is on your server, install it and its dependencies:
# sudo rpm -ivh veeam-release-el9-1.0.8-1.x86_64.rpm
# sudo subscription-manager repos --enable codeready-builder-for-rhel-9-$(arch)-rpms
# sudo dnf install \
https://dl.fedoraproject.org/pub/epel/epel-release-latest-9.noarch.rpm
# sudo yum install dkms perl kernel-modules-extra -y
# sudo rpm -ivh blksnap-6.0.3.1221-1.noarch.rpm
# sudo rpm -ivh veeam-6.0.3.1221-1.el9.x86_64.rpm
The modules bdevfilter and blksnap will be created in /lib/modules/$(uname -r)/extra
[root@rhel9 ~# ls /lib/modules/$(uname -r)/extra
bdevfilter.ko.xz blksnap.ko.xz
We can confirm that this module has not loaded by running lsmod, and grepping for blksnap. We will see that grep returns no output.
[root@rhel9 ~]# lsmod | grep blksnap
Step 3: Insert modules bdevfilter and blksnap:
We need to load the module into the currently running kernel using insmod:
[root@rhel9 ~]# sudo insmod /lib/modules/$(uname -r)/extra/bdevfilter.ko.xz
[root@rhel9 ~]# sudo insmod /lib/modules/$(uname -r)/extra/blksnap.ko.xz
[root@rhel9 ~]# lsmod | grep blksnap
blksnap 217088 0
bdevfilter 20480 1 blksnap
At this point, our agent-based backups will run fine; however, the loaded module will not persist if we reboot. We must create a file called /etc/modules-load.d/bdevfilter.conf and/etc/modules-load.d/blksnap.conf , and make sure that it has the name of the kernel module. We will also need to run depmod to add the loaded kernel module to the kernel module dependencies list.
[root@rhel9 ~]# sudo depmod
[root@rhel9 ~]# sudo echo bdevfilter > /etc/modules-load.d/bdevfilter.conf
[root@rhel9 ~]# sudo echo blksnap > /etc/modules-load.d/blksnap.conf
[root@rhel9 ~]# cat /etc/modules-load.d/bdevfilter.conf
bdevfilter
[root@rhel9 ~]# cat /etc/modules-load.d/blksnap.conf
blksnap
Once we reboot the RHEL server, the bdevfilter and blksnap module will automatically be loaded as a kernel module.
[root@rhel9 ~]# uptime && lsmod | grep blksnap
17:43:06 up 18 min, 1 user, load average: 0.00, 0.00, 0.00
blksnap 217088 0
bdevfilter 20480 1 blksnap
And our agent-based backups will now work correctly.
Last updated