Вопрос или проблема
Я прочитал множество потоков о этой проблеме, но ничего, кажется, не работает для меня.
Я пытаюсь расширить объем LVM виртуальной машины, расположенной на нашем vSphere. Эта ВМ работает под управлением Debian 9. Я уже делал то же самое на CentOS7 без каких-либо проблем. Итак, вот я здесь.
На vSphere виртуальная машина имеет 100 ГБ хранилища. И мы хотим расширить текущее хранилище, чтобы заполнить это пространство.
root@build:/home/robot# df -h
Filesystem Size Used Avail Use% Mounted on
udev 3.9G 0 3.9G 0% /dev
tmpfs 799M 8.8M 791M 2% /run
/dev/mapper/build--vg-root 51G 45G 3.7G 93% /
tmpfs 4.0G 0 4.0G 0% /dev/shm
tmpfs 5.0M 0 5.0M 0% /run/lock
tmpfs 4.0G 0 4.0G 0% /sys/fs/cgroup
/dev/sda1 236M 37M 188M 17% /boot
tmpfs 799M 0 799M 0% /run/user/1000
tmpfs 799M 0 799M 0% /run/user/1001
Вы можете видеть, что хранилище build--vg-root
почти заполнено.
Я уже создал физический раздел /dev/sda3
для размещения расширенного хранилища…
root@build:/home/robot# fdisk -l
Disk /dev/sda: 100 GiB, 107374182400 bytes, 209715200 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x0aed3b2c
Device Boot Start End Sectors Size Id Type
/dev/sda1 * 2048 499711 497664 243M 83 Linux
/dev/sda2 501758 125827071 125325314 59.8G 5 Extended
/dev/sda3 499712 501757 2046 1023K 8e Linux LVM
/dev/sda5 501760 125827071 125325312 59.8G 8e Linux LVM
…но когда я запускаю pvcreate
, я получаю ошибку…классика:
root@build:/home/robot# pvcreate /dev/sda3
Device /dev/sda3 not found (or ignored by filtering).
Нет фильтра в файле /etc/lvm/lvm.conf
, который является стандартным. Я несколько раз перезагружал ВМ, пробовал:
root@build:/home/robot# partprobe -s
/dev/sda: msdos partitions 1 3 2 <5>
/dev/mapper/build--vg-root: loop partitions 1
/dev/mapper/build--vg-swap_1: loop partitions 1
…но также:
root@build:/home/robot# cat /proc/partitions
major minor #blocks name
8 0 104857600 sda
8 1 248832 sda1
8 3 1023 sda3
8 5 62662656 sda5
11 0 1048575 sr0
254 0 54272000 dm-0
254 1 8388608 dm-1
Безуспешно…или навыков не хватает. Любая помощь будет отличной. Спасибо.
Раздел, который вы создали, имеет размер всего 1 МиБ. Это слишком мало для использования в качестве физического тома LVM. Физические фрагменты LVM по умолчанию составляют 4 МиБ.
.
Ответ или решение
Конечно, давайте разберемся с вашей проблемой. Ошибка "pvcreate: device /dev/sda3 not found (or ignored by filtering)" может быть вызвана различными причинами. Рассмотрим теорию, затем пример решения и его применение.
Теория
Ошибка, с которой вы столкнулись, чаще всего обусловлена несколькими факторами. Один из них — это проблемы с распознаванием раздела диска операционной системой. LVM (Logical Volume Manager) использует физические тома (Physical Volumes), которые должны быть достаточно большими для использования. В вашем случае, /dev/sda3 слишком мал. У вас созданы «Extended» и «Logical» разделы, границы которых могли быть неучтены при создании нового раздела. Также стоит проверить настройки фильтрации в LVM, которые могут ограничивать доступ к разделам на основе их размеров или других параметров.
Пример
На практике, при создании нового физического тома командой pvcreate
, необходимо убедиться, что раздел имеет правильный тип и размер. Из приведенных данных видно, что /dev/sda3 практически равен 1 MiB, что меньше, чем стандартный размер физического экстента (Physical Extent) в LVM, обычно составляющий 4 MiB. Это значит, что пространство недостаточно для создания LVM и потребуется изменить размер раздела.
Применение
-
Измените структуру разделов: Раздел /dev/sda3 действительно слишком мал для того, чтобы его можно было использовать в качестве физического тома LVM. Необходимо удалить текущий малый раздел и создать новый с достаточным пространством.
fdisk /dev/sda
- Удалите существующий /dev/sda3, используя команду
d
в fdisk. - Проверьте оставшееся свободное пространство после /dev/sda5 и создайте новый больший раздел /dev/sda3, используя команду
n
. - Убедитесь, что указан тип раздела как
8e
для Linux LVM с помощью командыt
. - Примените изменения, записав их командой
w
.
- Удалите существующий /dev/sda3, используя команду
-
Обновите таблицу разделов:
После изменения структуры разделов обязательно обновите таблицу с помощью:
partprobe
Это сообщение позволит ядру обновить информацию о разделах без перезагрузки системы.
-
Создайте физический том LVM:
После обновления таблицы разделов выполните команду:
pvcreate /dev/sda3
Эта команда должна успешно завершиться без ошибок, если размер и настройки раздела корректны.
-
Расширьте группу томов:
Теперь, когда физический том создан, добавьте его в существующую группу томов:
vgextend build-vg /dev/sda3
Убедитесь, что диск добавлен в группу томов.
-
Расширьте логический том:
Используйте команду для увеличения размера логического тома:
lvextend -l +100%FREE /dev/build-vg/root
Это позволит использовать все доступное пространство в группе томов.
-
Обновите файловую систему:
Для полной готовности пространства убедитесь, что файловая система расширена:
resize2fs /dev/build-vg/root
Это завершит настройку, предоставив операционной системе доступ к дополнительным гигабайтам.
Каждый шаг важен для успешного увеличения дискового пространства в рамках LVM на вашей VM с Debian 9. Убедитесь, что резервные копии данных созданы до внесения изменений. Таким образом, вы сможете избежать потери данных в случае ошибок конфигурации или сбоя в процессе.