Клонирование full-disc-encrypted система unencryptedly на новый диск

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

Это включенные разделы/устройства:

/dev/sda: Old disc, with encrypted partition
/dev/sda1: FAT32 with boot flag
/dev/sda2: EXT2, containing some EFI and grub stuff
/dev/sda3: LUKS partition I want to clone (about 460 GiB);
           contains a swap and an ecrypted EXT4 with about 20 GiB used
/dev/sdc: New SSD

Для запуска я просто скопировал /dev/sda1 и /dev/sda2 кому: /dev/sdc{1,2} использование gparted, который, казалось, работал (оба монтируемые). Затем я создал новый раздел EXT4 suffiently большой для содержания содержания зашифрованного EXT4 на /dev/sdc3, и новая подкачка на остающемся пространстве на /dev/sdc4.

Я затем дешифровал /dev/sda3 с

sudo cryptsetup luksOpen /dev/sda3 crypt1

и скопированный по его содержанию, с помощью

sudo dd if=/dev/mapper/ubuntu--vg-root of=/dev/sdc3

(где /dev/mapper/ubuntu--vg-root содержит исходный корневой раздел и может правильно быть смонтирован). Это заканчивается после 19 гибибайт или так, чтобы на самом деле использовались на зашифрованном разделе.

От той точки один, что-то, кажется, перестало работать; я не могу смонтироваться /dev/sdc3 впоследствии, поскольку это, кажется, повреждается.

ubuntu@ubuntu:~$ sudo mount /dev/sdc3 /mnt
mount: wrong fs type, bad option, bad superblock on /dev/sdc3,
missing codepage or helper program, or other error
In some cases useful info is found in syslog - try
dmesg | tail or so

ubuntu@ubuntu:~$ sudo fsck /dev/sdc3
fsck from util-linux 2.20.1
e2fsck 1.42.9 (4-Feb-2014)
Error reading block 60325888 (Invalid argument). Ignore error<y>? yes
Force rewrite<y>? yes
Superblock has an invalid journal (inode 8).
Clear<y>? yes
*** ext3 journal has been deleted - filesystem is now ext2 only ***

Superblock has_journal flag is clear, but a journal inode is present.
Clear<y>? yes
The filesystem size (according to the superblock) is 120880128 blocks
The physical size of the device is 14848000 blocks
Either the superblock or the partition table is likely to be corrupt!
Abort<y>? yes
Error writing block 60325888 (Invalid argument). Ignore error<y>? yes

/dev/sdc3: ***** FILE SYSTEM WAS MODIFIED *****

И это что предложенный dmesg | tail произведенный:

[ 51.575179] EXT4-fs (sdc2): mounting ext2 file system using the ext4 subsystem
[ 51.580102] EXT4-fs (sdc3): bad geometry: block count 120880128 exceeds size of device (14848000 blocks)
[ 51.582477] EXT4-fs (sdc2): warning: mounting unchecked fs, running e2fsck is recommended
[ 51.587740] EXT4-fs (sdc2): mounted filesystem without journal. Opts: (null)
[ 51.633994] FAT-fs (sdc1): Volume was not properly unmounted. Some data may be corrupt. Please run fsck.
[ 107.969122] EXT4-fs (sdc3): bad geometry: block count 120880128 exceeds size of device (14848000 blocks)

Я на самом деле не знаю так много о разделении, но я предполагаю, что ему не нравится просто явно копировать незашифрованное содержание - возможно, это является несовместимым со старой таблицей разделов? Там, кажется, включен что-то с неправильным размером. Возможно, я должен изменить размер зашифрованного материала сначала?

Так, я могу так или иначе зафиксировать это? Или, что я должен сделать альтернативно, чтобы достигнуть того же самого - по существу клонирование зашифрованного корня EXT4 на SSD и получить загрузочную, незашифрованную копию старой системы? (При изменении размеров и затем клонировании всего /dev/sda с шифрованием оказывается значительно легче, я мог сделать это также; мое исходное предположение было то, что клонирование его unencryptedly получит меня вокруг целого encrypted-resizing-hassle...),

2
задан 13 April 2017 в 15:24

1 ответ

Оказывается, что все это легче, чем я думал. Мотивированный комментариями @Xen2050, я смог по существу всего rsync целая система на новую установку:

  1. Начальная загрузка с живой палкой
  2. Установка новая Ubuntu на новый диск (использующий отдельный efi раздел начальной загрузки)
  3. Монтирует, что корневой раздел новой Ubuntu к /mnt/new-root
  4. Дешифрует старую систему через cryptsetup luksOpen /dev/sdXY crypt1
  5. , Монтируют старый корневой раздел mount /dev/mapper/ubuntu--vg-root /mnt/old-root
  6. Копия все : rsync -aAXv --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found"} /mnt/old-root /mnt/new-root
  7. Редактирование fstab в /mnt/new-root/etc/fstab для содержания UUID разделов на новом диске (может быть получен через gparted)

И удивительно это - все. Перезапуск, и можно загрузиться от нового диска со всем то же как прежде (только без шифрования и быстрее).

1
ответ дан 2 December 2019 в 04:59

Другие вопросы по тегам:

Похожие вопросы: