4

Я хочу сделать резервную копию работающего сервера. Все файлы конфигурации и все, не выключая его.

Как я могу сделать это? Можно ли попытаться скопировать все это? Потому что у меня были проблемы с root каталогом.

Я не хочу много экспериментировать, потому что он имеет важные конфигурации.

Я пытаюсь сделать все это через ssh . Как я могу сделать эту резервную копию?

Есть идеи?

2 ответа2

4

Если вы хотите сделать резервную копию всех данных, вы можете войти на сервер через ssh, а затем просто скопировать все файлы. Например, с помощью scp или rsync .

Вы даже можете скопировать все, включая файлы ОС, если вы используете
rsync -zvr --exclude /dev/ / destination_computer_name_or_ip

-r: рекурсивный
-v: многословный
-z: включает сжатие

Обратите внимание, что это не будет копировать загрузочную запись. Для этого вы хотите скопировать весь диск, и вы хотите сделать это, когда диск не смонтирован. (Читайте: выключите компьютер, который вы хотите utterly_full_backup и загрузитесь с liveCD или загрузитесь с другого раздела.)

Затем используйте dd, чтобы прочитать весь диск.

Пример кода:

ПК для хранения резервной копии на:
nc -l 4242 | gunzip | cat > my_full_disk_backup_of_PC_named_foo

И на ПК для резервного копирования:
dd if=/dev/sda of=- bs=1M | gzip | nc -p 4242 name_of_the_destination

дд будет читать с диска. Весь диск, включая загрузочные и пустые сектора.
В примере мы настроили его для первого диска, как указано sd a. Настройте sdb для второго диска, sdc для третьего диска и т.д. И т.д.

Мы выводим на стандартный вывод, обозначенный - .

bs = 1M устанавливает размер блока. Вам это не нужно, но без него будет много небольших операций чтения и огромных накладных расходов. Установка этого значения в 512 байт или 4 Кб ускорит процесс.

Далее мы труба | вывод, хотя gzip, чтобы сжать его. Это предполагает, что ваш процессор будет намного быстрее, чем ваша сеть. Вы можете пропустить gzip на источнике и gunzip на месте назначения, и в этом случае вы будете отправлять необработанные данные, а не сжатые данные по сети.

Последний - это nc или netcat. Он принимает входные данные из предыдущего канала и помещает его в сеть по направлению к порту 4242 на компьютере с именем name_of_the_destination.


На приемном конце мы делаем обратное:

Прослушивание через nc -l для ввода через порт 4242,

разархивируйте при необходимости,

И, наконец, запишите это в файл.


Важное примечание:

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

1

то, что я бы сделал, очень похоже на Хеннес

Я хотел бы создать ISO-файл, скачать его, положить его на диск или USB и загрузить копию на Dropbox на всякий случай.

mkisofs -V LABEL -r DIRECTORY | gzip > backup.iso.gz

Мой друг работает в rackspace, он сказал мне, что у пользователей rackspace есть возможность автоматически создавать iso-файл, и если они мигрируют на новый сервер, они могут сохранить старую резервную копию на старом облачном сервере с помощью rsync или любого другого и закрыть его. вниз, они все еще платят, но это дешево.

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

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .