Переместите раздел LUKS влево и измените его размер.

3

У меня есть зашифрованный раздел LUKS, который НЕ входит в менеджер томов LVM. Он находится на конце жесткого диска, и его размер составляет 250 ГБ, но я хочу добавить к нему еще 50 ГБ.

Обычно я использую GParted для таких операций, но это не позволяет мне что-либо делать с разделами LUKS, даже не перемещая

Как я могу сделать это без потери моих данных? (У меня нет другого места, чтобы поддержать это)

Это моя (GUID) таблица разделов:

GPT fdisk (gdisk) version 0.8.8

Partition table scan:
  MBR: protective
  BSD: not present
  APM: not present
  GPT: present

Found valid GPT with protective MBR; using GPT.
Disk /dev/sda: 976773168 sectors, 465.8 GiB
Logical sector size: 512 bytes
Disk identifier (GUID): D630E573-66C0-4902-A4A2-A9D56AE54544
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 976773134
Partitions will be aligned on 2048-sector boundaries
Total free space is 262922206 sectors (125.4 GiB)

Number  Start (sector)    End (sector)  Size       Code  Name
   1            2048          411647   200.0 MiB   EF00  
   2          411648        63326207   30.0 GiB    8300  Linux filesystem
   3       189155328       273041407   40.0 GiB    AF00  
   4       273041408       304498687   15.0 GiB    8300  
   5       336732160       337141759   200.0 MiB   0700  
   6       337141760       347627519   5.0 GiB     8200  
   8       452485120       976773134   250.0 GiB   8300  Linux filesystem

Вот как это выглядит в GParted:

enter image description here

Как видите, я хочу добавить эти 50 ГБ между sda6 и sda8 в sda8.

Можете ли вы помочь мне переместить / dev / sda8 назад, чтобы я мог затем расширить зашифрованный том и файловую систему внутри него?

Depau
источник
Вам это удалось? Я хочу сделать то же самое. Я предполагаю, что мне нужно следовать процессу, аналогичному расширению. Хотя может показаться, что проще создать новый раздел и скопировать данные.
Jamie Kitson

Ответы:

2

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

Я смог сделать это с KDE Partition Manager 3.3.1, используя KDE Neon загрузочный USB. Я хотел бы предупредить, однако, что я столкнулся с ошибкой в KDE Partition Manager это было представлено где-то до версии 2.2.0, Моя установка представляла собой зашифрованный раздел LUKS в передней части расширенного (логического) раздела с 40 ГБ свободного места на жестком диске перед расширенным разделом. Мне нужно было переместить расширенный раздел влево, а затем переместить LUKS раздел слева от расширенного раздела, затем расшифруйте LUKS раздел, разверните LUKS разделить право на добавление новых данных и, наконец, зашифровать LUKS раздел снова. Ранняя версия KDE Partition Manager ( 1.x, который я получил с apt-get от Ubuntu 16.04 LTS ) смог расширить раздел слева, но мне было неудобно принимать это KDE Partition Manager не было поддержки LUKS в частности, я не был полностью уверен, что GRUB сможет найти раздел и разблокировать его после перезагрузки. Поэтому я попытался скомпилировать KDE Partition Manager 2.2.0 на Ubuntu 16.04 LTS загрузочный USB, и приложению не удалось физически перетащить расширенный раздел влево так же, как в этой версии 1.x сделал. Поэтому я загрузил Ubuntu 18.04 LTS ежедневная сборка на загрузочном USB, затем скомпилированная KDE Partition Manager 3.3.1 на этом устройстве (вместе с KDE Core 3.3.0 ). Та же проблема. Но в обоих случаях были некоторые проблемы с компиляцией, которые мне приходилось обходить путем непосредственного редактирования файлов Make, и причина этого заключалась в том, что я компилировал в Ubuntu вместо разновидности Ubuntu с собственными библиотеками KDE. Итак, я установил Neon на загрузочный USB, прямо скачал и установил KDE Partition Manager 3.3.1 через загрузчик программного обеспечения, и снова столкнулся с той же ошибкой - я не смог переместить свой расширенный том влево. Сейчас gparted может сделать это просто отлично, но это не имеет LUKS служба поддержки. Поэтому я сделал прыжок веры и сделал следующее, что сработало:

  1. ЗАБРОНИРОВАЛ ВСЕ ЖЕСТКИЙ ДИСК.
  2. sudo apt-get install gparted на KDE Neon,
  3. я использовал gparted для перемещения расширенного раздела осталось 40 ГБ и сохранены изменения. (Я думаю, что сначала мне пришлось отключить пространство подкачки.) Это создало 40 ГБ свободного места в расширенном разделе слева от моего LUKS объем. Я тогда вышел gparted, Мое основное беспокойство по этому поводу было то, что с gparted не имеет поддержки для LUKS, я беспокоился, что это может сдвинуть фронт LUKS объем по причинам выравнивания и фактически делает его недоступным. Так что я тщательно отметил точный сектор диска, где LUKS раздел начался до внесения каких-либо изменений, и затем не нужно было использовать эти заметки.
  4. В KDE Partition Manager 3.3.1Я переместил (в зашифрованном виде) LUKS громкость слева. Просто щелкните правой кнопкой мыши на LUKS громкость, выберите Resize/Move, и я думаю, что вы просто перетащите значок в графическом интерфейсе влево. Вы знаете, что будете делать это правильно, потому что LUKS раздел красный и до и после его перемещения, что указывает на то, что он заблокирован все время (и поэтому таблица разделов, по сути, записывает новое местоположение места на диске, где LUKS будет выполнять шифрование при входе пользователя в систему). Затем я нажал Apply changes и ждал.
  5. В KDE Partition Manager 3.3.1Я щелкнул правой кнопкой мыши на LUKS объем и выбран Unencrypt (возможно это было open ) и набрал мой пароль. Затем я щелкнул правой кнопкой мыши на том же разделе, и нажал Resize/Move..., Затем я перетащил правый край раздела вправо, чтобы охватить 40 ГБ свободного места. Я тогда нажал Apply changes снова.
  6. Я щелкнул правой кнопкой мыши на разблокирован LUKS раздел и снова зашифровал его. Иконка сменила светло-голубую на красную.
  7. Я снова включил пространство подкачки (необходимо, потому что пространство подкачки Linux находится внутри моего расширенного раздела). Потом я вышел KDE Partition Manager, выключение и перезагрузка с использованием основного жесткого диска, который я только что разделил Я смог расшифровать диск и войти без проблем. Уф!

Большое спасибо Андрюсу Стиконасу за поддержку этого действительно полезного приложения. В последний раз, когда я перемещал раздел LUKS, он использовал эти шаги и это был кошмар.

Вот вывод из KDE Partition Manager который печатает на консоль, когда вы запускаете его с помощью sudo partitionmanager от CLI:

QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
Loaded backend plugin:  "pmlibpartedbackendplugin"
"Using backend plugin: pmlibpartedbackendplugin (1)"
"Scanning devices..."
"Device found: ATA ST500LM021-1KJ15"
blkid: unknown file system type  ""  on  "/dev/sda4"
"Partition ‘/dev/sda4’ is not properly aligned (last sector: 976773167,    modulo: 48)."
"Device found:  USB DISK 2.0"
getting smart status failed for  "/dev/sdb" :  Operation not supported
"Partition ‘/dev/sdb2’ is not properly aligned (first sector: 404, modulo: 404)."
"Partition ‘/dev/sdb2’ is not properly aligned (last sector: 5139, modulo: 1044)."
"Scan finished."
"Add operation: Move partition ‘/dev/sda8’ to the left by 40.50 GiB"
"Applying operations..."
"Using backend plugin: pmlibpartedbackendplugin (1)"
"Scanning devices..."
"Device found: ATA ST500LM021-1KJ15"
"Partition ‘/dev/sda4’ is not properly aligned (last sector: 976773167, modulo: 48)."
"Device found:  USB DISK 2.0"
getting smart status failed for  "/dev/sdb" :  Operation not supported
"Partition ‘/dev/sdb2’ is not properly aligned (first sector: 404, modulo: 404)."
"Partition ‘/dev/sdb2’ is not properly aligned (last sector: 5139, modulo: 1044)."
"Scan finished."
"Add operation: Grow partition ‘/dev/sda8’ from 101.77 GiB to 142.26 GiB"
"Applying operations..."
"Using backend plugin: pmlibpartedbackendplugin (1)"
"Scanning devices..."
"Device found: ATA ST500LM021-1KJ15"
"Partition ‘/dev/sda4’ is not properly aligned (last sector: 976773167, modulo: 48)."
"Device found:  USB DISK 2.0"
getting smart status failed for  "/dev/sdb" :  Operation not supported
"Partition ‘/dev/sdb2’ is not properly aligned (first sector: 404, modulo: 404)."
"Partition ‘/dev/sdb2’ is not properly aligned (last sector: 5139, modulo: 1044)."
"Scan finished."
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/libexec/kf5/klauncher'
kdeinit5: Launched KLauncher, pid = 28349, result = 0
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
Connecting to deprecated signal      QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
kdeinit5: opened connection to :0
kdeinit5: Got EXEC_NEW '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so' from launcher.
kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
kdeinit5: Got EXEC_NEW '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so' from launcher.
kdeinit5: preparing to launch '/usr/lib/x86_64-linux-gnu/qt5/plugins/kf5/kio/file.so'
QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-root'
kdeinit5: PID 28354 terminated.
kdeinit5: PID 28353 terminated.

Посмотрите на эту строку, которая гласит blkid: unknown file system type "" on "/dev/sda4"? /dev/sda4 мой дополнительный раздел blkid Процесс может быть причиной ошибки. Но я действительно не знаю. В любом случае, надеюсь, что это поможет вам.

guest4842
источник
1

Используйте KDE Partition Manager 2.2.0 или новее. Он поддерживает перемещение, создание и даже изменение размера разделов LUKS.

Редактировать: используя KPM: В основном GUI говорит само за себя, он предоставляет вам карту разделов, похожую на GParted (см. Изображение в оригинальном вопросе). Затем вы просто нажимаете кнопку перемещения, чтобы переместить раздел LUKS. Чтобы изменить размер раздела luks, сначала необходимо разблокировать его, поскольку KDE Partition Manager должен изменить размер внутренней файловой системы, что невозможно, пока крипта LUKS заблокирована. Так что вам нужно сделать это в два шага, сначала переместить заблокированный раздел luks, а затем разблокировать / изменить размер.

Andrius Štikonas
источник
1
Не могли бы вы объяснить, как использовать программное обеспечение для выполнения этой задачи?
Ben N