Ubuntu: изменение размера корневого раздела LVM(2?)

Ubuntu: изменение размера корневого раздела LVM(2?)

У меня есть виртуальная машина Ubuntu, работающая в VirtualBox 2.2.4, и я создал ее на виртуальном диске объемом 8 ГБ, что слишком мало.

Итак, я пытаюсь увеличить размер диска. Пока что я сделал следующее:

  1. Создан новый виртуальный диск большего размера
  2. Добавил 2-й диск в машину
  3. Использовал CloneZilla для клонирования первого диска на второй диск
  4. Удалил первый диск
  5. Загрузился со 2-го (большего диска)

Но теперь я все еще застрял с разделом размером 8 ГБ на моем новом виртуальном диске объемом 100 ГБ.

Какой самый простой путь к разделу на 100 ГБ? :) Я так понимаю, что GPart может изменять размер разделов, но, похоже, он не поддерживает разделы LVM2, которые, похоже, есть у меня.

спасибо

  • Алекс

решение1

В общем случае, вот как изменить размер томов LVM:

Допустим, /mountpointвключено /dev/VolGroup00/mountpoint. Вы можете узнать это, проверив /etc/fstabили запустив mount -l.

Вам также может потребоваться изменить размер фактического физического тома в зависимости от вашей настройки. Используйтеpvdisplayчтобы выяснить, достаточно ли он велик, и использовать pvresize(примерно как lvresizeпоказано ниже) при необходимости.

umount /mountpoint
lvresize -L +<HOW MUCH BIGGER> /dev/VolGroup00/mountpoint
e2fsck -f /dev/VolGroup00/mountpoint
resize2fs /dev/VolGroup00/mountpoint <TOTAL SIZE>
mount /mountpoint

Это равносильно размонтированию, изменению размера базового LVM, а затем изменению размера самого раздела ext3.

Несколько вещей, на которые следует обратить внимание:

  1. Очевидно, что игра с /будет отличаться от раздела с данными. Вам может понадобиться загрузочный диск, такой какSysrescuecdвместо Doing It Live. Также см. комментарий Кристофа ниже — возможно, вы сможете сделать это без размонтирования /.
  2. lvresize имеет несколько различных опций синтаксиса, и уменьшение логического тома, вероятно, повредит наложенный раздел. Проконсультируйтесь с вашимлокальные страницы руководстваЧтобы получить больше информации.

решение2

ятолькосделал это и у меня возник тот же вопрос, что и у вас, но вместо того, чтобы создать новый LVM и добавить его в группу томов, моя ОКР-сторона хотела изменить размер моего текущего LVM и, таким образом, сохранить один раздел во имя простоты.Примечание: Я не верю, что это возможно, если свободное пространство не следует сразу за разделом, размер которого вы изменяете!

Для этого вам понадобится инструмент, который может удалять и создавать таблицы разделов. Поскольку я использую GPT, это означало, что мне нужногдиск. Вам также придется сделать это с размонтированным разделом, поэтому вы можете загрузиться с Ubuntu LiveCD и запустить это оттуда.

Следующеешаги выделены жирным шрифтомдля примера LVM/dev/mms/кореньна устройстве/dev/sda, где я хотел расширить раздел/dev/sda3чтобы занять мое новообретенное свободное пространство.

ПРИМЕЧАНИЕ:Они потенциально очень разрушительны, поэтому убедитесь, что ваши данные верны!

  1. gdisk /dev/sda(убедитесь, что вы ввели правильное устройство!) Это перенесет вас в gdisk, где вы сможете выполнить следующие шаги по порядку
    1. п -- распечатывает текущую информацию о разделах (для справки)
    2. г -- для удаления таблицы разделов
    3. 3 -- номер устройства, представляющий таблицу разделов, которую вы хотите удалить (важно!)
    4. н -- для создания таблицы разделов
    5. 3-- номер устройства, представляющий таблицу разделов, которую вы хотите создать (вероятно, вы захотите использовать ту же, которую вы удалили на шаге 3)
    6. п -- выводит текущую информацию о разделах (опять же для справки, сравните ее с тем, с чего вы начинали!)
    7. ж -- сохраняет ваши изменения на диск (вы уверены?!)
  2. pvresize /dev/sda3-- перед этим вам, возможно, придется перезагрузиться, чтобы ваша ОС распознала новый размер раздела
  3. pvdisplay-- распечатывает вашу текущую информацию (она должна показывать, что теперь она использует все пространство!)
  4. lvresize -l +100%СВОБОДНО /dev/mms/root-- изменяет размер моего LVM так, чтобы он занимал 100% моего нового пространства
  5. e2fsck -f /dev/mms/root-- выполняет проверку целостности
  6. resize2fs -p /dev/mms/root-- изменяет размер файловой системы, чтобы занять весь LVM

После выполнения вышеперечисленных действий и перезапуска ОС с измененным размером все заработало так, как и ожидалось, и в моем распоряжении оказалось все дополнительное свободное пространство!

Дополнительные ссылки, которые я использовал, чтобы разобраться во всем этом:

http://www.jethrocarr.com/2012/08/10/gdisk-oh-glorious-gdisk/ http://people.virginia.edu/~ll2bf/docs/quickref/lvm.html

решение3

Я нашел один (и только один) способ сделать это, хотя перепробовал множество.

Сначала клонируйте гостевую виртуальную машину Ubuntu в VirtualBox, щелкнув ее правой кнопкой мыши и выбрав «клонировать». После завершения клонирования расширьте клонированный vdi с помощью (в хостовой ОС)

VBoxManage modifyhd "имя_клонированного_vdi" --resize "размер_нового_корневого_раздела_в_МБ"

Затем - следуйте инструкциям в этом посте до последней буквы (он называет VMware платформой, но не обращайте на это внимания)

http://blog.campodoro.org/?p=36

Это создаст еще один lvm, размер которого будет точно равен добавленному вами дополнительному пространству, и прикрепит его к концу существующего.

Убедившись, что все в порядке, вы можете удалить исходную виртуальную машину и продвинуть свой клон!

Не нужно возиться с fdisk и беспокоиться о том, что можно удалить или испортить не тот раздел.

Я, наверное, сломал около 4 клонированных ОС, пока не нашел это решение!

решение4

Обратите внимание, что вам на самом деле не нужно использовать инструмент клонирования, такой как CloneZilla, вы можете поместить раздел на новый виртуальный диск (необязательно), а затем инициализировать его (или сам виртуальный диск) в LVM с помощью команды pvcreate. Затем используйте , vgextendчтобы добавить его в группу томов, поддерживающую ваш логический том, затем используйте , vgreduceчтобы удалить исходный виртуальный диск из группы томов. Это выполнит миграцию, и ее можно выполнить в режиме реального времени, пока логический том используется, в этом и заключается прелесть виртуализации хранилища. После завершения вам просто нужно расширить логический том, как указано выше, что также можно выполнить в режиме реального времени с помощью более современных файловых систем, чем ext3.

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