VMware pozwala na zwiększenie rozmiaru wirtualnego dysku online - gdy VM jest uruchomiona. Kolejne oczekiwane kroki dla systemu Linux to:
- rozszerz partycję: usuń i utwórz większą za pomocą
fdisk
- zwiększyć rozmiar PV za pomocą
pvresize
- używaj bezpłatnych zakresów do
lvresize
operacji - a następnie
resize2fs
dla systemu plików
Ale jestem zakleszczony na pierwszym stopniu: fdisk
i sfdisk
nadal wyświetla stare rozmiar dysku.
Mój dysk to wirtualny dysk SCSI podłączony dzięki wirtualnemu kontrolerowi LSI Logic.
Jak odświeżyć rozmiar dysku wirtualnego i informacje o tablicy partycji dostępne w jądrze Linuksa bez restartu ?
O ile wiem, wszystkie te kroki są możliwe dla działającego systemu Windows, bez ponownego uruchamiania, a nawet bez żadnych działań użytkownika dzięki narzędziom VMWare. W Linuksie spodziewam się, że wszystkie kroki wykonam również online i już wiem, że kroki 2, 3 i 4 działają online. Ale pierwsza - zmiana rozmiaru partycji zadeklarowana w tabeli partycji (nadal) wydaje się wymagać ponownego uruchomienia.
Aktualizacja: Mój system to Debian Lenny z jądrem 2.6.26, a dysk, który rozszerzyłem, jest dyskiem głównym z dużym PV zawierającym „root” LV dla „/”.
źródło
partprobe
jest to polecenie zparted
projektu.fdisk
problem nie dotyczy LVM. Musiałbym zapytać, jak skanowałeś, ponieważ zwykle odbiera mi nowy rozmiar dysku. Nie dzielę też dysków na partycje, na których będę korzystać z LVM, jeśli mogę pomóc. Jeśli maszpvcreate
cały dysk, to aktualizowanie tablicy partycji to tylko jedna rzecz mniej, którą musisz zrobić, gdy chcesz zmienić jej rozmiar.Druga odpowiedź, pod warunkiem, że nie dotyczy twojego pytania, zidentyfikowałem prawidłowe polecenie, aby ponownie przeskanować już podłączony dysk.
Musimy ponownie przeskanować już podłączony dysk, najpierw zidentyfikować dysk, który chcesz przeskanować ponownie.
W moim przykładzie widzę dowiązanie symboliczne o nazwie
0:0:0:0
, więc ponownie skanujemy ten dysk SCSI.Właśnie rozszerzyłem dysk VMware i musiałem przejrzeć inne odpowiedzi, aby znaleźć prawidłowe polecenie. Mamy nadzieję, że uratuje to przyszłych poszukiwaczy przed daremnymi próbami.
źródło
/sys/block/
, więc możesz użyć np/sys/block/sda/device/rescan
.Jeśli główny system plików
/
jest zamontowany na dysku, którego rozmiar został zmieniony, tablica partycji i rozmiar dysku nie są odświeżane przez skanowanie SCSI w systemie Linux 2.6.26.Naprawdę mam nadzieję, że wkrótce będzie lepiej z nowszymi wersjami jądra.
Musiałem więc:
fdisk
fdisk
partprobe
zparted
pakietu, tylko jeśli/
nie jest tam zamontowanypvresize
aby uzyskać nowe wolne miejscelvextend
iresize2fs
przydzielić trochę więcej miejsca systemowi plikówpvcreate
Polecono mi po prostu odrzucić tę głupią starą tablicę partycji i uruchomić bezpośrednio na urządzeniu, ponieważ Grub2 jest w stanie załadować obraz jądra bezpośrednio z systemu plików na partycji LVM. Ale taka konfiguracja wcale nie jest oczywista w przypadku instalatorów dystrybucji.Aktualizacja: Właśnie sprawdziłem przy pomocy Debiana GNU / Linux Jessie 8.2 z jądrem 3.16 i
parted
3.2,partprobe
teraz udaje się to po edycji tablicy partycjicfdisk
bez restartu.pvresize
działa natychmiast po.Jeśli chcesz rozszerzyć PV przechowywane jako logiczna partycja PC, na przykład
/dev/sda5
na rozszerzonej partycji podstawowej/dev/sda2
, nie używaj,fdisk
ale woliszparted
:źródło
Musisz ponownie przeskanować dyski, zanim utworzysz większą partycję.
W Centos możesz to zrobić przez
następnie dla każdego hosta
(zamień # na liczbę)
Jest jeszcze jeden krok do powyższego, czyli rozszerzenie ext lub dowolnego systemu plików, którego używasz po zmianie rozmiaru partycji.
W pewnym momencie nadal będziesz musiał odmontować tę partycję. Zwykle dodajemy drugi dysk vmware i używamy lvm, aby rozszerzyć go na nowy dysk (i zmniejszyć stary, jeśli jest on zamienny), ponieważ pozwala to na cały proces na żywo.
źródło
Jako zaktualizowaną odpowiedź w Ubuntu 16.04.1 mogłem wykonać następujące czynności, aby zmienić rozmiar woluminu z 1024 GB na 1,4 TB:
Nie jest
fdisk
wymagane, a miejsce było natychmiast dostępne.źródło
/dev/sdb
, który prawdopodobnie jest dyskiem dodatkowym danych aplikacji, ale nie pierwszym dyskiem z systemem (wspominając, że konfiguruję moje systemy w ten sam sposób!). Moje pytanie dotyczyło rozszerzenia ostatniej PV / partycji takiego „dysku systemowego” (sklonowanego z szablonu), o ile dystrybucje Linuksa nie obsługują instalacji na bezpośrednim PV, podczas gdy jądro Linuksa i GRUB powinny być w stanie uruchomić się i uruchomić na dysku systemowym w ogóle bez tablicy partycji.Nie podałeś nam wystarczających szczegółów, aby powiedzieć ci dokładnie, jakich poleceń potrzebujesz, ale w zasadzie musisz użyć
lvextend
polecenia, aby rozszerzyć wolumin logiczny, następniee2fsck
polecenia, a następnieresize2fs
polecenia, aby faktycznie rozwinąć system plików. Każde z tych poleceń będzie wymagało dodatkowych parametrów, w szczególności informacji o urządzeniu i systemie plików, których nie możemy podać, ale musisz je znać, po prostu użyj opcji --help dla każdego polecenia, aby powiedzieć, jak ich używać, a także prawdopodobnie użyjesz komendpvdisplay
,lvdisplay
imount
, aby pomóc wypełnić te parametry.źródło
/sbin/rescan-scsi-bus
nie zmieniaj istniejącego rozmiaru dysku. Aleecho "1" > '/sys/class/scsi_disk/0:0:1:0/device/rescan'
nie robiNikt nie opublikował pełnego zestawu poleceń, więc zaczynamy:
źródło