Виртуальный сервер на Ubuntu Server 14.04 LTS поднятый на VMware ESXi 5.5. Жесткий диск всего 10 Гб, LVM, все настройки по умолчанию.
Требуется: расширить диск до требуемого размера без создания дополнительных дисков. Все найденные решения начинаются с совета «добавляем новый диск». Это, конечно, здорово, но не то что нужно.
Как обычно - заходим в настройки виртуальной машины и увеличиваем диск.
Чтобы CentOS увидел новый диск надо дать команду
# echo 1 > /sys/block/sda/device/rescan
Смотрим разделы и тип FS:
# lsblk -a -o +FSTYPE NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT FSTYPE sda 8:0 0 200G 0 disk ├─sda1 8:1 0 512M 0 part /boot ext4 └─sda2 8:2 0 159.5G 0 part LVM2_member ├─vg_os-lv_root 253:0 0 157.5G 0 lvm / ext4 └─vg_os-lv_swap 253:1 0 2G 0 lvm [SWAP] swap sr0 11:0 1 1024M 0 rom
Чтобы Red Hat Enterprise Linux увидел новый диск надо дать команду
# echo "- - -" > /sys/class/scsi_host/host#/scan
Все действия выполняем с правами root
До начала работы у меня есть три раздела:
# fdisk -l Device Boot Start End Blocks Id System /dev/sda1 * 2048 499711 248832 83 Linux /dev/sda2 501758 20969471 10233857 5 Extended /dev/sda5 501760 20969471 10233856 8e Linux LVM
А места всего 10 ГБ, из них под корневой раздел отведено 8.5 Гб, а свободно после установки системы всего 7.1 Гб:
# df -h | grep G /dev/mapper/store00--vg-root 8.5G 1.1G 7.1G 13% /
Добавляем новый раздел:
# fdisk /dev/sda n (новый раздел) p (раздел будет primary) 3 (номер раздела 3) 20971519 (номер первого сектора, высчитывается как последний сектор 20969471 плюс 2048) <Enter> (автоматически подставляется последний сектор) t (изменяем тип вновь созданного раздела) 3 (номер нашего нового раздела) 8e (тип раздела Linux LVM) w (сохранить изменения в таблице разделов и закрыть fdisk)
Запускаем partprobe (kpartx) или перезагружаем сервер (обязательно!)
Для начала инициализируем раздел в качестве физического тома в LVM:
# pvcreate /dev/sda3
и добавляем его в группу store00-vg:
# vgextend store00-vg /dev/sda3
Теперь расширяем логический том на все доступное пространство:
# lvextend -l +100%FREE /dev/mapper/store00--vg-root
И осталось только увеличить «на лету» файловую систему (внимание, далеко не каждая ФС умеет это делать!):
# resize2fs /dev/mapper/store00--vg-root
Готово, проверяем что получилось:
# df -h | grep G /dev/mapper/store00--vg-root 48G 1.1G 45G 13% /
Все, раздел увеличен.
Виртуальный сервер на CentOS 7. LVM собран из 3-х дисков sda, sdb, sdc. Файловая система: XFS. Задача: увеличить место путем расширения диска sdc.
# echo 1 > /sys/block/sda/device/rescan
# pvdisplay
не должен показывать что есть свободное место (ноли в «Free PE / Size»)
# parted /dev/sdc unit MB print free
# parted /dev/sdс resizepart 2 100%
с правильным номером раздела (в примере это 2)
# pvresize /dev/sdc2
# pvdisplay
(должно появиться место в «Free PE / Size»)
# lvextend -l +100%FREE /dev/os/root
# xfs_growfs /
или в старых версиях:
xfs_growfs /dev/mapper/os_vg_root
# resize2fs /dev/mapper/store00--vg-root
# df -h
Начальные условия: виртуалка с Ubuntu 18.04, LVM нет, файловая система ext4
df -h
echo 1 > /sys/class/block/sda/device/rescan
lsblk
growpart /dev/sda 2
resize2fs /dev/sda2
df -h
Свежеустановленный сервер на Ubuntu. LVM собран автоматически инсталлятором. Задействован не весь объем диска. Задача: увеличить место путем расширения диска sdc.
df -h
pvs && vgs && lvs
# lvextend -l +100%FREE /dev/mapper/ubuntu--vg-ubuntu--lv
resize2fs /dev/mapper/ubuntu--vg-ubuntu--lv
df -h