Мне пришлось предоставить дополнительное пространство на диске VirtualBox.
Я изменил размер моего виртуального диска контейнера с помощью:
VBoxManage modifyhd --resize //example
VBoxManage modifyhd example.vdi --resize 10000
ВНИМАНИЕ, вы не можете уменьшить размер!
Я запускаю df -h на моей виртуальной машине ubuntu 16.04 - без изменений.
/dev/mapper/example-vg--vg-root 5G 4.9G 50M 100% /
На данный момент я ничего не знал о группах томов, но после некоторого рытья я обнаружил, что я теперь есть 5G свободного места, как я могу получить это в моей группе томов и оттуда до моего логического тома?
Итак, как мне получить это свободное пространство для моего логического тома (LV) в моем группа томов (VG)?
Первое, что вам нужно сделать, это убедиться, что у вас еще нет необходимого пространства, зная, сколько свободного места у вашей группы томов.
Для всех следующих команд обычно требуется sudo.
Вы можете увидеть атрибуты групп томов с помощью vgdisplay
vgdisplay
Вы должны увидеть что-то вроде этого:
--- Volume group ---
VG Name example-vg
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 6
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 15.52 GiB
PE Size 4.00 MiB
Total PE 3972
Alloc PE / Size 3963 / 15.48 GiB
Free PE / Size 9 / 36.00 MiB
VG UUID JZCVgU-QvdG-2dMN-ZLrO-YXHp-83bq-zItAUD
Если у вас есть свободные физические экстенты ( vgdisplay ) вы можете просто добавить их (если размер свободного физического экстента покрывает ваши потребности, перейдите к добавлению в логический том Ctrl + F ADDING TO LOGICAL VOLUME).
Если вы не у вас достаточно свободного места в вашей группе томов, вам нужно добавить его из вашего свободного выделенного пространства, но сначала вам нужно разбить его.
Вы можете сделать это с помощью группы volume [ ! d10] fdisk /dev/sda
Сначала перечислим существующую таблицу (вам нужно знать, с чего начать раздел)
В fdisk (Command (m for help):)
p
Будет отображаться примерно так:
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 999423 997376 487M 83 Linux
/dev/sda2 1001470 32000000 30998531 14.8G 5 Extended
/dev/sda3 32002048 48779263 16777216 8G 8e Linux LVM
/dev/sda5 1001472 32000000 30998529 14.8G 8e Linux LVM
Копировать наивысшую Для всех следующих команд обычно требуется sudo. . В противном случае вы можете создать раздел между разделами, который ограничивает размер раздела пространством между разделами. (например, 1 kb)
Продолжайте, нажимая n (создайте новый раздел)
n
Выберите номер по умолчанию (это не имеет большого значения, но запишите его или вспомните это)
Вставить самый высокий конец для первого сектора и завершить как + размер {K, M, G, T, P} (или, как вам нравится)
Это создаст
Теперь вы должны перезагрузить (sudo reboot)
После перезагрузки создайте физический том pvcreate /dev/sda##THE NUMBER YOU CHOSE##
Перезагрузите снова, если необходимо sudo reboot [ ! d23]
Если вы не помните номер, который вы можете просто fdisk /dev/sda ... p, чтобы перечислить их.
Теперь расширьте группу громкости vgextend example-vg /dev/sda##NUMBER##
sudo parted ##example-vg-path ( from vgdisplay) ##
print list ( find your /dev/mapper/example-vg--vg-root )
resizepart NUMBER
Введите свой размер
quit
sudo resize2fs /dev/mapper/example--vg-root
Запустите df -h, чтобы проверить.
Окончание получилось немного неуклюжим, но ох хорошо спешит: )
Вы занимаетесь дисковым пространством на трех (и подразумеваемом четвертом) уровне абстракции:
Место на диске в файле .vdi - вы изменили размер этого файла с помощью VBoxManage, но пространство еще не появилось на следующих двух уровнях абстракции. По существу, то, что вы сделали, это как установить больший физический диск на реальном компьютере и скопировать содержимое исходного диска с помощью dd. Теперь у вас больше (виртуального) дискового пространства, но вы не можете использовать его, потому что структуры данных, используемые для доступа к диску, еще не обновлены. Разделы (например, физические тома или PV) на виртуальном диске. Вы должны либо изменить размер существующего PV, либо создать новый, либо добавить его в свою группу томов (VG). См. Этот вопрос для указателей на эту тему. Логические тома (файловые системы). После того, как вы расширили PV или создали новый и добавили его в VG, вы должны развернуть логический том (LV) и файловую систему, которые он содержит. В вопросе, указанном в предыдущем пункте, описывается, как это сделать. Дисковое пространство в хост-системе - это четвертый / подразумеваемый уровень абстракции и фактически «выше» предыдущих. Хотя команда VBoxManage, вероятно, привела к незначительному изменению на использование дискового пространства вашей хост-системы, как только вы начнете использовать это пространство в виртуализованной среде, использование физического дискового пространства будет увеличиваться. Предполагая, что у вас достаточно свободного места на диске, это не должно быть проблемой, и это не влияет на то, что вам нужно делать; Я упоминаю это только для полноты.Ответ Олави Сау кажется правильным, но представлен в обратном порядке того, что вы на самом деле должны делать, поэтому это может сбивать с толку. (То есть, ответ описывает операции файловой системы / LV перед операциями раздела / PV, но сначала вам нужно выполнить операции раздела / PV.) Таким образом, я думал, что представление ответа «с высоты птичьего полета» станет полезным дополнением.
Первое, что вам нужно сделать, это убедиться, что у вас еще нет необходимого пространства, зная, сколько свободного места у вашей группы томов.
Для всех следующих команд обычно требуется sudo.
Вы можете увидеть атрибуты групп томов с помощью vgdisplay
vgdisplay
Вы должны увидеть что-то вроде этого:
--- Volume group ---
VG Name example-vg
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 6
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 2
Open LV 2
Max PV 0
Cur PV 2
Act PV 2
VG Size 15.52 GiB
PE Size 4.00 MiB
Total PE 3972
Alloc PE / Size 3963 / 15.48 GiB
Free PE / Size 9 / 36.00 MiB
VG UUID JZCVgU-QvdG-2dMN-ZLrO-YXHp-83bq-zItAUD
Если у вас есть свободные физические экстенты ( vgdisplay ) вы можете просто добавить их (если размер свободного физического экстента покрывает ваши потребности, перейдите к добавлению в логический том Ctrl + F ADDING TO LOGICAL VOLUME).
Если вы не у вас достаточно свободного места в вашей группе томов, вам нужно добавить его из вашего свободного выделенного пространства, но сначала вам нужно разбить его.
Вы можете сделать это с помощью группы volume [ ! d10] fdisk /dev/sda
Сначала перечислим существующую таблицу (вам нужно знать, с чего начать раздел)
В fdisk (Command (m for help):)
p
Будет отображаться примерно так:
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 999423 997376 487M 83 Linux
/dev/sda2 1001470 32000000 30998531 14.8G 5 Extended
/dev/sda3 32002048 48779263 16777216 8G 8e Linux LVM
/dev/sda5 1001472 32000000 30998529 14.8G 8e Linux LVM
Копировать наивысшую Для всех следующих команд обычно требуется sudo. . В противном случае вы можете создать раздел между разделами, который ограничивает размер раздела пространством между разделами. (например, 1 kb)
Продолжайте, нажимая n (создайте новый раздел)
n
Выберите номер по умолчанию (это не имеет большого значения, но запишите его или вспомните это)
Вставить самый высокий конец для первого сектора и завершить как + размер {K, M, G, T, P} (или, как вам нравится)
Это создаст
Теперь вы должны перезагрузить (sudo reboot)
После перезагрузки создайте физический том pvcreate /dev/sda##THE NUMBER YOU CHOSE##
Перезагрузите снова, если необходимо sudo reboot [ ! d23]
Если вы не помните номер, который вы можете просто fdisk /dev/sda ... p, чтобы перечислить их.
Теперь расширьте группу громкости vgextend example-vg /dev/sda##NUMBER##
sudo parted ##example-vg-path ( from vgdisplay) ##
print list ( find your /dev/mapper/example-vg--vg-root )
resizepart NUMBER
Введите свой размер
quit
sudo resize2fs /dev/mapper/example--vg-root
Запустите df -h, чтобы проверить.
Окончание получилось немного неуклюжим, но ох хорошо спешит: )
Вы занимаетесь дисковым пространством на трех (и подразумеваемом четвертом) уровне абстракции:
Место на диске в файле .vdi - вы изменили размер этого файла с помощью VBoxManage, но пространство еще не появилось на следующих двух уровнях абстракции. По существу, то, что вы сделали, это как установить больший физический диск на реальном компьютере и скопировать содержимое исходного диска с помощью dd. Теперь у вас больше (виртуального) дискового пространства, но вы не можете использовать его, потому что структуры данных, используемые для доступа к диску, еще не обновлены. Разделы (например, физические тома или PV) на виртуальном диске. Вы должны либо изменить размер существующего PV, либо создать новый, либо добавить его в свою группу томов (VG). См. Этот вопрос для указателей на эту тему. Логические тома (файловые системы). После того, как вы расширили PV или создали новый и добавили его в VG, вы должны развернуть логический том (LV) и файловую систему, которые он содержит. В вопросе, указанном в предыдущем пункте, описывается, как это сделать. Дисковое пространство в хост-системе - это четвертый / подразумеваемый уровень абстракции и фактически «выше» предыдущих. Хотя команда VBoxManage, вероятно, привела к незначительному изменению на использование дискового пространства вашей хост-системы, как только вы начнете использовать это пространство в виртуализованной среде, использование физического дискового пространства будет увеличиваться. Предполагая, что у вас достаточно свободного места на диске, это не должно быть проблемой, и это не влияет на то, что вам нужно делать; Я упоминаю это только для полноты.Ответ Олави Сау кажется правильным, но представлен в обратном порядке того, что вы на самом деле должны делать, поэтому это может сбивать с толку. (То есть, ответ описывает операции файловой системы / LV перед операциями раздела / PV, но сначала вам нужно выполнить операции раздела / PV.) Таким образом, я думал, что представление ответа «с высоты птичьего полета» станет полезным дополнением.