Rozszerzyłeś dysk wirtualny, ale df -h Zawsze wyświetla ten sam rozmiar. W przypadku LVM jest to normalne, jeśli zmieniła się tylko warstwa fizyczna. Dysk, partycja, wolumin fizyczny, grupa woluminów, wolumin logiczny i system plików to różne elementy.
Zamówienie wydłużyć Dlatego samo w sobie nie rozwiązuje wszystkich problemów. Przed użyciem należy zlokalizować wolne miejsce i zidentyfikować system plików, który chcesz rozszerzyć. Radzę również sprawdzić kopię zapasową przed kontynuowaniem. LVM ułatwia rozszerzanie woluminów, ale nie chroni danych przed błędami urządzenia.

Przed zmianą rozmiaru zidentyfikuj warstwy LVM
Typowy system pamięci masowej LVM opiera się na następującym łańcuchu:
- na przykład dysk lub partycja
/dev/nvme0n1p3; - A objętość fizyczna (PV) utworzone na tym urządzeniu;
- A grupa woluminów (VG) łączący jeden lub więcej PV;
- A objętość logiczna (LV) wycięty z VG;
- system plików ext4, XFS lub inny, zamontowany w folderze.
Zacznij od wyświetlenia całego łańcucha. Nie zmieniaj żadnych nazw, dopóki nie połączysz punktu montowania z prawidłowym LV i PV:
lsblk -o NAZWA, ŚCIEŻKA, ROZMIAR, TYP, STYL F, PUNKTY MONTAŻU, MODEL
findmnt -no ŹRÓDŁO, STYL F, CEL /srv/data
sudo pvs -o pv_name,pv_size,pv_free,vg_name
sudo vgs -o vg_name,vg_size,vg_free
sudo lvs -a -o lv_name,vg_name,lv_size,lv_path,devices
df -hT /srv/data
W poniższych przykładach grupa nazywa się vgdata, wolumin logiczny lvdata i punkt mocowania /srv/dataUżyj wartości zgłoszonych przez Twój komputer. Przewodnik po lsblk pod Linuksem pomoże ci, jeśli drzewo katalogów zawiera mieszane partycje, szyfrowanie i woluminy logiczne.
Tworzenie kopii zapasowej danych i metadanych LVM
Kopia metadanych LVM nie zastępuje kopii zapasowej pliku. Najpierw sprawdź, czy ważne dane znajdują się na innym nośniku i czy można je odzyskać. Następnie utwórz kopię zapasową konfiguracji grupy woluminów.
sudo vgcfgbackup -f /root/vgdata-$(date +%F-%H%M).conf vgdata
sudo lvs -a -o lv_name,vg_name,lv_size,segtype,devices
sudo pvs -o pv_name,pv_uuid,pv_size,pv_free,vg_name
Zachowaj również dane wyjściowe tych poleceń w raporcie interwencji. Na serwerze zdalnym hostującym katalog główny lub krytyczne dane, otwórz drugą sesję SSH i zweryfikuj dostęp do konsoli dostawcy. Rozszerzenie zazwyczaj nie wymaga ponownego uruchomienia, ale błąd partycji lub warstwy szyfrowania może uniemożliwić dostęp.
Przypadek 1: Grupa woluminów ma już wolne miejsce
Spójrz na kolumnę VBezpłatny z vgs. Jeśli vgdata Jeśli posiadasz już co najmniej 10 GB wolnego miejsca, możesz przetestować rozszerzenie LV bez zapisywania metadanych:
sudo vgs -o vg_name,vg_size,vg_free
sudo lvextend --test -L +10G /dev/vgdata/lvdata
Tryb --test Unika zapisywania metadanych, ale nie symuluje wszystkich efektów ubocznych. Sprawdź dokładnie ścieżkę i rozmiar, a następnie uruchom rozszerzenie:
sudo lvextend -L +10G /dev/vgdata/lvdata
sudo lvs -o lv_name,vg_name,lv_size,lv_path,devices /dev/vgdata/lvdata
Strona podręcznika wydłużyć również oferuje -l +100% ZA DARMOTa opcja zużywa całą wolną przestrzeń w VG. Nie używam jej domyślnie: zachowanie pewnej ilości miejsca ułatwia przyszłą rozbudowę lub utworzenie kolejnego woluminu.
Następnie rozszerz system plików ext4 lub XFS.
Na tym etapie LV jest większa, ale df -h Nadal może wyświetlać starą pojemność. System plików nadal wymaga powiększenia. Sprawdź jego typ, zamiast wnioskować o nim z nazwy woluminu:
findmnt -no ŹRÓDŁO, STYL F, CEL /srv/data
lsblk -f /dev/vgdata/lvdata
Dla systemu plików wew4, używać zmień rozmiar2fs na woluminie logicznym:
sudo resize2fs /dev/vgdata/lvdata
Rozszerzenie online działa w nowoczesnych systemach ext4 po zamontowaniu. Jeśli narzędzie żąda kontroli offline lub system plików jest stary, należy zaplanować konserwację zamiast wymuszać rozszerzenie. Informacje o ograniczeniach znajdują się w dokumentacji. zmień rozmiar2fs.
Dla XFSWybierz punkt montowania, a nie urządzenie:
Do wykonania tej operacji konieczne jest zamontowanie systemu XFS, który nie może zmniejszyć rozmiaru systemu plików. Strona podręcznika xfs_growfs szczegółowo opisuje tę operację. Nie stosuj tych poleceń do systemów Btrfs, ZFS, LUKS ani stosu RAID: każda warstwa ma własną procedurę.
lvextend -r LVM może rozszerzyć zarówno LVM, jak i system plików za pomocą tego samego polecenia, jeśli jest to obsługiwane. W przypadku operacji wrażliwych wolę, aby te dwa kroki były oddzielne. Można od razu sprawdzić, czy LVM zakończyło się powodzeniem i czy rozszerzenie systemu plików jest nadal wymagane.
Przypadek 2: Dysk urósł, ale PV zachował swój pierwotny rozmiar.
Jest to częste zjawisko występujące po zwiększeniu rozmiaru dysku w hiperwizorze. lsblk może pokazać większy dysk, podczas gdy pv nie wskazuje na żadną dodatkową wolną przestrzeń.
Jeśli PV opiera się na partycji, partycja ta musi najpierw zająć nowe miejsce na dysku. Nie uruchamiaj zmieńrozmiar zanim potwierdził swój nowy limit lsblk i narzędzie do partycjonowania. Samouczek na temat rozstał się z Linuksem wyjaśnia, jak zidentyfikować dysk, zapisać tabelę i odtworzyć zmiany bez tworzenia nowego systemu plików.
Po powiększeniu partycji LVM należy przetestować i zmienić rozmiar partycji PV:
sudo pvs -o pv_name,pv_size,pv_free,vg_name
sudo pvresize --test /dev/nvme0n1p3
sudo pvresize /dev/nvme0n1p3
sudo vgs -o vg_name,vg_size,vg_free
Nowa umiejętność musi się pojawić w VBezpłatnyNastępnie możesz wrócić do wydłużyć, a następnie rozszerz system plików. Dokumentacja dla zmieńrozmiar potwierdza, że narzędzie zmienia rozmiar istniejącego obiektu PV bez automatycznego przenoszenia innych warstw.
Jeśli PV zajmuje cały dysk, jeśli LUKS znajduje się między partycją a LVM lub jeśli dodasz nowy dysk do VG, kolejność ulegnie zmianie. Zatrzymaj się, gdy tylko pojawi się ciąg wyświetlany przez lsblk nie odpowiada przykładowi. Prawidłowe polecenie wykonane na niewłaściwej warstwie nadal jest złą interwencją.
Sprawdź rozmiar na każdym poziomie po rozszerzeniu
Na koniec sprawdź PV aż do punktu montażu. Nie polegaj tylko na komunikacie o powodzeniu. wydłużyć :
sudo pvs -o pv_name,pv_size,pv_free,vg_name
sudo vgs -o vg_name,vg_size,vg_free
sudo lvs -o lv_name,vg_name,lv_size,lv_path,devices
findmnt -no ŹRÓDŁO, STYL F, CEL /srv/data
df -hT /srv/data
systemctl --failed
journalctl -k --since "-10 min" -p warning..alert --no-pager
Jeśli lvs wyświetla nowy rozmiar, ale nie zm, nie wykonuj wydłużyć Spróbuj ponownie. System plików prawdopodobnie nie został jeszcze rozszerzony lub kontrolujesz inny punkt montowania. znaleźć I lsblk -f przed złożeniem nowego zamówienia.