Назад | Перейти на главную страницу

/ dev / sda1 не в группе томов, и vgextend не работает

У меня есть несколько виртуальных машин, к которым я обращаюсь через клиент VMWare vSphere (v 5.1.0). На одном закончилось место, и я пытаюсь освободить его.

Что я уже сделал:
- Увеличен предоставленный размер с помощью «Изменить настройки» на вкладке «Сводка».
- Создан новый раздел (/ dev / sda3) с системой Linux LVM.

Проблема в том, что раньше на машине не было группы томов, поэтому я не могу следовать обычным руководствам, которые говорят мне просто

vgextend VolGroup00 /dev/sda1

когда я это сделаю, я получаю сообщение об ошибке:

No physical volume label read from /dev/sda1
Can't open /dev/sda1/ exclusively. Mounted filesystem?
Unable to add physical volume '/dev/sda1' to volume group 'VolGroup00'.

Я гуглил весь день, но не могу понять, как добавить / dev / sda1 в мою группу томов. Его вообще нет ни в одной группе томов ...

У кого-нибудь есть подсказки или указатели?

РЕДАКТИРОВАТЬ: некоторые дополнительные данные:

# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders
Units = cylinders of 16065 * 512 = 822580 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optional): 512 bytes / 512 bytes
Disk identifier: 0x000d2064

Device    Boot Start   End    Blocks   Id  System
/dev/sda1   *      1  1998  16043008   83  Linux
/dev/sda2       1998  2089    731137    5  Extended
/dev/sda3       2089  5221  25161490+  8e  Linux LVM
/dev/sda5       1998  2089    731136   82  Linux swap / Solaris


# df -h
Filesystem  Size  Used  Avail  Use%  Mounted on
/dev/sda1    16G   14G   754M   95%  /
tmpfs       4.0G     0   4.0G    0%  /lib/init/rw
udev        4.0G  104K   4.0G    1%  /dev
tmpfs       4.0G     0   4.0G    0%  /dev/shm


# lbslk
-bash: lsblk: command not found


# pvs
PV         VG           Fmt  Attr   PSize   PFree
/dev/sda3  VolGroup00  lvm2  a-     23.99g  23.99g


# vgs
VG          #PV  #LV  #SN  Attr    VSize   VFree
VolGroup00    1    0    0  ws--n-  23.99g  23.99g


# lvs
#
(no output)

Хотя у меня нет возражений ни с одним из существующих ответов, я не уверен, что вижу какую-либо причину усложнять это с помощью LVM, учитывая, что в настоящее время у вас его нет. Если вы не планируете делать подобное расширение снова, возможно, не стоит тратить силы на внедрение LVM сейчас.

Альтернатива, которая неудобна, но не требует перестройки машины, если вы ее не забиваете, заключается в следующем:

  1. Откатите выполненную настройку LVM, затем сделайте полную резервную копию
  2. Удалить раздел /dev/sda3
  3. Остановите существующее пространство подкачки с помощью swapoff, затем удалите /dev/sda[25] перегородки
  4. Воссоздать /dev/sda1 раздел, чтобы охватить весь существующий диск, за вычетом некоторого места подкачки вверху. Не менять стартовый блок раздела.
  5. Создать /dev/sda2 в верхней части диска, пометьте его местами, убедитесь, что ваш /etc/fstab отражает изменение от sda5 к sda2.
  6. Перезагрузитесь, затем используйте resize2fs для увеличения корневой файловой системы на месте заполнить новый, больший /dev/sda1.

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

Но на самом деле вопрос не в том, «как я могу расширить sda1», а в том, «как я могу увеличить пространство, доступное моим пользователям, учитывая, что сервер был установлен без групп томов». На этот вопрос можно ответить по-разному. Я даю вам два ответа, которые не связаны, например, NAS / SAN или другую внешнюю систему хранения.

Прежде чем делать что-либо из нижеприведенного, убедитесь, что у вас есть текущая резервная копия вашей системы. Имейте в виду, что будут простои!

Легкий путь это посмотреть, какие каталоги существуют на текущем диске / dev / sda1. У вас может быть, например,

/var
/home
/usr

все на одном диске. Вы можете скопировать все данные, например, из / home на новый диск, а затем смонтируйте этот новый диск как / home. (Это, очевидно, нужно делать в то время, когда на машине нет пользователей - желательно, чтобы она была загружена в однопользовательском режиме!)

Когда копирование будет завершено, перезагрузите систему, установив / dev / sda3 как / home. Убедитесь, что все работает так, как задумано. Затем размонтируйте / dev / sda3 и удалите все каталоги в / home на старом диске.

Обратной стороной является то, что теперь вы будете заблокированы в ограниченном пространстве, за исключением того, что теперь у вас есть два нерасширяемых диска вместо одного, поэтому в следующий раз пройдет некоторое время, прежде чем вы достигнете потолка.

Отредактировал ниже, поскольку / boot находится на / dev / sda1, поэтому исходное решение не работает.

Более сложный путь это сделать переустановку. При переустановке создайте VG на / dev / sda3 только. Ни в коем случае не разбивайте / dev / sda1 на разделы и не касайтесь его.

Как только система заработает, вы монтируете / dev / sda1 на новую точку монтирования (например, / mnt / olddisk). Затем скопируйте все данные с этого диска (это должно быть все, кроме самой операционной системы). Как только это будет сделано, вы можете расширить VG на старый / dev / sda1. Теперь у вас будет система, которую можно расширить, добавив больше дисков в группу томов.

Вы можете создавать или расширять группы томов LVM только на физические тома.

Чтобы решить эту проблему, создайте физический том LVM на желаемом разделе.

pvcreate /dev/sda1

ПРИМЕЧАНИЕ. Эта операция уничтожает все данные в названном разделе.

Затем вы можете расширить группу томов на физический том.


(И вы, вероятно, не имеете в виду /dev/sda1 потому что это обычно /boot раздел. Поскольку это разрушительно, будьте абсолютно уверены в том, что делаете.)