Nie można zmienić rozmiaru partycji za pomocą resize2fs

18

Ostatnio zmieniłem rozmiar dysku twardego maszyny wirtualnej z 150 GB na 500 GB w VMWare ESXi. Po wykonaniu tego użyłem Gparted, aby skutecznie zmienić rozmiar partycji tego obrazu. Teraz wszystko, co muszę zrobić, to zmienić rozmiar systemu plików, ponieważ nadal pokazuje on starą wartość (jak widać z danych wyjściowych df -h):

Filesystem                     Size  Used Avail Use% Mounted on
/dev/mapper/owncloud--vg-root  157G   37G  112G  25% /
udev                           488M  4.0K  488M   1% /dev
tmpfs                          100M  240K  100M   1% /run
none                           5.0M     0  5.0M   0% /run/lock
none                           497M     0  497M   0% /run/shm
/dev/sda1                      236M   32M  192M  14% /boot

Jednak uruchamianie sudo resize2fs /dev/mapper/owncloud--vg-rootzwraca to:

resize2fs 1.42 (29-Nov-2011)
The filesystem is already 41608192 blocks long.  Nothing to do!

Ponieważ Gparted mówi, że moja partycja jest /dev/sda5, próbowałem też uruchomić sudo resize2fs /dev/sda5, ale w tym przypadku otrzymałem:

resize2fs 1.42 (29-Nov-2011)
resize2fs: Device or resource busy while trying to open /dev/sda5
Couldn't find valid filesystem superblock.

Wreszcie jest to wynik pvs:

PV         VG          Fmt  Attr PSize   PFree
/dev/sda5  owncloud-vg lvm2 a-   499.76g 340.04g

fdisk -l /dev/sda pokazuje prawidłową ilość miejsca.

Jak mogę zmienić rozmiar partycji, aby wreszcie system operacyjny mógł zobaczyć 500 GB dysku twardego?

użytkownik1301428
źródło
pvspowinien pokazać, gdzie znajduje się twoja vg. Gdzie to jest?
Nils,
@Nils dodał do pytania :)
user1301428
Joel udzielił właściwej odpowiedzi. Twoje pytanie zawiera teraz pełny obraz twojego - dość powszechnego - problemu.
Nils,

Odpowiedzi:

16

Jeśli zmieniłeś tylko rozmiar partycji, nie jesteś jeszcze gotowy do zmiany rozmiaru woluminu logicznego. Gdy partycja osiągnie nowy rozmiar, musisz zrobić pvresizena PV, aby grupa woluminów zobaczyła nowe miejsce. Następnie można użyć lvextenddo rozszerzenia woluminu logicznego do nowej przestrzeni grupy woluminów. Możesz przejść -rdo lvextendpolecenia tak, że automatycznie rozpoczyna off resize2fsdla Ciebie.

Osobiście stworzyłbym nową partycję i użyłem vgextendna niej, ponieważ miałem różne wyniki pvresize.

Bratchley
źródło
Mam biegać pvresizea następnie lvextend -r -L 500G /dev/sda2, i to, co mam:Path required for Logical Volume "sda2" Please provide a volume group name Run 'lvextend --help' for more information.
user1301428
4
Gdy to zrobisz pvresize, skończysz zajmować się zwykłymi partycjami. Musisz podać ścieżkę woluminu logicznego, którym w tym przypadku jest /dev/mapper/owncloud--vg-rootOsobiście uruchomiłbymlvextend -r -l +100%FREE /dev/mapper/owncloud--vg-root
Bratchley,
Po uruchomieniu pvresizepolecenia możesz sprawdzić, czy miejsce jest w grupie woluminów, uruchamiając vgspolecenie.
Bratchley,
Nie wspomniałeś też o tym w swoim pytaniu, ale czy fdisk -l /dev/sdawyświetla prawidłowy rozmiar dysku twardego? Jeśli nie, konieczne może być ponowne uruchomienie lub ponowne skanowanie magistrali SCSI.
Bratchley,
To działało, dzięki! Z jakiegoś powodu nie zostało ono automatycznie /dev/mapper/owncloud--vg-root/sda5
uzupełnione,