Я работаю под Linux с внутренним запоминающим устройством GPT объемом 500 ГБ, разделенным, поэтому /boot , / (root), /var и /home находятся в отдельных томах ext4 . По историческим причинам (раньше это была двойная система монтирования Linux-Linux), в устройстве теперь много места между подключенными томами, которые используются в настоящее время. Это пространство выделено (ранее) и все еще содержит раздел /boot принадлежащий второй, теперь заброшенной ОС Lx. Меню двойной загрузки по-прежнему показывает выбор между двумя системами, но одна из них в значительной степени отделена от своего раздела /boot . Я считаю, что пространство потрачено впустую и хочу вернуть его.

При использовании disks в Linux текущее разбиение выглядит следующим образом: Вот(То, что установлено, показано черным треугольником.) В дополнение к уже упомянутым томам и слева от них на образе disks вы можете увидеть раздел FAT EFI (крайний левый, как и следовало ожидать), пространство подкачки и много выделенного, но не смонтированного пространства.

Все загружается и работает нормально, и у меня есть резервная копия как моих данных, так и полной разметки разделов, последняя получена с помощью # sfdisk -d /dev/nveme0n1 > partition-layout.dump .

Я хотел бы переместить оба смонтированных /boot и / (root) слева от пространства подкачки и перераспределить никогда не смонтированное пространство для var и /home ... Я не планирую касаться ни GPT-заголовков устройства, ни тома EFI FAT.

Ранее я использовал GParted на томах MBR с устаревшей загрузкой BIOS, но никогда в средах EFI/GPT. Может ли перемещение /boot скомпрометировать процедуру загрузки и сделать мой том не загрузочным? Если так, что я должен быть готов сделать, перестроить загрузчик, переиндексировать разделы, ... еще, ничего из вышеперечисленного?

В частности, если я использую GParted, будет ли он отслеживать новое местоположение и обновлять индекс раздела, чтобы загрузчик не задыхался после перераспределения?

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

Приветствия.

1 ответ1

0

[TLDR] (короткая версия)
Конкретная конфигурация разделов, показанная в OP, делает невозможным отсутствие необходимости перестраивать / восстанавливать загрузчик после перемещения заголовка разделов /boot .

[Полная история]
Что я сделал:

  • загрузиться на live-Linux с загрузочного USB-накопителя в режиме UEFI. (Я решил использовать Ubuntu 18.04).
    Не забывайте, что Ubuntu и современная дискретная графика NVIDIA вообще не уживаются. Если у вас установлена новейшая видеокарта NVIDIA (последняя, скажем, примерно с 2017 года), вы сэкономите время, если фактически загрузите UEFI с работающей ОС без графического интерфейса. Это означает выполнение перераспределения на cli и, возможно, последующее восстановление загрузчика тоже.

  • с GPartEd вернуть раздел 2 и MOVE раздел 3 (своп) слева, поэтому он становится смежным с разделом 1. Простое "перемещение" не меняет UUID раздела. Если вы удалите его и создадите заново в другом месте (ваш вызов целиком), вам придется позже добавить vi в /etc/fstab чтобы изменить новый UUID соответствующей записи свопа.

  • переместить /boot (раздел 5) как можно дальше влево. Перемещение головной части (то есть левого предела графического представления OP) этого раздела требует, чтобы вы позже восстановили загрузчик (GRUB2 в моем случае). В противном случае вы не сможете загрузиться. Если в отличие от данного случая /boot и / (root) находились в одном разделе, перемещение заголовка / (root) также потребовало бы восстановления загрузчика GRUB (поскольку это означало бы переиндексирование начала /boot /). EFI информация находится в корневом разделе).
  • переместить / (root), /var и /home по своей прихоти.

Вышеизложенное составляет полный ответ на мой оригинальный вопрос.


Восстановление загрузчика здесь выходит за рамки, но хорошо документировано, теперь даже для UEFI. Посмотрите это и это для подробной помощи. Ваш пробег может варьироваться в зависимости от вашего дистрибутива, но мой совет: используйте как можно больше общих инструкций cli. Они лучше всего документированы, как, например, в случае с chroot , тогда как обертки (опять же, как в обертках chroot ) могут и не быть. Опять ваш звонок.

HTH любой с сомнениями, похожими на те, которые у меня были.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .