Na moim 240 GB SSD miałem dwie pierwsze partycje, jedną zawierającą wolumin logiczny z Linux Mint, a drugą partycję NTFS do udostępnienia Windows .
Teraz usunąłem partycję NTFS i chcę rozszerzyć moją grupę woluminów logicznych, aby wykorzystać zwolnione miejsce na dysku.
Jak to zrobić rozszerz grupę woluminów , mój wolumin logiczny zawierający / home i system plików (ext4) w / home? Czy można to zrobić online?
PS: Tak, wiem, że muszę wykonać kopię zapasową danych 🙂
/dev/sdb/ (240GB) linuxvg (160GB) should use 100% of the disk space swap root home (ext4, 128GB) should be extended to use the remaining space
wyjście sudo vgdisplay
:
--- Volume group --- VG Name linuxvg System ID Format lvm2 Metadata Areas 1 Metadata Sequence No 4 VG Access read/write VG Status resizable MAX LV 0 Cur LV 3 Open LV 3 Max PV 0 Cur PV 1 Act PV 1 VG Size 160,00 GiB PE Size 4,00 MiB Total PE 40959 Alloc PE / Size 40959 / 160,00 GiB Free PE / Size 0 / 0 VG UUID ... --- Logical volume --- LV Path /dev/linuxvg/swap LV Name swap VG Name linuxvg LV UUID ... LV Write Access read/write LV Creation host, time mint, 2013-08-06 22:48:32 +0200 LV Status available # open 2 LV Size 8,00 GiB Current LE 2048 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:0 --- Logical volume --- LV Path /dev/linuxvg/root LV Name root VG Name linuxvg LV UUID ... LV Write Access read/write LV Creation host, time mint, 2013-08-06 22:48:43 +0200 LV Status available # open 1 LV Size 24,00 GiB Current LE 6144 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:1 --- Logical volume --- LV Path /dev/linuxvg/home LV Name home VG Name linuxvg LV UUID ... LV Write Access read/write LV Creation host, time mint, 2013-08-06 22:48:57 +0200 LV Status available # open 1 LV Size 128,00 GiB Current LE 32767 Segments 1 Allocation inherit Read ahead sectors auto - currently set to 256 Block device 252:2 --- Physical volumes --- PV Name /dev/sdb1 PV UUID ... PV Status allocatable Total PE / Free PE 40959 / 0
Wyjście sudo fdisk -l
:
Disk /dev/sdb: 240.1 GB, 240057409536 bytes 255 heads, 63 sectors/track, 29185 cylinders, total 468862128 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: 0x00000000 Device Boot Start End Blocks Id System /dev/sdb1 1 468862127 234431063+ ee GPT Disk /dev/mapper/linuxvg-swap: 8589 MB, 8589934592 bytes 255 heads, 63 sectors/track, 1044 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: 0x00000000 Disk /dev/mapper/linuxvg-root: 25.8 GB, 25769803776 bytes 255 heads, 63 sectors/track, 3133 cylinders, total 50331648 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: 0x00000000 Disk /dev/mapper/linuxvg-home: 137.4 GB, 137434759168 bytes 255 heads, 63 sectors/track, 16708 cylinders, total 268427264 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: 0x00000000
Komentarze
Odpowiedź
Możesz to zrobić w dość prosty sposób. Trochę zaskoczony, że nie ma tu jeszcze odpowiedzi na to pytanie.
Możesz wykonać cały ten proces działając na systemie plików, którego rozmiar chcesz zmienić (tak, jest bezpieczny iw pełni obsługiwany). Nie ma potrzeby używania ratunkowych dysków CD ani alternatywnych systemów operacyjnych.
- Zmień rozmiar partycji (znowu możesz to zrobić z uruchomionym systemem). GParted jest łatwy w użyciu i obsługuje zmianę rozmiaru.
Możesz także użyć narzędzia niższego poziomu, takiego jakfdisk
. Ale będziesz musiał usunąć partycję i ponownie ją utworzyć. Po prostu upewnij się, że nowa partycja zaczyna się dokładnie w tym samym miejscu. - Uruchom ponownie. Ponieważ tablica partycji została zmodyfikowana w działającym systemie, nie zadziała do czasu ponownego uruchomienia.
- Uruchom
pvresize /dev/sdXY
, aby LVM odebrał nowe miejsce. - Zmień rozmiar woluminu logicznego z
lvextend
. Jeśli chcesz wykorzystać całość,lvextend -r -l +100%FREE /dev/VGNAME/LVNAME
.-r
zmieni również rozmiar systemu plików.
Chociaż zawsze odradzam używanie całej grupy woluminów. Nigdy nie wiesz, czego „będziesz potrzebować w przyszłości”. Zawsze możesz rozszerzyć później, nie możesz „zmniejszyć”.
Komentarze
- Chciałbym zaakceptować twoją odpowiedź, ale nie ' nie działałem tak, jak sugerowałeś, ponieważ GParted może ' t zmień rozmiar partycji głównej w działającym systemie (przynajmniej w moim przypadku).
- @HalosGhost Cofnąłem twoją edycję.
partprobe -s
nie robi tego, co myślisz, że robi. Jądro nie pobierze zmiany rozmiaru używanej partycji.partprobe -s
działa tylko wtedy, gdy partycja była używana podczas zmiany rozmiaru (więc kiedy fdisk powiadomił jądro o awarii), ale już tak nie jest. - @Patrick, Nie dodałem pomysłu na to; ” ulepszyłem ” edycję, umieszczając komendę w odwrotnym znaku (wojna o kod wymyka się płacom!).
- Och, przepraszam, odczytaj nazwę z niewłaściwego wydarzenia historycznego. @Qetesh, który dotyczy ciebie, to 🙂
- ' można w ogóle nie uruchomić ponownie za pomocą ” partx -u ” w kroku 2, aby poinstruować jądro, aby zaktualizowało partycję ' rozmiar s: działa nawet na aktywnych partycjach i może być zweryfikowana poprzez sprawdzenie /sys/…/sdXY/rozmiar przed i po.
Odpowiedź
Żadne z odpowiedzi oddają sprawiedliwość mocy LVM.
(Jest to oparte na komentarzu @frostchutz do powyższego pytania).
Spójrzmy na fakty:
- OP ma dwie partycje, sdb1 i sdb2 to wolumin fizyczny dla LVM.
- sdb1 to teraz ntfs, musimy dać to miejsce na
home
wolumin logiczny wlinuxvg
grupie woluminów.
Kroki LVM przy użyciu ” pragmatycznego sposobu „:
- utwórz wolumin fizyczny na sdb1:
pvcreate /dev/sdb1
- dodaj s db1 do
linuxvg
:vgextend linuxvg /dev/sdb1
- rozszerz wolumin logiczny
home
o cała wolna przestrzeń:lvextend -r -l +100%FREE /dev/linuxvg/home
LVM zapewnia wysoki poziom pośrednictwa. Wolumin logiczny znajduje się w grupie woluminów, która może korzystać z kilku dysków.
home – > linuxvg – > (sdb1, sdb2, sdc1)
http://tldp.org/HOWTO/LVM-HOWTO/createvgs.html
Komentarze
- Udało się, dzięki. Użyłem
lvresize -l +100%FREE ...
zamiast ostatnich 2 poleceń lvextend + resizefs - Dobrze wiedzieć, dziękuję za udostępnienie @AlessandroDentella!
- Jeśli dodasz
-r
do polecenia lvextend, automatycznie rozszerzy również system plików. Zatem:lvextend -r -l +100%FREE /dev/linuxvg/home
i możesz uniknąćresize2fs
- aktualizacji. Dzięki! @lucaferrario
Odpowiedź
Pytanie zostało rozwiązane po przeczytaniu ten post na blogu. Napiszę rozwiązanie w krótkiej formie:
- boot z live cd z
- użyj
gdisk
(jeśli używasz GPT ) w przeciwnym razie możesz przejść do starego, dobregofdisk
- zanotuj ustawienia partycji, w moim przypadku
gdisk -l /dev/sdb
- usuń swoją partycję za pomocą
- utwórz nową partycję z dokładnie takim samym wyrównaniem jak poprzednia (w moim przykładzie zaczynając od bloku 2048)
- napisz nową tablicę partycji
- uruchom
partprobe -s
, aby odświeżyć tablicę partycji bez ponownego uruchamiania - zmień rozmiar woluminu fizycznego za pomocą
pvresize /dev/sdb1
lub gdziekolwiek jest twój pv (użyjpvs
, aby określić, czy nie wiesz) - teraz zmień rozmiar woluminu logicznego za pomocą
lvextend -l +100%FREE /dev/file/of/your/lv
, w moim przypadkusudo lvextend -l +100%FREE /dev/linuxvg/home
- zmień rozmiar systemu plików
sudo resize2fs /dev/linuxvg/home
- najpierw sprawdź spójność
sudo e2fsck -f /dev/linuxvg/home
- miłej zabawy 🙂
Commen ts
- Właściwie możesz wyciąć mniej więcej połowę tych kroków i zrobić to przy tylko jednym ponownym uruchomieniu.
- GParted odmówił zmiany rozmiaru partycji, ponieważ zablokowane (ten symbol klucza).
Odpowiedź
Już kilka świetnych odpowiedzi.
Jeśli „używasz xfs, użyj polecenia
xfs_growfs /mountpoint
zamiast resize2fs. Możesz to zrobić, gdy ten punkt montowania jest aktywna, na przykład w przypadku powiększenia partycji głównej i nie ma potrzeby ponownego uruchamiania po jej zakończeniu.
vgextend
, zamiast całkowicie usuwać partycję. Jeśli zamiast tego zwiększysz istniejącą partycję PV, prawdopodobnie będziesz musiał ponownie uruchomić komputer, ponieważ Linux odmawia ponownego odczytu tabeli partycji, gdy dysk jest używany. Praca nad tym w Internecie jest niezręczna. – Pokaż aktualną tabelę partycji.