Příspěvek pojednává o tom, jak rozšířit dostupný prostor ve svazku LVM rozšířením fyzického oddílu disku pomocí fdisk. Tento příklad ukazuje, jak změnit velikost fyzického svazku /dev/sdc1 z 200 MB na 400 MB.
Upozornění na potenciální ztrátu dat :Tento krok odstraní stávající strukturu oddílů a na jeho místě vytvoří nový oddíl. Je nezbytné, aby byl nový oddíl vytvořen přesně ve stejném původu jako odstraněný oddíl, jinak dojde k vážnému poškození a ztrátě dat.Zkontrolujte aktuální konfiguraci
1. Zkontrolujte aktuální velikost fyzického svazku na disku.
# pvdisplay /dev/sdc1 "/dev/sdc1" is a new physical volume of "200.00 MiB" --- NEW Physical volume --- PV Name /dev/sdc1 VG Name PV Size 200.00 MiB Allocatable NO PE Size 0 Total PE 0 Free PE 0 Allocated PE 0 PV UUID EkD95A-wb04-5GHn-OH7N-suVt-vak2-AKSsyv
2. Získejte informace o aktuálním nastavení LVM. Logický svazek, který chceme rozšířit, je „testlv“.
# lvscan ACTIVE '/dev/testvg/testlv' [100.00 MiB] inherit
Deaktivujte stávající logický svazek
1. Než přistoupíme k samotnému rozšíření PV a NN, musíme nejprve deaktivovat logický svazek. Pomocí níže uvedeného příkazu deaktivujete LV.
# lvchange -a n /dev/testvg/testlv
2. Ověřte, zda byla hlasitost deaktivována.
# lvscan inactive '/dev/testvg/testlv' [100.00 MiB] inherit
Nyní víme, že LVM se nepoužívá, takže na něm můžeme zahájit proces rozšíření.
Rozšiřte oddíl „/dev/sda1“ pomocí nástroje fdisk
1. Abychom rozšířili informace o oddílu fyzického zařízení, nejprve odstraníme starý oddíl a poté vytvoříme nový. Všimněte si, že nejprve vytiskneme informace o aktuálním oddílu, abychom přesně věděli, kde oddíl začíná. Musíme překrýt nový, větší oddíl začínající ve stejném bloku jako starý oddíl.
# fdisk /dev/sdc Welcome to fdisk (util-linux 2.23.2). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): p Disk /dev/sdc: 21.5 GB, 21474836480 bytes, 41943040 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 label type: dos Disk identifier: 0x085579f4 Device Boot Start End Blocks Id System /dev/sdc1 2048 411647 204800 83 Linux Command (m for help): d Selected partition 1 Partition 1 is deleted Command (m for help): n Partition type: p primary (0 primary, 0 extended, 4 free) e extended Select (default p): p Partition number (1-4, default 1): 1 First sector (2048-41943039, default 2048): ### we will press ENTER here to select default first sector 2048 Using default value 2048 Last sector, +sectors or +size{K,M,G} (2048-41943039, default 41943039): +400M Partition 1 of type Linux and of size 400 MiB is set Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. Syncing disks.
Tento krok lze kdykoli přerušit před vypsáním změněné tabulky oddílů pomocí „w “příkaz. Do té doby se změní pouze kopie tabulky oddílů v paměti.
O změně tabulek oddílů :Informace o oddílech pro všechny logické jednotky na fyzickém zařízení jsou uchovávány v tabulce oddílů. Příkaz fdisk manipuluje pouze s touto tabulkou oddílů. Zbytek disku je vždy ponechán beze změny. To znamená, že informace v tabulce oddílů lze změnit, ale obsah oddílů se nikdy nedotkne, vždy zůstane nedotčený.Načtěte novou tabulku oddílů do jádra
Aktuálně běžící jádro si není vědomo nových informací o oblasti, protože fdisk mění tabulku oblastí zápisem přímo do zařízení. Normálně jádro čte informace o oddílech pouze při zavádění systému nebo když dojde k události hot-plug (jako je vložení USB zařízení).
Zbytečnému restartu se však můžeme vyhnout tím, že jádro znovu načte informace o oddílech a poté aktualizuje informace o LVM.
# partprobe
Nyní, když si je jádro vědomo aktualizované tabulky oddílů, informujte subsystém LVM o této změně fyzického zařízení. Ve výchozím nastavení použije změna velikosti celou velikost oddílu, jak je získána z tabulky oddílů:
# pvresize /dev/sdc1 Physical volume "/dev/sdc1" changed 1 physical volume(s) resized / 0 physical volume(s) not resized
# pvdisplay /dev/sdc1 --- Physical volume --- PV Name /dev/sdc1 VG Name testvg PV Size 399.00 MiB / not usable 3.00 MiB Allocatable yes PE Size 4.00 MiB Total PE 99 Free PE 74 Allocated PE 25 PV UUID EkD95A-wb04-5GHn-OH7N-suVt-vak2-AKSsyv
Aktivujte stávající logický svazek
Posledním krokem je uvést upravený LVM zpět do provozu. Jako vždy nejprve zkontrolujeme naši práci:
# lvscan ACTIVE '/dev/testvg/testlv' [100.00 MiB] inherit
Jak je vidět z výše uvedeného výstupu, logický svazek je neaktivní. Nejprve jej tedy aktivujte.
# lvchange -a y /dev/testvg/testlv
# /usr/sbin/lvscan ACTIVE '/dev/vgtest/lvtest' [100.00 MB] inherit
Změna velikosti logického svazku (volitelné)
1. Nyní můžete také rozšířit logický svazek, protože nyní máte více místa v podkladovém fyzickém svazku. Pomocí níže uvedeného příkazu změňte velikost LV.
# lvresize -L +200M /dev/testvg/testlv Size of logical volume testvg/testlv changed from 100.00 MiB (25 extents) to 300.00 MiB (75 extents). Logical volume testvg/testlv successfully resized.
2. Ověřte novou velikost logického svazku.
# lvscan ACTIVE '/dev/testvg/testlv' [300.00 MiB] inherit