klink0v (klink0v) wrote,
klink0v
klink0v

Category:

Бэкап удаленного Linux-сервера

В отличие от всяких там форточек, для Linux-а есть целых три инструмента бэкапа: tar, cp и rsync. Всё остальное — обвески над ними. В зависимости от решаемой задачи их можно применять по-разному. Ниже будет один из возможных способов. Вероятно, читатель сочтёт его далеко не оптимальным. Но тут всё зависит от вводных.

Итак, чего хочется.

Есть некая удалённая достаточно нагруженная Linux-виртуалка, причём доступа к гипервизору нет. Хочется снять с неё бэкап, по возможности минимально насилуя "вражескую" дисковую подсистему. И чтобы не напрягать CPU той стороны шифрованием, делать это не через SSH.

Решение.

1. Если бэкап будет делаться через злой и холодный интернет, то поднять какой-нибудь тоннель между узлами. Например, WireGuard. Если по доверенной локальной сети, то сугубо пофиг.
2. Установить "с той стороны" rsync, запустить его в режиме демона, заbindить его к внутреннему тоннельному интерфейсу (не к 0.0.0.0).
3. В файле "rsyncd.conf" прописать что-нибудь того.

4. В "/etc/rsyncd.secrets" добавляем пароль для пользователя "backuper".
5. На клиенте (туда, куда будем бэкапить), создаем папочку, делаем cd туда, запускаем от рута команду

6. Через какое-то время локально будет скачан образ удалённой системы. По желанию его можно заtarить и упаковать в архив.

Разумеется, у данного метода есть куча недостатков.


  • Требуется наличие заранее преднастроенного шифрованного канала.

  • Требуется наличие прав суперпользователя на клиентской машине либо пляски с утилитой fakeroot.

  • Расточительно используется сеть / гоняется слишком много трафика.

Конечно, в ряде случаев намного удобнее сколотить шифрованный архив с бэкапом "там", а потом его просто скачать по scp, https, ftp и тому подобное. Но я как всегда, решаю несколько долбанутую задачу. Поэтому можете не критиковать особенно мою "придумку": я знаю, что для большинства случаев такой способ будет неоптимальным. Это больше демонстрация возможностей rsync-а.

И понятно, что обычно удобнее пользоваться готовыми утилитами, которые работают всё через тот же rsync. Например, "rsnapshot".

Tags: hints, it, linux, администрирование
Subscribe
  • Post a new comment

    Error

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 15 comments