Бекап за допомогою dd,tar,gzip/gunzip,ssh

Іноді потрібно зробити бекап всього диску на сервері.
Для цього використаємо dd, gzip а кінцевий образ збережемо на бекапному сервері через ssh
Для того, щоб прискорити процес можна зробити наступний "трюк" - заповнити весь вільний простір на диску нулями, а в кінці видалити цей файл:

dd if=/dev/zero of=zero.out bs=32M; rm zero.out

Робимо бекап потрібного нам диска:

dd if=/dev/sda | gzip -1 - | ssh [email protected] dd of=~/sda.img.gz

Вводимо пароль та чекаємо залежно від того наскількі великий диск.

На бекапному сервері в домашній директорії користувача user можна перевірити що файл з образом дійсно присутній:

ls -la /home/user/sda.img.gz

Все - образ диска готовий.

Якщо нам замість бекапу всього диску потрібен лише бекап файлової системи, то це можна зробити за допомогою звичайного tar замість dd:

tar -cvpzf - / | ssh [email protected] dd of=~/rootfs.tar.gz

або

tar -cvpzf - / | ssh [email protected] cat > ~/rootfs.tar.gz

Щоб залити образ /dev/sda з бекапу достатньо використати будь-який LiveCD з Linux та ssh та ввести:

ssh [email protected] dd if=~/sda.img.gz | gunzip -1 - | dd of=/dev/sda

В разі потреби відновити корневу фс з архива (вариант з tar) треба пам’ятати, що LiveCD має бути тієї ж самої архітектури як і сама фс в архиві, інакше не вийде chroot`нутися щоб перезібрати initrd та встановити на фс grub