Как изменить размер зашифрованного LVM для установки еще одной копии Ubuntu?

Как изменить размер зашифрованного LVM для установки еще одной копии Ubuntu?

У меня есть старый PowerBook, на котором Ubuntu Server успешно работает уже несколько месяцев. Теперь я хочу переразбить жесткий диск и установить Ubuntu Client, сохранив при этом существующую установку.

Когда я впервые установил Ubuntu, я решил стереть весь жесткий диск и использовать его как зашифрованный LVM. Теперь установщик, похоже, распознает разделы на диске, но он никогда не запрашивает у меня пароль к LVM.

Как освободить место для еще одной установки рядом с моей текущей?

решение1

Графических инструментов для изменения размера зашифрованного раздела нет. Вы можете сделать это вручную из командной строки.

Изменение размера зашифрованного раздела должно выполняться с Live CD, а поддержка шифрования и LVM на Live CD не включена.

Загрузите Live (Desktop) CD и установите lvm2 и cryptsetup.

sudo apt-get update && sudo apt-get install lvm2 cryptsetup

Загрузите модуль cryptsetup.

sudo modprobe dm-crypt

Расшифруйте вашу файловую систему.

sudo cryptsetup luksOpen /dev/sda5 crypt1

Получите Live CD, чтобы распознать (активировать) ваш LVM.

sudo vgscan --mknodes
sudo vgchange -ay

Теперь вы можете управлять зашифрованными разделами, монтировать их, копировать или выполнять обслуживание (fsck, резервное копирование, изменение размера).

Уменьшите размер вашей файловой системы с помощью resize2fs (этот инструмент работает на разделах ext2 и ext3). Вам необходимо проверить файловую систему, прежде чем вы сможете изменить ее размер.

sudo e2fsck -f /dev/mapper/hardy-root
sudo resize2fs -p /dev/mapper/hardy-root 5g

Замените «5g» на предполагаемый размер (в ГБ) вашей файловой системы.

Проверьте целостность файловой системы с помощью e2fsck.

sudo e2fsck -f /dev/mapper/hardy-root

Уменьшите размер вашего корневого (LVM) логического тома. Флаг -L — это то, насколько вы хотите уменьшить размер вашего (LVM) логического тома, так что имейте это в виду.

Отобразите свои логические тома (LVM) с помощью lvdisplay.

sudo lvdisplay

Обратите внимание, насколько вам нужно уменьшить корневой (LVM) логический том (в моем случае это было 4,3 Гб).

sudo lvreduce -L -4.3G /dev/hardy/root

Примечание: Вам необходимо будет изменить «-4.3G» на нужный размер, чтобы уменьшить ваш логический том (LVM) до желаемого размера.

Повторно отобразите логические тома (LVM), чтобы проверить правильность окончательного размера.

sudo lvdisplay

Измените размер физического тома (LVM).

Физический том, используемый LVM, может стать «фрагментированным», поскольку логические тома (LVM) в физическом томе (LVM) не всегда находятся в порядке. Инструмента дефрагментации нет, поэтому, если вам может потребоваться вручную переместить логические разделы (создать резервную копию данных, удалить логический том (LVM), заново создать заменяющий логический том (LVM), восстановить данные из резервной копии).

Чтобы изменить размер физического тома (LVM), мне пришлось вручную переместить (удалить, а затем создать заново) логический том подкачки (LVM).

Покажите размер вашего физического тома с помощью pvdisplay

sudo pvdisplay

Удалить логический том подкачки (LVM)

sudo lvremove /dev/hardy/swap_1

Измените размер физического тома (LVM).

sudo pvresize --setphysicalvolumesize 5.6G /dev/mapper/crypt1

Теперь восстановим (пересоздадим) логический том подкачки (LVM).

Установите разрешения для физического тома (LVM), чтобы разрешить выделение (при необходимости)

sudo pvchange -x y /dev/mapper/crypt1

Восстановите логический том подкачки (LVM).

sudo lvcreate -L 512m -n swap_1 hardy
sudo mkswap -L swap_1 /dev/hardy/swap1

После завершения работы команды mkswap новый UUID будет выведен на терминал.

Обновите fstab, указав новый uuid (используйте любой редактор)

Смонтируйте корневой (LVM) логический том.

sudo mount /dev/hardy/root /mnt

Редактировать /etc/fstab

gksu gedit /mnt//etc/fstab

Скопируйте и вставьте новый uuid из терминала в fstab, обновив uuid для вашего раздела подкачки. Сохраните и выйдите из gedit Размонтируйте корневой (LVM) логический том

sudo umount /mnt

Повторно заблокируйте физический том (LVM) после добавления подкачки логического тома (LVM) (блокировка физического тома (LVM) предотвращает его изменение).

sudo pvchange -x n /dev/mapper/crypt1

Измените размер своего склепа.

Покажите размер вашего криптохранилища с помощью cryptsetup.

sudo cryptsetup status crypt1

Здесь отображается размер вашего криптохранилища в секторах.Обратите внимание на смещение.

offset: 2056 sectors

Измените размер с помощью cryptsetup.

sudo cryptsetup -o 2056 -b 11800000 resize crypt1

-o = offset (get this from the status command) -b = size in sectors.

Измените размер разделов с помощью fdisk.

Размонтируйте LVM и криптуйте:

sudo vgchange -an
sudo cryptsetup luksClose crypt1

А теперь самое страшное: используйте fdisk, чтобы вручную изменить размер разделов.

Если вы не знакомы с fdisk, советую вам прочитать, как разбить диск на разделы с помощью fdisk

fdisk НЕ перезаписывает данные, поэтому, если вы допустили ошибку, вы сможете «отменить» изменения.

Выведите информацию о разделах с помощью fdisk.

sudo fdisk -l

ЗАПИШИТЕ ЭТУ ИНФОРМАЦИЮ (или распечатайте).

Перепишите таблицу разделов. Для этого используйте fdisk, чтобы УДАЛЯТЬ разделы и СОЗДАВАТЬ их заново, но меньшего размера.

sudo fdisk /dev/sda

Это был мой сеанс fdisk:

The number of cylinders for this disk is set to 1305.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
(e.g., DOS FDISK, OS/2 FDISK)

Command (m for help): d
Partition number (1-5): 5

Command (m for help): d
Partition number (1-5): 2

Command (m for help): n
Command action
e extended
p primary partition (1-4)
e
Partition number (1-4): 2
First cylinder (32-1305, default 32):
Using default value 32
Last cylinder or +size or +sizeM or +sizeK (32-1305, default 1305): +6000M

Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
l
First cylinder (32-761, default 32):
Using default value 32
Last cylinder or +size or +sizeM or +sizeK (32-761, default 761):
Using default value 761

Command (m for help): n
Command action
l logical (5 or over)
p primary partition (1-4)
p
Partition number (1-4): 3
First cylinder (762-1305, default 762):
Using default value 762
Last cylinder or +size or +sizeM or +sizeK (762-1305, default 1305):
Using default value 1305

Command (m for help): p

Disk /dev/sda: 10.7 GB, 10737418240 bytes
255 heads, 63 sectors/track, 1305 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk identifier: 0x000a6bf9

Device Boot Start End Blocks Id System
/dev/sda1 * 1 31 248976 83 Linux
/dev/sda2 32 761 5863725 5 Extended
/dev/sda3 762 1305 4369680 83 Linux
/dev/sda5 32 761 5863693+ 83 Linux

Command (m for help): w
The partition table has been altered!

Calling ioctl() to re-read partition table.
Syncing disks.

Отмените появившееся диалоговое окно «Аутентификация» (live CD пытается автоматически смонтировать ваш новый раздел).

Системный идентификатор раздела LVM также следует изменить на «Linux LVM»:

Command (m for help): t
Partition number (1-5): 5
Hex code (type L to list codes): 8e
Command (m for help): w

Если этого не сделать, начальный сектор логического раздела может не совпасть с тем местом, где он был раньше, и LVM станет нечитаемым!

Я НАСТОЯТЕЛЬНО РЕКОМЕНДУЮ ВАМ СНАЧАЛА ПРОЧИТАТЬ ПОЛНУЮ СТРАНИЦУ WIKI

Видеть:https://help.ubuntu.com/community/ResizeEncryptedPartitions

Как только у вас появится свободное место, вы сможете использовать его для установки Ubuntu из графического установщика.

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

Связанный контент