Как полностью выполнить резервное копирование Ubuntu Server на другой Ubuntu Server (например, неработающий диск 1)

У меня есть маленький вопрос к Тебе. Я управляю небольшим выделенным сервером с установленным Ubuntu Server 16.04 LTS.

Я много искал, но я не нашел надежного и первого простого решения для резервного копирования моего сервера на другой сервер.

Более подробно: я использую Wordpress, Apache, Php, 2 базы данных Mysql и сервисы SFTP. Внутри есть один активный домен и один поддомен.

Вопрос в том, что я только что реализовал решение для резервного копирования только для содержимого моих сайтов. Но в случае, если диск будет сломан, например, есть ли способ сделать резервную копию всех файлов сервера (например, раз в месяц) и установленной программы (включая операционную систему) и создать своего рода файл, который я могу использовать для восстановления все конфигурации / файлы / установленные программы на другом сервере?

У меня нет физического доступа к серверу, и у меня нет службы моментальных снимков, доступной на хостинге (Kimsufi).

Я нашел это предложение, но не могу получить доступ к решению GRUB: Tar.

1 ответ

Решение

Существует множество инструментов, которые вы можете использовать для копирования файловых систем, таких как dd или же rsync

Rsync

Позволяет копировать поверх SSH

Скопируйте ваш домашний каталог на другой сервер через ssh

rsync -a --delete --quiet -e ssh /folder/to/backup remoteuser@remotehost:/location/of/backup

Полное резервное копирование системы

rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} / /path/to/backup/folder

И, наконец, rsync как инструмент клонирования дисков

rsync -qaHAXS SOURCE_DIR DESTINATION_DIR

со страницы руководства

-H, --hard-links      preserve hard links
-A, --acls            preserve ACLs (implies -p)
-X, --xattrs          preserve extended attributes
-S, --sparse          handle sparse files efficiently

дд

Я не думаю, что вы можете использовать dd поверх ssh, так что вам придется использовать скрипт для загрузки файла или просто скопировать на флешку, но клонирование диска (о чем вы спрашиваете) - это то, что было разработано dd за

Клонировать весь диск

dd if=/dev/sdX of=/dev/sdY bs=64K conv=noerror,sync status=progress

Вы могли бы попробовать этот обходной путь для использования dd через ssh-туннель, хотя мой совет будет сначала протестировать его на пару виртуальных машин, прежде чем запускать его на голом металле dd Это мощный инструмент, как сказал дядя Бен: "С большой силой приходит большая ответственность", легко уничтожить файловые системы с помощью dd. Без лишних слов... обходной путь

ssh server1 'dd if=/some/file' | ssh server2 'dd of=/new/file/path'
Другие вопросы по тегам