Na svém 240 GB SSD jsem měl nejprve dva oddíly, jeden obsahující logický svazek s Linux Mint a druhý obsahoval oddíl NTFS ke sdílení s Windows .
Nyní jsem odstranil oddíl NTFS a chci rozšířit svou skupinu logických svazků o uvolněné místo na disku.
Jak mohu rozšířit skupinu svazků , můj logický svazek obsahující / home a souborový systém (ext4) on / home? Je to možné udělat online?
PS: Ano, vím, že musím zálohovat svá data 🙂
/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
výstup 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
výstup 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
Komentáře
Odpovědět
Můžete to udělat docela jednoduše. Trochu mě překvapilo, že zde už na to nebyla odpověď.
Celý tento proces můžete provést, když běžíte na souborovém systému, jehož velikost chcete změnit (ano, je to bezpečné a plně podporované). Není potřeba záchranných CD ani alternativních operačních systémů.
- Změňte velikost oddílu (opět to můžete udělat se spuštěným systémem). GParted se snadno používá a podporuje změnu velikosti.
Můžete také použít nástroj nižší úrovně, napříkladfdisk
. Ale musíte oddíl smazat a znovu jej vytvořit. Jen se ujistěte, že nový oddíl začíná na přesně stejném místě. - Restartujte. Protože byla tabulka oddílů ve spuštěném systému upravena, nebude se projevovat až do restartu.
- Spustit
pvresize /dev/sdXY
, aby LVM vyzvedl nový prostor. - Změnit velikost logického svazku pomocí
lvextend
. Pokud chcete použít celou věc,lvextend -r -l +100%FREE /dev/VGNAME/LVNAME
. Soubor-r
změní také velikost souborového systému.
Ačkoli vždy doporučuji nepoužívat celou skupinu svazků. Nikdy nevíte, co v budoucnu budete potřebovat. Později se můžete kdykoli rozbalit, zmenšit se to nedá.
Komentáře
- Rád bych přijal vaši odpověď, ale nepracoval jsem ‚ tak, jak jste navrhli, protože GParted nemůže ‚ t změnit velikost kořenového oddílu na běžícím systému (alespoň v mém případě).
- @HalosGhost Vrátil jsem vaši úpravu zpět.
partprobe -s
nedělá to, co si myslíte. Jádro nezachytí změnu velikosti používaného oddílu.partprobe -s
funguje pouze v případě, že se oddíl během změny velikosti používal (takže když fdisk oznámil jádru, že selhalo), ale už to není. - @Patrick, Nápad jsem k tomu nepřidal; “ Vylepšil jsem “ úpravu vložením příkazu do backticků (válka za kód uniká mzdám!).
- Oh, promiň, přečti si jméno ze špatné historie. @Qetesh, který se na vás potom vztahuje 🙂
- Je možné ‚ vůbec restartovat pomocí “ partx -u “ pro krok 2, abyste jádru řekli, aby aktualizoval velikost oddílu ‚: funguje i na aktivních oddílech a může být ověřeno kontrolou /sys/…/sdXY/size před a po.
Odpověď
Žádný z odpovědi činí spravedlnost vůči moci LVM.
(Toto je založeno na komentáři @frostchutz k výše uvedené otázce.)
Pojďme zjistit fakta:
- OP má dva oddíly, sdb1 a sdb2 je fyzický svazek pro LVM.
- sdb1 je právě ntfs, musíme tento prostor dát
home
logický svazek uvnitřlinuxvg
skupiny svazků.
Kroky LVM využívající “ pragmatický způsob „:
- vytvořit fyzický svazek na sdb1:
pvcreate /dev/sdb1
- přidat s db1 to
linuxvg
:vgextend linuxvg /dev/sdb1
- rozšířit logický svazek
home
veškeré volné místo:lvextend -r -l +100%FREE /dev/linuxvg/home
LVM umožňuje velkou úroveň nepřímého přístupu. Logický svazek je uvnitř skupiny svazků, která může používat několik disků.
home – > linuxvg – > (sdb1, sdb2, sdc1)
http://tldp.org/HOWTO/LVM-HOWTO/createvgs.html
Komentáře
- Fungovalo to, díky. Místo posledních dvou příkazů jsem použil
lvresize -l +100%FREE ...
lvextend + resizefs - Je dobré vědět, děkuji za sdílení @AlessandroDentella!
- Pokud přidáte
-r
na příkaz lvextend, automaticky také rozšíří souborový systém. Takže:lvextend -r -l +100%FREE /dev/linuxvg/home
a můžete se vyhnoutresize2fs
- aktualizovanému. Dík! @lucaferrario
Odpověď
Otázka byla vyřešena po přečtení tento blogový příspěvek. Řešení napíšu v krátké formě:
- boot ze živého CD s
- použijte
gdisk
(pokud používáte GPT ) jinak byste mohli jít se starým dobrýmfdisk
- poznamenat si nastavení svého oddílu, v mém případě
gdisk -l /dev/sdb
- odstraňte svůj oddíl pomocí
- vytvořte nový oddíl se přesně stejným zarovnáním jako ten předchozí (v mém příkladu počínaje blokem 2048)
- napište novou tabulku oddílů
- spustit
partprobe -s
aktualizovat tabulku oddílů bez restartu - změnit velikost fyzického svazku pomocí
pvresize /dev/sdb1
nebo kdekoli je váš pv (použijtepvs
k určení, zda nevíte) - nyní změňte velikost logického svazku pomocí
lvextend -l +100%FREE /dev/file/of/your/lv
, v mém případěsudo lvextend -l +100%FREE /dev/linuxvg/home
- nejprve změnit velikost souborového systému
sudo resize2fs /dev/linuxvg/home
- zkontrolujte konzistenci
sudo e2fsck -f /dev/linuxvg/home
- užijte si 🙂
Commen ts
- Ve skutečnosti můžete vyříznout asi polovinu těchto kroků a provést to pouze s jedním restartováním.
- GParted odmítl změnit velikost oddílu, protože to bylo uzamčeno (tento symbol klíče).
Odpověď
Některé skvělé odpovědi již jsou.
Pokud používáte xfs, použijete místo příkazu resize2fs příkaz
xfs_growfs /mountpoint
. Můžete to udělat, zatímco tento připojovací bod je aktivní, například pokud jste rozrostli kořenový oddíl a po něm není nutné restartovat.
vgextend
, namísto úplného odstranění oddílu. Pokud místo toho vytvoříte existující PV oddíl, pravděpodobně se budete muset restartovat, protože Linux odmítá znovu číst tabulku oddílů, když je disk používán. Práce online je nepříjemná. – Ukažte prosím aktuální tabulku oddílů.