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

Используется vgextend / lvextend для добавления дополнительного 8 ГБ пространства, но это не отражается в выводе df

Я создал экземпляр виртуальной машины ubuntu в VirtualBox. Вначале я выделил только 7 ГБ для хранилища, а теперь на виртуальной машине не хватает места.

Сначала я добавил еще 8 ГБ (/ dev / sdb) к виртуальной машине через интерфейс VirtualBox. Затем я установил следующие разделы:

$ sudo fdisk -l /dev/sdb

Disk /dev/sdb: 8589 MB, 8589934592 bytes
40 heads, 1 sectors/track, 419430 cylinders, total 16777216 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
Disk identifier: 0x076b5690

   Device Boot      Start         End      Blocks   Id  System
/dev/sdb1            2048    16777215     8387584    5  Extended
/dev/sdb5            4096    16777215     8386560   8e  Linux LVM

Затем я выполнил следующие команды, чтобы развернуть VG.

  sudo pvcreate /dev/sdb5
  sudo vgextend ubuntudevbox2 /dev/sdb5
  sudo lvextend 100% /dev/ubuntudevbox2/root
  lvextend --help
  sudo lvextend -l 100%FREE /dev/ubuntudevbox2/root
  sudo lvextend -r -l 100%FREE /dev/ubuntudevbox2/root
  sudo resize2fs  /dev/mapper/ubuntudevbox2-root

Я ожидал, что размер / увеличится до 16 ГБ. Однако df сообщает, что

$ df -h
Filesystem                      Size  Used Avail Use% Mounted on
/dev/mapper/ubuntudevbox2-root  8.0G  6.9G  680M  92% /

корневое крепление увеличилось только до 8G

Вот информация о VG

$ sudo vgdisplay ubuntudevbox2
[sudo] password for antkong: 
  --- Volume group ---
  VG Name               ubuntudevbox2
  System ID             
  Format                lvm2
  Metadata Areas        2
  Metadata Sequence No  5
  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.75 GiB
  PE Size               4.00 MiB
  Total PE              4033
  Alloc PE / Size       2182 / 8.52 GiB
  Free  PE / Size       1851 / 7.23 GiB
  VG UUID               ZV6VAi-qkxC-KnKz-1LHg-nfLB-afSI-mVpIPv

Почему я не получил все дополнительные 8 ГБ?

Дополнительная информация 1: Я бегал mkfs -t ext5 /dev/sdb5 сразу после использования fdisk для добавления нового раздела. Может ли это вызвать сбой?

Дополнительная информация 2:

$ uname -a
Linux ubuntudevbox2 3.5.0-27-generic #46-Ubuntu SMP Mon Mar 25 19:58:17 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

Вывод lvdisplay:

$ sudo lvdisplay

  --- Logical volume ---
  LV Path                /dev/ubuntudevbox2/root
  LV Name                root
  VG Name                ubuntudevbox2
  LV UUID                V1Qq0f-qKJR-UTf5-4tjM-ycoY-1J5L-mJQ2Fy
  LV Write Access        read/write
  LV Creation host, time ubuntudevbox2, 2013-03-29 12:18:26 +1100
  LV Status              available
  # open                 1
  LV Size                8.03 GiB
  Current LE             2055
  Segments               3
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:0

  --- Logical volume ---
  LV Path                /dev/ubuntudevbox2/swap_1
  LV Name                swap_1
  VG Name                ubuntudevbox2
  LV UUID                LbvPFE-j3GO-oaF1-HQV3-a2r5-HTfy-YrhQve
  LV Write Access        read/write
  LV Creation host, time ubuntudevbox2, 2013-03-29 12:18:29 +1100
  LV Status              available
  # open                 2
  LV Size                508.00 MiB
  Current LE             127
  Segments               1
  Allocation             inherit
  Read ahead sectors     auto
  - currently set to     256
  Block device           252:1

Вывод в строке абсолютный

sudo lvextend -l 100%FREE /dev/ubuntudevbox2/root

Так как у вас было только 8 ГБ свободных экстентов после vgextended, вы получите только lv, представляющий этот абсолютный размер 8 ГБ.

Вы должны сообщить LVM, что собираетесь дополнительный размер пространства. На странице руководства lvextend;

   -l, --extents [+]LogicalExtentsNumber[%{VG|LV|PVS|FREE|ORIGIN}]
          Extend  or  set  the  logical  volume  size  in units of logical
          extents.  With the '+' sign the value is  added  to  the  actual
          size of the logical volume and without it, the value is taken as
          an absolute one.

Пытаться

sudo lvextend -l +100%FREE /dev/ubuntudevbox2/root

Как видно из вашего vgdisplay output выделяется только около половины места:

Alloc PE / Size       2182 / 8.52 GiB
Free  PE / Size       1851 / 7.23 GiB

Я подозреваю, что вам нужно указать параметры для lvextend более подробно.