Этап #19
Восстановление системы на зашифрованный диск. Форматирование разделов
Сначала, как и на этапе 18, необходимо получить доступ к зашифрованному жесткому диску
tcplay --map=cryp_sdb --device=/dev/sdb --keyfile=/path/to/key/file
Далее, с помощью утилиты kpartx
, доступ к разделам на жестком диске
kpartx -av /dev/mapper/cryp_sdb
где:
Опция a
– подключить разделы, содержащиеся на зашифрованном устройстве
Опция v
– отобразить, какие разделы были подключены.
/dev/mapper/cryp_sdb –
подключенный с помощью tcplay
зашифрованный диск.
Далее форматируем разделы. Главный:
mkfs –t ext2 /dev/mapper/cryp_sdb1
Дополнительный:
mkfs –t ext2 /dev/mapper/cryp_sdb5
И раздел подкачки:
mkswap /dev/mapper/cryp_sdb6
Отключаем подключенные разделы:
kpartx –dv /dev/mapper/cryp_sdb
Отключаем зашифрованный жесткий диск:
tcplay --unmap=cryp_sdb
Перезагружаемся обратно в консоль тестового initrd
Этап #20
Восстановление системы на зашифрованный диск. Восстановление файлов из ранее созданных бэкапов.
Как и в предыдущем этапе, сначала получаем доступ к зашифрованному жесткому диску:
tcplay --map=cryp_sdb --device=/dev/sdb --keyfile=/path/to/key/file
И его разделам:
kpartx -av /dev/mapper/cryp_sdb
Предположим, что бэкапы системы были сохранены на первый FAT32 раздел флешки sda1
и находятся по следующим путям:
/mnt/sdb1/bak/system.tar.gz
и /mnt/sdb1/bak/home.tar.gz
Создаем точку монтирования для флешки (если не создана):
mkdir /mnt/sdb1
И монтируем ее (если не примонтирована)
mount –t vfat /dev/sdb1 /mnt/sdb1
Создаем точки монтирования для разделов жесткого диска:
mkdir /mnt/sda1
mkdir /mnt/sda5
Внимание! Точки монтирования для жестких дисков должны называться также, как назывались при создании бэкапов!
Монтируем разделы:
mount –t ext2 /dev/mapper/cryp_sdb1 /mnt/sda1
mount –t ext2 /dev/mapper/cryp_sdb5 /mnt/sda5
Распаковываем архивы:
tar –xvf /mnt/sda1/bak/home.tar.gz –C /
tar –xvf /mnt/sda1/bak/system.tar.gz –C /
где:
Опция x
– распаковать архив
Опция v
– отображать имена распаковываемых файлов
Опция f
– архив находится в файле (а не направлен со STDIN)
/mnt/sda1/bak/home.tar.gz
– путь к файлу архива
–C
– указывает, в какой каталог распаковать архив (сам каталог указывается через пробел, и в данном случае это корень, т.е. /
).
Скопируем заранее исправленные fstab
и mtab,
предположим, они были сохранены в первый раздел загрузочной флешки, в каталог tabs
и данный раздел смонтирован:
cp /mnt/sdb1/tabs/fstab /mnt/sda1/etc/fstab
cp /mnt/sdb1/tabs/fstab /mnt/sda1/etc/mtab
После копирования файлов отмонтируем разделы:
umount /mnt/sda1
umount /mnt/sda5
Отключаем подключенные разделы:
kpartx –dv /dev/mapper/cryp_sdb
Отключаем зашифрованный жесткий диск:
tcplay --unmap=cryp_sdb
Перезагружаемся уже с рабочим initrd.
Поздравляю! Если система успешно загрузилась с рабочим initrd, значит, задача выполнена!
После успешной загрузки можно подправить конфиг GRUB, так, чтоб сразу загружалась система с рабочим initrd.
Pingback: Домашний сервер на базе Slackware Linux | Персональный блог Толика Панкова