У меня довольно специфический вопрос, и я некоторое время «хожу кругами» и не могу понять, в каком месте я ошибаюсь и делаю что то «не то».
В проекте, в котороем я работаю, принято использовать veeam backup (community edition). Это значит, что на сервера устанавливается veeam backup agent, иструкция по установке которого лежит тут.
Этот агент начинает общаться с сервером бэкапов, и «сливать» ему бэкап - образы - ну, в общем, бэкапить то, что я ему скажу.
При этом у агента есть возможности как бэкапить диск целиком, так и бэкапить что-то на уровне файловой системы.
Но вот беда. После того, как я устанавливаю backup agent, настраиваю его и заупскаю процесс бэкапа - бэкап не происходит. При этом сервер мне присылвает письмо, в котором содерждится ошибка
Failed to create volume snapshot
Failed to take volume snapshot
Failed to perform backup
Child execution has failed. Exit code: [1]
Failed to load module [veeamsnap] with parameters [zerosnapdata=1 debuglogging=0 snapstore_block_size_pow=14 change_tracking_block_size_pow=18 logdir=/var/log/veeam fixflags=0 logmaxsize=15728640]
Processing finished with errors at 2022-06-02 13:12:07 UTC
Ключевым здесь является, конечно же, «Failed to load module [veeamsnap]»
На машинке, на которой я пытаюсь делать бэкап, картина такая:
konst@pve:~$ sudo dkms status
veeamsnap, 5.0.2.4567: added
konst@pve:~$ sudo modprobe veeamsnap
modprobe: FATAL: Module veeamsnap not found in directory /lib/modules/5.15.30-2-pve
При этом на диске, как мне кажется, есть исходники этой штуки.
Потому что поиск veeamsnap
на диске даёт такой результат:
konst@pve:~$ sudo find / -name veeamsnap
/var/lib/dkms/veeamsnap
/usr/share/doc/veeamsnap
А при заходе в /usr/src/veeamsnap-5.0.2.4567
я вижу много .c и.h - файлов.
Есть статья, которая рассказывает, как скомпилировать соответствующий модуль ядра, при этом она начинается со слов о том, что «Please note that for Veeam Agent for Linux 2.0.0.400 packages with pre-compiled modules are available.».
То есть - «не беспокойтесь, Вам ничем таким заниматься не надо!»
Но в статье про инсталляцию - ни слова о том, что надо как тоотдельно этот модуль ядра устанавливать.
И теперь - вопрос: что же мне сделать, чтобы бэкап заработал?
Самое обидное - мне (с функциональной точки зрения) просто нафиг не нужен этот модуль. Все файлы на моент запуска процесса бэкапа будут закрыты, потму что docker-контейнеры - остановлены. Я бы обошелся простым zip-архивом, но нельзя - стандарт…
Небольшое дополнение
Еще одна вещь, которая буквально взрывает мне мозг. Берем статью по проблеме «Failed to load module [veeamsnap]»
Там английским по белому написано «Используйте команду»
dpkg-query -l | grep veeamsnap
«Если эта команда ничего не возвращает - значит, модуль у Вас не происнталлирован»
А у меня - возращает!!!
ii veeamsnap 5.0.2.4567 all Veeam Agent for Linux (kernel module)
Далее: команда
lsmod | grep veeamsnap
действительно не возвращет ничего, а вот команда, которую советуют использовать для выгрузки модуля из памяти
sudo modprobe -r veeamsnap
говорит, что
modprobe: FATAL: Module veeamsnap not found.
В общем, я явно запуталмся в том, откуда и как этот модуль берется и как проверить, есть он, или его нет.
А вот еще дополнительная информация, которая, к сожалению, не добавляет понятности:
konst@pve:~$ dpkg-query -l | grep veeam
ii veeam 5.0.2.4567 amd64 Veeam Agent for Linux
ii veeam-release-deb 1.0.8 amd64 Veeam Backup for GNU/Linux repository
ii veeamsnap 5.0.2.4567 all Veeam Agent for Linux (kernel module)
konst@pve:~$ dpkg-query -s veeam
Package: veeam
Status: install ok installed
Priority: standard
Section: admin
Installed-Size: 50000
Maintainer: Veeam Software Group GmbH <veeam_team@veeam.com>
Architecture: amd64
Version: 5.0.2.4567
Depends: libfuse2, libacl1, libattr1, libstdc++6, libgcc1, lvm2, libc6, libblkid1, libncursesw6 | libncursesw5, veeamsnap (= 5.0.2.4567), libmagic1
Conflicts: veeam-nosnap
Conffiles:
/etc/veeam/veeam.ini 77c0376a77ca22ac0782e309240d3e9d
Description: Veeam Agent for Linux
Veeam Agent for Linux a simple, FREE backup agent designed to ensure
the Availability of your Linux server instances, whether they reside in the
public cloud or on premises.
konst@pve:~$ dpkg-query -s veeamsnap
Package: veeamsnap
Status: install ok installed
Priority: standard
Section: admin
Installed-Size: 623
Maintainer: Veeam Software Group GmbH <veeam_team@veeam.com>
Architecture: all
Version: 5.0.2.4567
Depends: dkms (>= 2.1.0.0)
Description: Veeam Agent for Linux (kernel module)
This kernel module implements snapshot and changed block tracking
functionality used by Veeam Agent for Linux - simple and FREE backup agent
designed to ensure the Availability of your Linux server instances, whether
they reside in the public cloud or on premises.