Резервирование жёсткого диска при помощи dd поверх ssh

Автор: | 02.07.2010

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

Для проведения данной операции, была произведена загрузка на ноутбуке с CD-привода в Fedora Linux 13 rescue, настроена сеть, диски не монтировались. Компьютер, на который будет сбрасываться образ диска ноутбука находится в одной сети с ноутбуком, на нём установлен и настроен демон sshd.

Резервирование данных:

dd if=/dev/sda | ssh ras@backup-host "dd of=book/sda"

Восстановление данных:

ssh ras@backup-host "dd if=book/sda" | dd of=/dev/sda

Здесь backup-host — компьютер, на который сохраняется образ, ras — имя пользователя, book/sda — каталог и название файла бэкапа, /dev/sda — устройство-жёсткий диск ноутбука. В моей ситуации был не очень быстрый ноутбук, а компьютер, на который осуществлялось резервирование, обладал объёмным жёстким диском. При резервировании можно применять сжатие, тогда получим меньший образ, меньше трафика передачи по сети, если диск или сеть будут узким местом, но возрастёт нагрузка на процессор резервируемой системы, соответственно увеличится время резервирования. Вариации на эту тему:

dd if=/dev/sda | gzip | ssh ras@backup-host "dd of=book/sda.gz"
ssh ras@backup-host "dd if=book/sda.gz" | gzip -d | dd of=/dev/sda
dd if=/dev/sda | bzip2 | ssh ras@backup-host "dd of=book/sda.bz2"
ssh ras@backup-host "dd if=book/sda.bz2" | bzip2 -d | dd of=/dev/sda
Facebooktwittergoogle_plusredditpinterestlinkedintumblr

Comments

comments

Резервирование жёсткого диска при помощи dd поверх ssh: 3 комментария

  1. Antonio

    Интересная методика, возможно пригодится

  2. Вовка

    Восстановление данных:
    1

    ssh ras@backup-host «dd if=book/sda» | dd of=/dev/sda

    По данному способу ssh остается открытым по окончании и некорректно завершается копирование, может надо использовать ssh -C ?

  3. Вовка

    Разобрался мне нужна была такая конструкция

    ssh user@ip ‘dd if=/home/user/sdb.img.gz’ | gunzip -1 — | dd of=/dev/sdb

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

Ваш e-mail не будет опубликован. Обязательные поля помечены *