У меня такая настройка:
Dom0 LV
|
DomU Physical Disk
| |
XVDA1 XVDA2
(/boot) (DomU PV)
|
VolGroup00
(DomU VG)
| |
LogVol00 LogVol01
(swap) (/)
Я пытаюсь изменить размер корневой файловой системы DomU. (VolGroup00-LogVol01) Я понимаю, что теперь мне нужно изменить размер раздела XVDA2, однако, когда я пытаюсь сделать это с помощью parted на Dom0, он просто сообщает мне: «Ошибка: не удалось обнаружить файловую систему».
Итак, чтобы изменить размер корневой части VolGroup-LogVol00, процесс не должен быть таким:
# Shut down DomU
xm shutdown domU
#Resize Dom0 Logical volume
lvextend -L+2G /dev/volumes/domU-vol
# Parted
parted /dev/volumes/domU-vol
# Resize root partition
resize 2 START END
(This is where I get an error) "Error: Could not detect file system."
# add the vm volume group to Dom0 lvm
kpartx -a /dev/volumes/domU-vol
# resize the domU PV
pvresize /dev/mapper/domU-pl (as listed in pvdisplay)
# The domU volume group should automatically adjust
# resize the DomU lv
lvextend -L+2G /dev/VolGroup/LogVol00
А потом заведомо увеличить фс, удалить устройство из kpartx и т. Д.
Проблема в том, что я не знаю, как изменить размер раздела? Как мне изменить размер этого раздела, чтобы я мог запускать pvresize на DomU?
Спасибо
Вот шаги, которые я примерно выполнил, чтобы изменить размер гостя KVM, который использовал LVM внутри.
запустите fdisk внутри виртуальной машины и удалите и заново создайте раздел LVM
% fdisk /dev/vda
...
Device Boot Start End Blocks Id System
/dev/vda1 * 1 13 104391 83 Linux
/dev/vda2 14 3263 26105625 8e Linux LVM
Command (m for help): d
Partition number (1-4): 2
Command (m for help): p
Disk /dev/vda: 48.3 GB, 48318382080 bytes
255 heads, 63 sectors/track, 5874 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/vda1 * 1 13 104391 83 Linux
Command (m for help): n
Command action
e extended
p primary partition (1-4)
p
Partition number (1-4): 2
First cylinder (14-5874, default 14): 14
Last cylinder or +size or +sizeM or +sizeK (14-5874, default 5874):
Using default value 5874
Command (m for help): p
Disk /dev/vda: 48.3 GB, 48318382080 bytes
255 heads, 63 sectors/track, 5874 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/vda1 * 1 13 104391 83 Linux
/dev/vda2 14 5874 47078482+ 83 Linux
Command (m for help): t
Partition number (1-4): 2
Hex code (type L to list codes): 8e
Changed system type of partition 2 to 8e (Linux LVM)
Command (m for help): p
Disk /dev/vda: 48.3 GB, 48318382080 bytes
255 heads, 63 sectors/track, 5874 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/vda1 * 1 13 104391 83 Linux
/dev/vda2 14 5874 47078482+ 8e Linux LVM
Command (m for help): w
The partition table has been altered!
Calling ioctl() to re-read partition table.
WARNING: Re-reading the partition table failed with error 16: Device or
resource busy.
The kernel still uses the old table.
The new table will be used at the next reboot.
Syncing disks.
%
Перезагрузите виртуальную машину
Измените размер физического тома LVM
% pvdisplay
--- Physical volume ---
PV Name /dev/vda2
VG Name VolGroup00
PV Size 24.90 GB / not usable 21.59 MB
Allocatable yes (but full)
PE Size (KByte) 32768
Total PE 796
Free PE 0
...
% pvresize /dev/vda2
% pvdisplay
--- Physical volume ---
PV Name /dev/vda2
VG Name VolGroup00
PV Size 44.90 GB / not usable 22.89 MB
Allocatable yes
PE Size (KByte) 32768
Total PE 1436
Free PE 640
...
Изменить размер логического тома LVM
% lvresize /dev/VolGroup00/LogVol00 -l +640
Extending logical volume LogVol00 to 43.88 GB
Logical volume LogVol00 successfully resized
Расширьте файловую систему
% resize2fs /dev/VolGroup00/LogVol00
resize2fs 1.39 (29-May-2006)
Filesystem at /dev/VolGroup00/LogVol00 is mounted on /; on-line resizing required
Performing an on-line resize of /dev/VolGroup00/LogVol00 to 11501568 (4k) blocks.
The filesystem on /dev/VolGroup00/LogVol00 is now 11501568 blocks long.
Это мой пример, но я выполнил шаги на этом интернет сайт
Также будьте очень осторожны при изменении размера.
Кажется, что у вас возникли проблемы с разделенным шагом:
http://www.gnu.org/software/parted/manual/html_chapter/parted_7.html#SEC68
Будьте осторожны, следуя примечанию, и вы также можете использовать fdisk -l для раздела, чтобы убедиться, что это тип раздела и файловая система, которые вы ожидаете.
Другие хорошие общие ссылки, которые могут помочь вам или другим: http://linuxwave.blogspot.com/2008/08/resizing-your-xen-domu-using-lvm.html
Итак, чтобы уточнить: вам нужно изменить размер корневого LV внутри виртуальной машины, но VG заполнена, поэтому вам сначала нужно изменить размер физического раздела, на котором находится PV? Предполагая, что это верно, продолжаем ...
Я удивлен, что у parted было такое шипение над разделом dom0. С этой точки зрения, это просто используемый LVM PV. Однако меня никогда особо не впечатлял parted, и я просто придерживаюсь старого доброго fdisk.
В любом случае, у вас, вероятно, возникнут проблемы с изменением размера раздела во время использования диска, потому что повторное сканирование таблицы разделов на смонтированной файловой системе ... сложно. Лучше всего выключить виртуальную машину и выполнять все операции с dom0.
Я бы рекомендовал полностью пропускать разделы и делать все с LVM; Мне также не нравится LVM в моих виртуальных машинах, потому что у них и так достаточно низкая пропускная способность ввода-вывода. Просто подключите кучу LV из dom0 для разделов в виртуальных машинах - это также упрощает репликацию, поскольку вы обычно не хотите реплицировать своп (если вы не выполняете живую миграцию, но тогда это просто еще одно блочное устройство все равно воспроизвести).