Home » Linux » CentOS » Бэкап и перенос linux (centos, debian, ubuntu) сервера с помощью Veeam Agent for Linux

Бэкап и перенос linux (centos, debian, ubuntu) сервера с помощью Veeam Agent for Linux

Есть множество способов выполнить резервное копирование отдельной информации или целых серверов. Я хочу рассказать о самом простом способе полного бэкапа сервера и переноса его на другое железо, если будет такая необходимость. Делается все это очень просто, без лишних телодвижений с помощью бесплатного Veeam Agent for Linux FREE.

Если у вас есть желание научиться строить и поддерживать высокодоступные и надежные системы, рекомендую познакомиться с онлайн-курсом «Администратор Linux» в OTUS. Курс не для новичков, для поступления нужно пройти .

Введение

Ранее я уже неоднократно рассматривал вопрос резервного копирования данных или целых серверов linux. Конкретно в этих статьях:

Забэкапить сразу весь сервер можно, например, с помощью Duplicity. Но вот восстановить его на другом железе будет не так просто. Помимо данных нужно будет, как минимум, позаботиться о разметке диска, установке загрузчика. На это необходимо затратить некоторые усилия и немного разбираться в теме initramfs и grub. Сам я не очень разбираюсь в нюансах работы этих инструментов и очень не люблю с ними возиться.

Некоторое время назад появился отличный бесплатный продукт для бэкапа всего сервера целиком. Речь идет о Veeam Agent for Linux FREE. С его помощью можно сделать полный backup сервера, положить его куда-нибудь по smb или nfs, потом загрузиться с live cd и восстановить из бэкапа на другом железе.

Сразу расскажу о некоторых нюансах работы бесплатной версии, с которыми столкнулся в процессе эксплуатации замечательного продукта от veeam.

  1. Бэкап можно сделать либо всего сервера сразу, либо отдельного диска, либо отдельных папок и файлов. При выборе бэкапа всего диска или сервера, нельзя задать исключения для отдельных папок или файлов. Это очень неудобно, но увы и ах, таков функционал. Исключения можно сделать только если вы делаете бэкап на уровне папок.
  2. Бэкап можно положить локально на соседний раздел, если делаете резервную копию раздела, локально в папку — если делаете бэкап файлов и папок. Если бэкапите всю систему целиком, то удаленно по smb и nfs. К сожалению, по ftp или sftp программа не работает.

В качестве хранилища для архивов может выступать репозиторий Veeam Backup & Replication. Но я не рассматриваю этот вариант, так как в данном случае использую только бесплатное решение.

Мне очень хотелось настроить резервную копию всего сервера на Яндекс.Диск, но, к сожалению, у меня это не получилось из-за технических ограничений. Яндекс.Диск подключается к системе через webdav. Для того, чтобы сделать резервную копию всей системы, нужно бэкапить либо всю систему сразу, либо образ диска. Если у вас небольшой веб сервер, то скорее всего на нем только один раздел. На этом же разделе хранится кэш, который использует webdav для передачи файлов. Без кэша он работать не умеет.

Думаю вы уже поняли, в чем проблема сделать полный backup сервера с помощью Veeam Agent for Linux на Яндекс.Диск по webdav. Вы не сможете добавить в исключения папку с кэшом от webdav. В итоге, во время бэкапа с помощью veeam будет расти папка с кэшом webdav, которая, в свою очередь, будет бэкапиться. В итоге, свободное место на диске закончится, бэкап прервется.

Я подробно описал ситуацию с Яндекс.Диском, потому что пространство на нем не дорого стоит. Я часто его использую в повседневной жизни, настраиваю бэкапы, храню данные и т.д. В общем, мне он нравится по ряду причин. Для того, чтобы бэкапить весь сервер целиком, вам придется найти место для архивных копий с доступом по smb или nfs. Таких предложений не очень много на рынке. Практически не из чего выбирать, я специально искал.

Остановился вот на этом варианте — KeyDisk. После оплаты, вам дают адрес сервера, логин и пароль. Вы можете сразу же подключаться по smb к хранилищу. Можно прям в windows через два обратных слеша зайти или подмонтировать хранилище к linux серверу.

Подключение сетевого диска keyweb в windows

Подключение сетевого диска keyweb в linux

KeyDisk стоит примерно 350р. в месяц за 100 гигов. Не очень дешево, конечно, в сравнении с облачными сервисами, но все равно не дорого. Похожих предложений с доступом по smb я лично вообще не нашел в принципе. Этот объем позволит вам забэкапить небольшой веб сервер с глубиной архива в несколько недель или месяцев, в зависимости от того, сколько данных у вас на нем хранится.

Дальше я подробно на конкретном примере расскажу как все настроить и восстановить или перенести сервер целиком, если понадобится. Причем переносить буду вообще на другое железо. Но обо всем по порядку.

Установка Veeam Agent for Linux

Для установки Veeam Agent for Linux необходимо подключить репозиторий veeam под нужную вам систему. Это можно сделать либо руками, либо скачать файл с репозиторием в виде rpm или deb пакета. Сделать это можно на странице с описанием продукта.

Загрузка Veeam agent для linux

Для того, чтобы получить доступ к разделу с загрузками, придется зарегистрироваться. Выбираете тип системы и скачиваете репу.

Выбор типа системы

Чуть ниже рекомендую сразу же скачать Veeam Linux Recovery Media. Он нам понадобится, когда мы будем переносить сервер на другое железо или восстанавливать из бэкапа.

Копируем файл с репозиторием на сервер и устанавливаем его. На момент написания статьи, файл можно было скачать по прямой ссылке.

# cd /root
# wget https://download2.veeam.com/veeam-release-el7-1.0-1.x86_64.rpm
# rpm -Uhv veeam-release-el7-1.0-1.x86_64.rpm

Обновляем репозитории и устанавливаем veeam.

# yum update
# yum install veeam

Все, Veeam Agent for Linux установлен и готов к работе.

Настройка полного бэкапа сервера

Сделать бэкап с помощью Veeam Agent for Linux очень просто. Вариантов настроек не так много, можете сами все проверить и посмотреть. Я для примера рассмотрю вариант с созданием полного бэкапа всей системы и перенос ее на другое железо. Создаем задачу для резервного копирования сервера на наше хранилище по smb.

# veeam

Нам сразу же предлагают указать файл с лицензией. Так как у нас лицензии нет, то отказываемся. Нас встречает главное окно программы.

Главный экран программы для бэкапа линукса

Нажимаем C (configure) для настройки задания на backup. Задаем любое имя задания, затем указываем, что будем делать полный бэкап сервера.

Выбор режима резервных копий

В качестве приемника для архива системы, указываем Shared Folder.

Место хранения бэкапа сервера

Далее нужно ввести параметры доступа к хранилищу бэкапов. Я использую свои от системы KeyDisk.

Параметры подключения диска для архивных копий по smb

В пункте Restore Points указывается глубина архива. Это число копий, которые будут храниться на сервере. Если делать бэкап каждый день и указать число 14, то будут храниться резервные копии системы за последние 14 дней. Если делать будете через день, то за 28 дней и т.д.

Можно создавать несколько заданий с различной глубиной архива. Например, каждый день с глубиной 7 копий, раз в неделю с глубиной 4, и раз в месяц с глубиной в 12. Таким образом у вас всегда будут последние 7 бэкапов системы на этой неделе. Потом по одному бэкапу в неделю за последний месяц и 12 бэкапов по месяцам в течении последнего года.

Если получите ошибку:

Current system does not support cifs. Please install cifs client package.

Установите пакет cifs. В CentOS вот так:

# yum install cifs-utils

И так в Debian/Ubuntu:

# apt install cifs-utils

Запускайте заново veeam и продолжайте. После настройки Destination, предлагается указать скрипты для выполнения перед и после бэкапа. Нам сейчас это не надо. Далее настраиваем расписание и запускаем задание на архивацию в конце настройки.

Расписание резервных копий

Запустилась архивация. Можно следить за ее прогрессом.

Процесс резервного копирования сервера

После завершения архивации системы, можно проверить содержимое сетевого хранилища, зайдя на него прямо из винды.

Проверка архива с бэкапами

На этом настройку полного бэкапа сервера мы завершили. Резервная копия системы лежит в надежном месте. Попробуем теперь с нее восстановиться.

Перенос или восстановление linux сервера

Представим теперь ситуацию, что наш веб, или какой-нибудь другой сервер умер, и нам надо восстановить систему в другом месте. Выполним полное восстановление всего сервера с помощью созданной ранее резервной копии. Для этого нам понадобится Veeam Linux Recovery Media, который мы скачали ранее.

Для восстановления системы нужно соблюсти два обязательных условия:

  1. Готовим новый сервер с диском, который должен быть не меньше диска исходного сервера. Это обязательное условие, иначе восстановление системы даже не начнется. Veeam скажет, что размер диска недостаточный и не предложит больше никаких вариантов восстановления.
  2. Оперативной памяти для системы должно быть не меньше 1024 Мб. Если меньше, то загрузка с диска не будет выполнена. Система скажет, что она не может развернуть корневой раздел.

Загружаемся с диска. В разделе Configure network убеждаемся, что сеть настроена, получен ip адрес, который имеет доступ к интернету. Далее выбираем Restore volumes -> Add shared folder. Заполняем параметры доступа к хранилищу архивов.

Подключение диска с бэкапом сервера

Выбираем там директорию с нашим архивом системы, которую будем восстанавливать. Далее будет показан список задач в левом столбце и список резервных копий в правом.

Список заданий резервного копирования

В моем случае там только одна копия. Выбираю ее. Дальше мы видим слева список дисков нашего сервера, справа диски резервной копии.

Список разделов для восстановления

У меня слева чистый диск, справа тоже один диск, на который установлен загрузчик и есть один раздел с корнем системы. Выбираем справа наш диск (не раздел с корнем!!!) и жмем Restore whole disk to.

Меню восстановления образа диска

В качестве приемника выбираем пустой диск на новом сервере.

Выбор диска для восстановления системы

Нажимаем S ( Start restore ). Визард покажет список действий, которые будут выполнены и попросит их подтвердить, нажатием на Enter.

Подтверждение шагов восстановления

Делаем это и наблюдаем за процессом восстановления сервера centos из бэкапа.

Восстановление системы centos из бэкапа

Дожидаемся окончания переноса сервера, выбираем перезагрузку и извлекаем загрузочный CD. Грузимся с жесткого диска.

Дальше может быть много различных вариантов. Если вы переносите сервер на тот же гипервизор, то проблем скорее всего не будет, и все заведется сразу. Если же гипервизор другой, то могут быть варианты, в зависимости от ситуации.

Перенос виртуальной машины с KVM на Hyper-V

В моем случае я переношу сервер с KVM на Hyper-V. После загрузки системы я получаю такую картину.

Ошибка после переноса с kvm на hyper-v

Сервер начинает бесконечно висеть в подобном состоянии с такими характерными ошибками:

Warning: dracut-initqueue timeout starting timeout scripts
a start job is running for dev-disk-by ......

Начинаю разбираться в чем может быть дело. Конечно, тут решение проблемы будет зависеть от конкретной ситуации. А успешность решения от квалификации сисадмина. Я уже немного повозился с подобными переносами и примерно представляю, в чем тут может быть проблема. Частично я эту тему затрагивал, когда делал перенос виртуальных машин с XenServer на Hyper-V. Но там была другая проблема, связанная с кастомным ядром от Xen.

В нашей ситуации с переносом виртуальной машины с KVM на Hyper-V проблема в другом. У нас поменялось имя диска. Нам нужно изменить это имя в fstab и в конфиге grub. До кучи я еще собрал заново initramfs, но не уверен на 100%, что в данном случае это нужно было делать. Я сделал на всякий случай сразу все за один заход.

Итак, загружаемся с установочного диска CentOS 7 и выбираем режим Rescue a CentOS system. Подробно об этом рассказывал в упомянутой ранее статье с переносом от xen. Выбираем первый режим запуска.

Восстановление системы centos после переноса c kvm на hyper-v

Дальше работаем в консоли. Смотрим, как называется наш диск.

# fdisk -l

Список дисков

У меня это sda, а на прошлом сервере он назывался vda. Нам нужно внести эти изменения в 2 файла:

  1. /etc/fstab
  2. /boot/grub2/grub.cfg

Диск восстановления в самом начале мог сам смонтировать системный раздел в директорию/mnt/sysimage. Если он этого не сделает по какой-то причине, то сделайте это сами:

# mount /dev/sda1 /mnt/sysimage

Теперь нам надо сделать chroot в систему, предварительно смонтировав туда информацию о текущей системе. Выполняем команды:

# mount --bind /proc /mnt/sysimage/proc
# mount --bind /dev /mnt/sysimage/dev 
# mount --bind /sys /mnt/sysimage/sys 
# mount --bind /run /mnt/sysimage/run 
# chroot /mnt/sysimage

Мы загрузились в окружение нашего сервера. Тут можете использовать установленный у вас на сервере текстовый редактор. С его помощью изменяете имена дисков в файлах /etc/fstab и /boot/grub2/grub.cfg. Можете просто автозаменой поменять имена.

Теперь соберем новый initramfs. Идем в директорию /boot и смотрим там последнюю версию ядра.

# cd /boot
# ls -l | grep initramfs

Генерируем новый initramfs

В данном случае просто смотрим самые высокие цифры. Соберем новый initramfs в соответствии с версией ядра.

# dracut initramfs-3.10.0-514.26.2.el7.x86_64.img 3.10.0-514.26.2.el7.x86_64

В завершении установим измененный загрузчик на наш диск:

# grub2-install /dev/sda

Перезагружаем сервер. После этих изменений, у меня благополучно все загрузилось. Перенос виртуальной машины с KVM на Hyper-V выполнен полностью. Причем, у нас не было доступа к образу системы. Хотя подобная ошибка скорее всего все равно возникла бы, даже если бы мы конвертировали и переносили готовый образ.

Заключение

Изначально планировал написать небольшую заметку на тему использования Veeam для бэкапа сервера. Но в процессе получилось разобрать еще и перенос сервера с одного гипервизора на другой. Еще раз повторюсь, кому показалось это слишком сложным. Если вы будете бэкапить и восстанавливать сервер в рамках одного и того же гипервизора, то описанных выше проблем у вас не будет. Все пройдет гладко.

При переносе с железа на виртуальную машину или наоборот, тоже скорее всего возникнут какие-нибудь проблемы. Не существует софта или готового решения, которое бы позволило все это выполнить в автоматическом режиме.  С проблемами загрузки придется разбираться по ходу дела. Но две основные проблемы я разобрал:

  1. Неподходящие версии ядер. После переноса нужно будет переустановить или обновить ядро.
  2. Разные имена дисков или меток разделов. Нужно будет их привести в соответствие с новым железом.

Это наиболее популярные проблемы. С другими мне не приходилось сталкиваться. Хотя не сказать, что мне часто приходилось переносить сервера, но некоторый опыт есть. Думаю, эта статья будем многим полезна, так как подобный перенос не очень раскрыт в статьях в интернете. По крайней мере мне не попадались хорошие гайды на эту тему. Разбираюсь обычно сам с помощью гугления по англоязычному сегменту.

Делитесь своим опытом и оставляйте замечания к статье или указывайте на ошибке в комментариях.

Онлайн курс Основы сетевых технологий

Теоретический курс с самыми базовыми знаниями по сетям. Курс подходит и начинающим, и людям с опытом. Практикующим системным администраторам курс поможет упорядочить знания и восполнить пробелы. А те, кто только входит в профессию, получат на курсе базовые знания и навыки, без воды и избыточной теории. После обучения вы сможете ответить на вопросы:
  • На каком уровне модели OSI могут работать коммутаторы;
  • Как лучше организовать работу сети организации с множеством отделов;
  • Для чего и как использовать технологию VLAN;
  • Для чего сервера стоит выносить в DMZ;
  • Как организовать объединение филиалов и удаленный доступ сотрудников по vpn;
  • и многое другое.
Уже знаете ответы на вопросы выше? Или сомневаетесь? Попробуйте пройти тест по основам сетевых технологий. Всего 53 вопроса, в один цикл теста входит 10 вопросов в случайном порядке. Поэтому тест можно проходить несколько раз без потери интереса. Бесплатно и без регистрации. Все подробности на странице .

Помогла статья? Есть возможность отблагодарить автора

Автор Zerox

Zerox
Владимир, системный администратор, автор сайта. Люблю настраивать сервера, изучать что-то новое, делиться знаниями, писать интересные и полезные статьи. Открыт к диалогу и сотрудничеству.

112 комментариев

  1. Аватар

    Здравствуйте, Zerox!

    В первую очередь, хотел бы вас поблагодарить за статью. У меня есть вопрос, Veeam предназначен только для резервного копирования виртуальных машин?

    Не получится его средствами забекапить реальную систему (почтовый сервер) развернутую на десктопе или физ. сервере.

    • Zerox

      Получится забэкапить физический сервер. Принципиальных отличий с виртуальной машиной нет. Нюансы могут возникнуть при восстановлении, но все это решаемо. На будущее, рекомендую все настраивать в виртуальных машинах, а на железо ставить только гипервизоры. Это в разы облегчает обслуживание и сопровождение.

      • Аватар

        При бэкапе сервера столкнулся в проблемой, почтовик (iredmail сборка) прислал алерт мне в ящик:

        mail is critical — disk space usage — disk_space._tmp__fbab37c9-0868-4615-92fe-b599d98f94da_

        disk_space._tmp__fbab37c9-0868-4615-92fe-b599d98f94da_
        CHART
        disk space usage = 100%
        current disk space usage
        ALARM

        Как следствие, veeam на 8% завершает работу с ошибками.

        09:47:14 Starting full backup to Repository_1
        09:47:54 [error] Backing up sdb 1.3 GB at 55.7 MB/s (8%)
        09:49:33 [error] Failed to perform backup 09:49:33 [error] Input/output error
        09:49:33 [error] POSIX: Failed to read data from the file [/dev/veeamimage0]
        09:49:33 [error] Failed to upload disk
        09:49:33 [error] Agent failed to process method {DataTransfer.SyncDisk}
        09:49:33 [error] Exception from server: Input/output error
        09:49:33 [error] POSIX: Failed to read data from the file [/dev/veeamimage0]
        09:49:33 [error] Unable to retrieve next block transmission command. Number of already processed blocks: [1583] 09:49:33 [error] Failed to download disk
        09:49:33 [error] Processing finished with errors at 2019-10-15 09:49:33

        Перенос осуществлялся на такой же физический сервер по NFS. Какая-то часть записалась, на эти 8% ну и далее собственно всё.
        Вы не сталкивались с подобной проблемой?

        • Zerox

          Тут четко написано, в чем проблема:

          disk_space._tmp__fbab37c9-0868-4615-92fe-b599d98f94da_
          CHART
          disk space usage = 100%
          current disk space usage

          Veeam во время бэкапа использует раздел tmp для формирования образа. На этом разделе мало места. Решите как-то этот вопрос. Либо перенесите tmp, либо как-то нарастите место. Все зависит от разбивки дисков. Если на других разделах есть место, то просто перенесите туда /tmp и сделайте символьную ссылку.

  2. Аватар
    Евгений

    Давно с никсами не пересекался, но тем не менее..
    А что мешает использовать обычные инструменты типа cp bzip и т.п.? Так или иначе все дисковые устройства представлены в виде файлов, все папки и файлы подлежат копированию хоть посредством cp, хоть через тот же cat через pipe (|) в тот же bzip.

    Иными словами делаем скрипт, в котором делаем копию нужного в архив, а после архив доступными средствами сливаем хоть по ftp, хоть по smb, хоть по nfs, хоть по почте отправляем.

    • Zerox

      Странный вопрос, зачем нужна готовая программа, если можно все самому наколхозить скриптами. Удобно как минимум тем, что тут не надо делать лишних движений, копируется сразу все — файлы, разметка диска, загрузчик и т.д. в удобном и понятном интерфейсе, с отчетами, статистикой, планировщиком. Потом загружаешься с boot cd и быстро восстанавливаешь сразу все. А так, в принципе, можно и программы самому писать, компилировать, а не брать готовые.

      • Аватар
        Евгений

        Ну просто в описанном вами варианте тоже хватает «плясок с бубном». При этом, на мой взгляд, любой админ, который так или иначе админит никсовые сервера, просто обязан понимать как и для чего делаются скрипты и быть в состоянии их наваять. Скрипт бэкапа, описанный мной, при написании занимает ну от силы минут 5 времени (с чтением манов).
        восстановление из такого архива — процесс настолько «сложный», что современные пользователи регулярно его используют на своих рабочих станциях.
        ну а загрузчик не всегда требуется восстанавливать, если только вы бэкапите вообще весь сервер. Но как по-мне проще сделать описанную у вас же быструю установку, а потом на неё раскатать архив. Ну или опять же полистать маны того же груба, грузиться с лайва и к команде на распаковку добавить команду установки загрузчика… ну может две-три команды (монтирование, смена рута, установка груба).

        Это особенность никсов, тут для многих «непростых» для венды вещей есть вполне базовый набор команд, который не требует глубоких познаний в никсах.

        С другой стороны если вы всего-лишь пользуетесь операционкой, а не админите её — тогда да, такого рода программы на вес золота ))

        Исходя из того, сколько статей у вас тут посвящено администрированию — мне как-то странно видеть подобного рода утилку. А учитывая описанные в комментах проблемы с ней — странно вдвойне.

        • Zerox

          Если самому настраивать подобные бэкапы не трудно, то вот вам вопрос сходу. Как организовать хранение только последних 30 резервных копий файлов? Есть директория, куда складываются архивы. Ваша задача сделать так, чтобы там лежали только последние 30 версий, а более старые удалялись. В один день может быть создано более одного архива, так что простой поиск по дате и удаление версий старше 30-ти дней не подходит.

  3. Аватар

    При запуске dracut initramfs он напишет что не может перезаписать текущий initram, поэтому команду надо запускать с ключом —force.

  4. Аватар

    Почему может выдаваться ошибка о разницах ключей при установке?
    https://cdn1.savepice.ru/uploads/2018/10/24/61b82c144465314641724c6a8bbef5e6-full.png

    Дальше Update не идет.

    • Zerox

      Это уже вопрос к репозиториям и ключам в них. Надо разбираться. Я сейчас не использую нигде veeam. Словил несколько раз зависание сервера во время бэкапа. Решил, что мне такой инструмент не подходит.

      • Аватар

        Понятно, спасибо! Ну у себя вроде пока зависаний не ловил. А чем бекапы юзаете если не секрет ?
        Нужно снять Центос+Астерикс образ на всякий случай

        • Zerox

          Образ виртуальной машины средствами гипервизора. Это актуально, если vm не очень большая. Если большая, то делаю отдельно системный размер, бэкаплю его опять же через гипервизор. А данные уже другими способами, в зависимости от ситуации (в основном rsync использую).

          • Аватар

            Да нет, отдельная физ железка. Можно конечно выключить и снять акронисом каким-нить, но хотелось бы без ежемесячных выключений. Понял, спасибо.

            P.S. не находили что-нить новенькое по тайм менеджменту но уже более актуальное для наших реалий ?

  5. Аватар

    Слушайте, а если вытащить диск из старого компа с настроенным Линуксом и переставить в новый комп, в новом компе Система заведется или нет?

    • Zerox

      То, что заведется без лишних телодвижений шансов не много. Нужно будет скорее всего fstab поправить, сеть. Может что-то еще. В целом это реально, но нужно разбираться в теме.

  6. Аватар
    Дмитрий

    День добрый, я не совсем понял, можно ли использовать данный метод для переноса CentOs с Asterisk на другое железо, попробовал на виртуалке копировать машины, все заводится, но они голые, а вот с настроенными сервисами будет ли работать? И вопрос в момент копирования, машина на которой происходит копирование, живая, продолжает работать или в зависшем состоянии будет стоять пока процесс не закончится?

    • Zerox

      Тут нужно пробовать. Теоретически, можно перенести и машину с работающими сервисами. А практически как это получится — не известно. Лично я сам сталкивался с проблемами в переносе именно астериска. И тут на форуме или где-то в комментариях тоже кто-то высказывался на этот счет. Из-за разных процессоров на серверах, пришлось пересобирать заново астериск из исходников, после переноса. Но в целом все равно все заработало. Все настройки и все остальное. Именно пересобрать надо было на новом железе. Не факт, что вы с этим тоже столкнетесь.

      В любом случае, нужно предварительно все проверить. Останавливать машину во время копирования не надо, все происходит на работающей системе. Но лично я несколько раз ловил зависания в момент работы veeam, поэтому не советую экспериментировать в рабочее время. На всякий случай, пробуйте в момент максимального простоя.

  7. Аватар

    Доброго времени суток!

    У Вас был опыт конвертации виртуалок из VirtualBox в Hyper-V?
    Пробовал конвертировать виртуальный диск в VHD, но получил kernel panic.
    ОС — Altlinux 6.0 Школьный сервер.

    • Zerox

      Из Virtualbox ни разу не переносил. И Altlinux никогда не использовал. В целом, перенос всегда возможен, линукс переносится между различным железом и платформами, но нужно по месту разбираться с ошибками. Где-то загрузчик исправить, где-то initramfs пересоздать, где-то fstab изменить и т.д. Вариантов много различных.

  8. Аватар

    Очень успешно повторил описаный способ. Работает просто и удобно
    https://lan-meister.blogspot.com/2018/07/blog-post_17.html#more

  9. Аватар
    Александр

    Ясно, спасибо за совет!

    • Аватар
      Александр

      А вообще что то случилось с cifs. При попытке монтирования каталога где были бэкапы выдаёт ошибку:
      mount error(127): Key has expired
      Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)

      • Аватар
        Александр

        Непонятно только что за ключ?, срок действия которого истёк… Может в этом и вся проблема?

      • Zerox

        У меня 100% была такая ошибка. Но не помню, как решал. Может банально перезагрузка помогла. В англоязычном гугле полно тем на счет этой ошибки. Может время сильно разошлось, если сетевая папка на винде. Может там пароль юзера просрочился. В общем, много вариантов может быть, надо все проверять.

        • Аватар
          Александр

          Направление понял, б/спасибо!. буду искать

          • Аватар
            Александр

            Да, на самом деле причина оказалась в настройках пользователя на сервере куда шли бэкапы — стояла галка напротив «Требовать смены пароля при следующем входе в систему».

  10. Аватар
    Александр

    При попытке создания бэкапов на Centos7 появилась такая ошибка:
    mount error(127): Key has expired
    Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
    Exit code: [32]
    Failed to execute script command mount
    Unable mount device[//192.168.0.8/backup-asterisk] to [/tmp/veeam/192.168.0.8backup-asterisk].

    При открытии в окне программы неудавшейся бэкап-сессии выдаёт следующее:
    06:30:01 Job BackupJob1 started at 2017-11-24 06:30:01 MSK
    06:30:01 Retrying the job
    06:30:01 [error] Failed to perform backup
    06:30:01 [error] mount error(127): Key has expired
    06:30:01 [error] Refer to the mount.cifs(8) manual page (e.g. man mount.cifs)
    06:30:01 [error] Exit code: [32]
    06:30:01 [error] Failed to execute script command mount
    06:30:01 [error] Unable mount device[//192.168.0.8/backup-asterisk] to [/tmp/veeam/192.168.0.8backup-asterisk]
    06:30:01 [error] Unable get share repository resource
    06:30:01 [error] Unable create OnShareRepositoryEx
    06:30:01 [error] Processing finished with errors at 2017-11-24 06:30:01 MSK

    Что за ерунда такая случилась? Что за ключ, у которого закончился срок действия? Вплоть до 17го числа бэкапы создавались по расписанию как положено.

    • Zerox

      Вообще говоря, я отказался от этого продукта. Во время бэкапа у меня разок сервер жестко повис, помог только хард ресет. И большое количество ошибок тут в комментариях намекает на то, что продукт не готов к продакшену. Очень жаль :( Я возлагал на него большие надежды. Подожду пол годика, может быть допилят. В таком виде на боевых серверах я считаю его нельзя использовать.

      • Аватар

        Логи продукта и системные (в т.ч. «ядерные») сохранились? В саппорт ходили?

    • Аватар

      Не вот это ли у вас произошло?

      https://forum.sys-adm.in/index.php?topic=5202.0

  11. Аватар

    Интересно, забекапить zimbra можно будет агентом под linux… Может кто уже пробовал?

    • Zerox

      Думаю да. Если в целом бэкап заработает, то и зимбра забэкапится. Она же на обычном линуксе работает. Тут пока сам не проверишь конкретно на своем сервере, не узнаешь наверняка.

  12. Аватар

    приветствую. вылезла проблема

    система CentOS Linux release 7.4.1708 (Core)

    при запуске бэкапы вываливается с ошибкой

    [error] Failed to create volume snapshot
    [error] Failed to perform backup
    [error] Child execution has failed. Exit code: [1]
    [error] Failed to load module [veeamsnap] with parameters [zerosnapdata=1 debuglog…

    в интернетиках пишут то может не совпадать версии, но у меня все совпадает

    rpm -qa | grep veeamsnap
    veeamsnap-1.0.1.364-1.noarch

    uname -r
    3.10.0-693.2.2.el7.x86_64

    rpm -qa | grep kernel-headers
    kernel-headers-3.10.0-693.2.2.el7.x86_64

    есть мысли по решению?

    • Zerox

      Выше в комментариях человек написал, как решил такую же проблему.

      • Аватар

        выше таких же проблем как у меня не нашел

        пришлось ковырять самому, набрел на тему на офф форуме

        forums.veeam.com/veeam-agent-for-linux-f41/failed-to-load-module-with-parameters-zerosnapd-t40889.html

        там советую проверить модуль veeamsnap

        «Let me a little tediousness: veeamsnap is a DKMS module. DKMS modules have 4 states: not in a tree, added, built and installed. More info: http://www.linuxjournal.com/article/6896

        In general, the said error message means that veeamsnap module hasn’t been installed. You can check its status by running the following command
        # dkms status

        If the output looks like ‘veeasnap added’ this message means that module has been added, but hasn’t been built and hasn’t been installed. In the most cases, this status means that your OS doesn’t have corresponding kernel-devel and kernel-headers for the current kernel. When you install them (missing packages) you can either re-install Veeam Agent for Linux in order to execute DKMS hooks which will rebuild and install veeamsnap or rebuild it manually by executing the following commands:

        # dkms remove -m veeamsnap/1.0.0.944 —all
        # dkms build -m veeamsnap -v 1.0.0.944
        # dkms install -m veeamsnap -v 1.0.0.944

        I hope my message is informative and helpful.»

        на шаге dkms build -m veeamsnap -v 1.0.1.364
        возникает ошибка Your kernel headers for kernel 3.10.0-693.2.2.el7.x86_64 cannot be found at
        /lib/modules/3.10.0-693.2.2.el7.x86_64/build or /lib/modules/3.10.0-693.2.2.el7.x86_64/source.

        упорное гугление вывело на то что

        «I suspect that at some point you did a yum update or similar, and that actually installed a new kernel, but you have not yet started running it. »

        пробуем
        yum install «kernel-devel-uname-r == $(uname -r)»
        Loaded plugins: fastestmirror, replace
        Loading mirror speeds from cached hostfile
        * webtatic: uk.repo.webtatic.com
        No package kernel-devel-uname-r == 3.10.0-693.2.2.el7.x86_64 available.
        Error: Nothing to do

        пришлось искать качать и ставить вручную
        https://centos.pkgs.org/7/centos-updates-x86_64/kernel-devel-3.10.0-693.2.2.el7.x86_64.rpm.html
        rpm -i kernel-devel-3.10.0-693.2.2.el7.x86_64.rpm

        после этого уже можно делать
        # dkms build -m veeamsnap -v 1.0.1.364
        # dkms install -m veeamsnap -v 1.0.1.364

        после этого бэкап успешно запустился

        надеюсь будет полезно

  13. Аватар
    Александр

    Да, Вы правы. Я сразу так и поступил (пересобрал aster), но думал, что может есть более короткое решение. Спасибо за ответ!

  14. Аватар
    Александр

    Делаю бэкап сервера на Centos 7 с астериском. Потом делаю восстановление из созданного бэкапа на другом железе. Всё хорошо разворачивается, за исключением: Нет конекта с asterisk`ом. Ошибка: Unable to connect to remote asterisk (does /var/run/asterisk/asterisk.ctl exist?). Файл asterisk.ctl в наличии. Пробую перезапускать asterisk — без результата. В чём может быть причина?, и что делать?

  15. Аватар

    места много свободного есть на smb (где то в 1000 раз больше того, что нужно)
    в любом случае, спасибо за участие, буду копать дальше

    • Zerox

      На самом сервере, который бэкапится, тоже должно быть свободное место.

      • Аватар

        /dev/md2 1,8T 620G 1,1T 37%
        devtmpfs 24G 0 24G 0%
        tmpfs 24G 0 24G 0%
        tmpfs 24G 2,6G 21G 12%
        tmpfs 24G 0 24G 0%
        tmpfs 256M 207M 50M 81%
        /dev/md1 488M 379M 84M 83%
        tmpfs 4,8G 0 4,8G 0%
        tmpfs 4,8G 0 4,8G 0%
        tmpfs 4,8G 0 4,8G 0%
        tmpfs 4,8G 0 4,8G 0%
        tmpfs 512M 43M 470M 9%
        tmpfs 256M 8,3M 248M 4%
        tmpfs 4,8G 0 4,8G 0%
        tmpfs 4,8G 0 4,8G 0%
        tmpfs 768M 495M 274M 65%
        tmpfs 4,8G 0 4,8G 0%
        /dev/veeamimage1 1,8T 1,8T 0 100%

        • Аватар

          Причин может быть много, нужно смотреть что за ошибка в сессии бэкапа показана, отсюда плохо видно. Сходите для начала на форум их, а дальше по ситуации — либо ошибка известная и форума хватит, либо в саппорт отправят.

  16. Аватар

    добрый день
    при запуске первоначального бекапа на smb сервер залипла на 511,7 Мб
    попытка снять с выполнения привела к тому, что статус поменялся на Stopping, но висит так же, ничего не меняется
    подскажи, пож, Куда копать, что можно сделать ?

    • Zerox

      Службу veeamservice перезапустить:
      # systemctl restart veeamservice

      • Аватар

        спасибо
        после перезапуска службы «висеть» перестал, но и дальше тех же 511,7 Мб не двигается.
        заканчивает бекапировать со стейт failed

        • Zerox

          Дальше логи надо смотреть в /var/log/veeam. Они достаточно подробные. Скорее всего там будет какая-то ошибка.

          • Аватар

            Изучаю логи, если честно, пока понять ничего не могу.
            Наверное наглость с моей стороны, но если есть возможность — посмотрите пож ? http://transfiles.ru/fbynb

            • Zerox

              Ошибки же видно. Искать по слову «Failed». Надо разбираться подробно, в чем там дело. Я так не помогу. Может просто места на дисках нет свободного? Для бэкапа нужен какой-то свободный объем.

  17. Аватар
    николай

    Welcome to SUSE Linux Enterprise Server 11 SP2 (x86_64) — Kernel \r (\l).

    • Zerox

      Судя по документации, версия эта поддерживается
      https://www.veeam.com/veeam_agent_linux_1_0_user_guide_pg.pdf
      Такая же ошибка уже была у одного пользователя выше. Не знаю, как он ее решил. Возможно, поможет запрос в техподдержку. Мне нечего посоветовать.

      • Аватар
        николай

        спасибо

      • Аватар
        николай

        скажи пожалуйста , а другими средствами можно перенести физ сервак на виртуалку hyper-v ?

        • Zerox

          Clonezilla, Acronis. Как минимум у них заявлен этот функционал, но сам я не пользовался ими, хотя знаю, что clonezilla нормально сервера переносит один в один. Главное, чтобы сама система завелась на новом железе. Возможно в ней самой нужно будет что-то редактировать (пересобирать ядро, править загрузчик, initramfs, fstab и т.д.) В общем, нюансов может быть много. Linux в принципе труднее переносить с железо на железо в автоматическом режиме, чем винду.

    • Аватар

      Это известный баг

      https://forums.veeam.com/veeam-agent-for-linux-f41/unable-to-start-veeam-t45138.html

      вам в саппорт нужно, они скажут что дальше делать

  18. Аватар
    николай

    доброго дня, скажите пожалуйста после установке возникли вот такие ошибки
    bis2:~ # veeam
    Error: No such file or directory
    Failed to connect: /tmp/veeam/socket/veeam.sock.
    Failed to connect to local socket.

    • Zerox

      Система какая? На CentOS 7 у меня ни разу не было никаких проблем с установкой и запуском.

  19. Аватар
    Александр

    Установил veeam на Centos7. При выборе C (configure) для настройки задания на backup выдаётся ошибка: LvmDriver: Failed to create LVM instance. В чём причина и как исправить?

    • Аватар
      Александр

      Решение проблемы нашёл на сайте veeam: https://www.veeam.com/kb2334
      Необходимо отредактировать файл /etc/lvm/lvm.conf
      Секция Configuration section global, изменить units = «r» на «h»

      • Zerox

        Отлично, спасибо за информацию. Дополню статью.

      • Zerox

        Еще раз спасибо за информацию. Тоже словил эту ошибку после обновления centos. Оказывается бэкапы с этого времени не делались :(

  20. Аватар

    окей, извиняюсь (( был не прав… (, тогда вопрос другой, как то можно удалить бэкап сессии ? А то уж больно глаза мазолят (

  21. Аватар

    Можно ли как то удалить Jobs’ы а то я насоздавал ради теста, удалить не могу (((

    • Zerox

      Можно. Там же в интерфейсе программы.

      • Аватар

        нет, нельзя, попробуйте, я целых два часа над этим парюсь

        • Аватар

          Все доброго времени суток.

          Попробуйте вызвать из строки veeamconfig job delete —name %имяДжобы%

          • Аватар

            Пробовал, задания все равно остаются

            Попробуйте сами, вдруг я где то ошибся, хотя наврятли ….

            • Аватар

              Я выполняю:
              # veeamconfig job delete —name BackupJob1

              и получаю:
              Job has been deleted successfully.

              Если вы под джобами имеете в виду то что видно на главном экране при старте меню, так то не джобы, а бэкап-сессии, т.е. хистори. убедиться что джоб не осталось сделайте

              veeamconfig job list

  22. Аватар

    На hetzner дешевле место арендовать и поддержка кучи протоколов и smb/cifs, sftp и т.д.

  23. Аватар

    попробовал поставить Veeam на сервер астериска FreePBX
    вот какая ошибка при запуске veeam
    подскажите куда копать?
    Error: No such file or directory
    Failed to connect: /tmp/veeam/socket/veeam.sock.
    Failed to connect to local socket.

    • Zerox

      Сервер перезагружали?

      • Аватар

        там телефония крутиться. в принципе можно попробовать

      • Аватар

        после перезагрузки тоже самое.
        изначально не было даже папки /tmp/veeam/socket
        создал папку
        mkdir /tmp/veeam/socket
        потом создал сокет
        mkfifo /tmp/veeam/socket/veeam.sock
        делаю права для veeam
        chown -R veeam /tmp/veeam/socket
        получаю в ответ:
        chown: invalid user: `veeam’

    • Zerox

      Система какая? Или это готовый дистр от FreePBX?

      • Аватар

        готовый дистр Freepbx
        x86

        • Zerox

          Тогда в этой системе могут быть нюансы. Я бы для начала на виртуальной машине развернул этот дистрибутив и потренировался на нем, а потом уже на боевом пробовал что-то делать.

          • Аватар

            да вроде тот же centos судя по всему. хех veeam такой удобный на других серверах. придеться что то другое ставить

  24. Аватар

    при запуске команды yum install veeam выдает следующее:

    Error: Package: veeamsnap-1.0.1.364-1.noarch (veeam)
    Requires: dkms

    • Zerox

      Нужно попробовать вручную установить пакет dkms. Это на какой системе? Я на нескольких серверах с CentOS 7 ставил, всегда гладко проходила установка, без затыков и ошибок.

  25. Аватар

    есть еще вариант исправления ошибки после переноса с kvm на hyper-v, который не требует установочного образа, выполняется из rescue mode:

    • remove «rhgb» from the kernel command line in /etc/default/grub

    • # systemctl daemon-reload

    • generate a new /boot/grub2/grub.cfg:
    grub2-mkconfig -o /boot/grub2/grub.cfg

    • generate a new initramfs — varies based on your kernel!
    mv /boot/initramfs-3.10.0-229.11.1.el7.x86_64.img /boot/initramfs-3.10.0-229.11.1.el7.x86_64.img.bak
    dracut -v /boot/initramfs-3.10.0-229.11.1.el7.x86_64.img 3.10.0-229.11.1.el7.x86_64

    • Zerox

      Какая ошибка исправляется таким образом? Я не удалял модуль rhgb при переносе.

      • Аватар

        исправляет ошибки «Warning: dracut-initqueue timeout starting timeout scripts» и «a start job is running for dev-disk-by ……». как раз на этой неделе занимался миграцией centos7 и столкнулся с таким, выше приведенный способ исправляет их

  26. Аватар

    а можно бекапнуть lxc контейнер в проксмок, а потом востановить обратно но на виртуалку KVM?

    • Zerox

      Не знаю, не пробовал. Не уверен, что это возможно. Контейнеры и виртуалки принципиально разные вещи.

  27. Аватар

    На proxmox настроенный по мануалу https://serveradmin.ru/ustanovka-i-nastroyka-proxmox/
    #uname -a
    Linux proxmox 4.4.76-1-pve #1 SMP PVE 4.4.76-94 (Thu, 17 Aug 2017 14:21:30 +0200) x86_64 GNU/Linux

    #lsb_release -a
    Description: Debian GNU/Linux 8.9 (jessie)
    Release: 8.9
    Codename: jessie

    бэкап пока не работает, пишет
    Failed to load module [veeamsnap] with parameters [zerosnapdata=1 debuglogging=0]

    возможно из-за нестандартного ядра т.к. по мануалам для veeam гарантируется работа только на стандартном ядре дистрибутива
    https://helpcenter.veeam.com/docs/agentforlinux/userguide/system_requirements.html?ver=10
    * As long as you use kernels supplied by your distribution.

    • Zerox

      А какой смысл сам гипервизор бэкапить? Достаточно только виртуалки. Я никогда гипервизоры не бекаплю. Их настроить с нуля быстрее, чем постоянно держать актуальный бэкап, а потом разворачивать его.

      • Аватар

        хм…про гипервизор этот момент не продумал, согласен.

        Так а виртуалки есть ли смысл бэкапить другим инструментом, например в Proxmox есть бэкап виртуалок из коробки.

        • Zerox

          Надо смотреть по ситуации. Конечно, если гипервизор позволяет делать бэкапы, то пользоваться нужно именно этим средством, так проще и удобнее. Но, к примеру, proxmox делает только полные бэкапы, а veeam умеет инкрементные. Так что в отдельных ситуациях можно отдать предпочтение бесплатному veeam.

  28. Аватар

    На debian 7.11 cразу не взлетело
    #uname -a
    Linux tower 3.16.0-0.bpo.4-amd64 #1 SMP Debian 3.16.39-1+deb8u1~bpo70+1 (2017-02-24) x86_64 GNU/Linux

    #lsb_release -a
    Description: Debian GNU/Linux 7.11 (wheezy)
    Release: 7.11

    при запуске процесса бэкапа ошибка:
    Failed to load module [veeamsnap] with parameters [zerosnapdata=1 debuglogging=0]

    После перезагрузки сервера, проблема ушла.

    • Аватар
      Дмитрий

      Привет! давече столкнулся с такой же проблемой. только на freepbx distro после обновлений(видимо не могут они нормально поднимать ядро), до этого все нормально работало)) Решилось созданием симлинка build в папке /usr/lib/modules/»ваша версия ядра» на /usr/src/kernels/»ваша версия ядра» и симлинка source в папке /usr/lib/modules/»ваша версия ядра» на (как не удивительно) build.
      После выполняем команды
      смотрим билд веамснап sudo dkms status
      dkms remove -m veeamsnap -v «билд веамснап » —all
      dkms build -m veeamsnap -v «билд веамснап »
      dkms install -m veeamsnap -v «билдвеамснап »

      Если все ок, то ошибок быть не должно, можно полностью снести и переустановить веам дабы спокойнее было))

      • Аватар
        Дмитрий

        В общем, надеюсь это поможет кому-нибудь во избежании потраченного времени и нервных клеток)

  29. Аватар

    Добрый день!
    Полезная статья, не знал о таком сервисе.
    В закладки, однозначно!

Добавить комментарий

Ваш e-mail не будет опубликован.

Нажимая кнопку "Отправить комментарий" Я даю согласие на обработку персональных данных.