R1Soft does not provide pre-built modules for the popular kernels, so you must compile the module from source. You must compile this module against kernel headers or a kernel source tree.
Server Backup Device Driver is a proprietary, loadable Linux kernel module distributed by R1Soft. It is loadable at run-time without restarting Linux, and you do *not* need to recompile your Linux kernel to use it.
{note:title=Notice}You need to have loadable modules enabled as a feature in your kernel, and this is standard on all popular Linux distributions.
{note}
If the kernel devel is too old and not found, see how to set up access to older {{yum}} packages in [Finding Old kernel-devel Packages For CentOS|kb3:Finding Old kernel-devel Packages For CentOS].
h2. 1. Compiling Server Backup kernel module against kernel headers or kernel source tree
Server Backup Manager is not always able to compile kernel modules from kernel-devel packages supplied by most major Linux distributions. In some cases, packages are missing header files (broken), or the packages are stripped of information that any device driver would need to compile a kernel module. In these cases, SBM can build using an installed {{kernel-devel}} package on your Linux server, as {{serverbackup-setup}} obtains the missing information it needs to compile a module from your running kernel.
In order for kernel module compilation, you must have Internet connectivity directly from the Linux server on which you are installing the Backup Manager, to TCP port HTTPS (443), and on the host {{krnlbld.r1soft.com}}.
You can test connectivity with the following command (this may take a minute):
{code}serverbackup-setup --test-connection{code}
!test-connection.png!
h2. 2. Installing kernel sources
If you are using an unmodified kernel provided by CentOS installer, install the {{kernel-devel}} package:
{code}yum install kernel-devel{code}
!yum-kernel.png!
h2. 3. Verifying that the source matches your running kernel
Sometimes, the kernel-devel package is newer than the installed and running kernel. If the kernel-devel is too old and not found, follow the instructions on how to set up access to older yum packages as documented in [Finding Old kernel-devel Packages For CentOS|kb3:Finding Old kernel-devel Packages For CentOS].
h2. 4. Building Server Backup kernel module
h3. Option 1: Building online
(Direct Internet connection to R1Soft build server).
To attempt to build the kernel module, run the following command (this may take several minutes):
{code}serverbackup-setup --get-module
{code}
If the module is compiled and installed successfully, the system provides output similar to the following:
{code}Saving kernel module to '/lib/modules/r1soft/hcpdriver-cki-2.6.32-279.11.1.el6.x86_64.ko'
Kernel module is now installed.
Use '/etc/init.d/cdp-agent restart' to load the new driver
{code}
!getmodule.png!
h3. Option 2: Building offline
(Without direct Internet connection to R1Soft build server).
If there is no direct Internet connection between your Server Backup and R1Soft build server, it is still possible to compile the kernel module. In this case, this will be tree-step process. First, you will have to create tarball file with the kernel headers. When you should copy this tarball file from the server to some other computer which has Internet connection to R1Soft build server. From this computer you should upload the tarball to the R1Soft build server and wait for the compilation to finish. When it is finished, you should download binary module and copy it back to Server Backup. Start with executing the following command:
{code}serverbackup-setup --no-binary --kernel-dir /usr/src/kernels/YOUR_KERNEL_TREE
--tarball-only /tmp/kernel-headers-for-r1soft.tar.gz{code}
After running this command, you will see:
{code}serverbackup-setup --no-binary --kernel-dir /usr/src/kernels/2.6.32-279.11.1.el6.x86_64 --tarball-only /tmp/kernel-headers-for-r1soft.tar.gz
Gathering kernel information
Gathering kernel information complete.
Creating kernel headers package
Checking '/usr/src/kernels/2.6.32-279.11.1.el6.x86_64' for kernel headers
Found headers in '/usr/src/kernels/2.6.32-279.11.1.el6.x86_64'
Compressing...
Header package created '/tmp/kernel-headers-for-r1soft.tar.gz'
visit https://krnlbld.r1soft.com/ to do an offline module build
After it is complete, you will need to copy the module to /lib/modules/r1soft{code}
!no-binary.png!
When the tarball ( {{.tar.gz}} ) file has been written to disk, perform the following steps:
* Copy the generated {{tar.gz}} file and paste it to a computer with Internet access.
* Go to [https://krnlbld.r1soft.com/] and upload the {{.tar.gz}} file to build a kernel module.
* After the build, you will download a kernel module.
* Copy this module and paste it to your Linux Server and the folder {{/lib/modules/r1soft.}}
* Restart the Backup Agent ({{/etc/init.d/cdp-agent restart}}).
{excerpt:hidden=true}Instructions on how to compile Server Backup Kernel module from source.{excerpt}
Server Backup Device Driver is a proprietary, loadable Linux kernel module distributed by R1Soft. It is loadable at run-time without restarting Linux, and you do *not* need to recompile your Linux kernel to use it.
{note:title=Notice}You need to have loadable modules enabled as a feature in your kernel, and this is standard on all popular Linux distributions.
{note}
If the kernel devel is too old and not found, see how to set up access to older {{yum}} packages in [Finding Old kernel-devel Packages For CentOS|kb3:Finding Old kernel-devel Packages For CentOS].
h2. 1. Compiling Server Backup kernel module against kernel headers or kernel source tree
Server Backup Manager is not always able to compile kernel modules from kernel-devel packages supplied by most major Linux distributions. In some cases, packages are missing header files (broken), or the packages are stripped of information that any device driver would need to compile a kernel module. In these cases, SBM can build using an installed {{kernel-devel}} package on your Linux server, as {{serverbackup-setup}} obtains the missing information it needs to compile a module from your running kernel.
In order for kernel module compilation, you must have Internet connectivity directly from the Linux server on which you are installing the Backup Manager, to TCP port HTTPS (443), and on the host {{krnlbld.r1soft.com}}.
You can test connectivity with the following command (this may take a minute):
{code}serverbackup-setup --test-connection{code}
!test-connection.png!
h2. 2. Installing kernel sources
If you are using an unmodified kernel provided by CentOS installer, install the {{kernel-devel}} package:
{code}yum install kernel-devel{code}
!yum-kernel.png!
h2. 3. Verifying that the source matches your running kernel
Sometimes, the kernel-devel package is newer than the installed and running kernel. If the kernel-devel is too old and not found, follow the instructions on how to set up access to older yum packages as documented in [Finding Old kernel-devel Packages For CentOS|kb3:Finding Old kernel-devel Packages For CentOS].
h2. 4. Building Server Backup kernel module
h3. Option 1: Building online
(Direct Internet connection to R1Soft build server).
To attempt to build the kernel module, run the following command (this may take several minutes):
{code}serverbackup-setup --get-module
{code}
If the module is compiled and installed successfully, the system provides output similar to the following:
{code}Saving kernel module to '/lib/modules/r1soft/hcpdriver-cki-2.6.32-279.11.1.el6.x86_64.ko'
Kernel module is now installed.
Use '/etc/init.d/cdp-agent restart' to load the new driver
{code}
!getmodule.png!
h3. Option 2: Building offline
(Without direct Internet connection to R1Soft build server).
If there is no direct Internet connection between your Server Backup and R1Soft build server, it is still possible to compile the kernel module. In this case, this will be tree-step process. First, you will have to create tarball file with the kernel headers. When you should copy this tarball file from the server to some other computer which has Internet connection to R1Soft build server. From this computer you should upload the tarball to the R1Soft build server and wait for the compilation to finish. When it is finished, you should download binary module and copy it back to Server Backup. Start with executing the following command:
{code}serverbackup-setup --no-binary --kernel-dir /usr/src/kernels/YOUR_KERNEL_TREE
--tarball-only /tmp/kernel-headers-for-r1soft.tar.gz{code}
After running this command, you will see:
{code}serverbackup-setup --no-binary --kernel-dir /usr/src/kernels/2.6.32-279.11.1.el6.x86_64 --tarball-only /tmp/kernel-headers-for-r1soft.tar.gz
Gathering kernel information
Gathering kernel information complete.
Creating kernel headers package
Checking '/usr/src/kernels/2.6.32-279.11.1.el6.x86_64' for kernel headers
Found headers in '/usr/src/kernels/2.6.32-279.11.1.el6.x86_64'
Compressing...
Header package created '/tmp/kernel-headers-for-r1soft.tar.gz'
visit https://krnlbld.r1soft.com/ to do an offline module build
After it is complete, you will need to copy the module to /lib/modules/r1soft{code}
!no-binary.png!
When the tarball ( {{.tar.gz}} ) file has been written to disk, perform the following steps:
* Copy the generated {{tar.gz}} file and paste it to a computer with Internet access.
* Go to [https://krnlbld.r1soft.com/] and upload the {{.tar.gz}} file to build a kernel module.
* After the build, you will download a kernel module.
* Copy this module and paste it to your Linux Server and the folder {{/lib/modules/r1soft.}}
* Restart the Backup Agent ({{/etc/init.d/cdp-agent restart}}).
{excerpt:hidden=true}Instructions on how to compile Server Backup Kernel module from source.{excerpt}