als je een disk vergroot hebt of via de hypervisor (ESX/KVM, enz) of bv een SAN disk en deze heeft partities zoals bv de boot disk van een linux systeem met LVM dan kan je de partities ook online vergroten. dit werkt ook met filesystemen die direct op een partitie liggen. Let op je kan alleen vergroten niet online verplaatsen. in die voorbeeld gaan we uit van een linux machine waar de boot disk van 8G vergroot is naar 12G. dit is een KVM client maar zoals gezegd werkt dit ook voor ESX clients. de huidige pv is 6.5G
$ sudo pvs PV VG Fmt Attr PSize PFree /dev/vda2 cl lvm2 a-- 6.50g 0
deze ligt op de 2de partitie van /dev/vda. we gaan nu met fdisk de 2de partitie verwijderen en direct weer aan maken van het zelfde type en op de zelfde positie beginnen. de partitie info staat op de eerste sector van de disk en is feitelijk niets anders als een index die alleen gelezen word door de kernel bij het starten of als je er een opdracht voor geeft. zolang je dat niet doet is er niets aan de hand en zal alles gewoon door draaien.
als eerste fdisk starten met de juiste disk. daarna p om de huidige partitie te bekijken.
$ sudo fdisk /dev/vda 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/vda: 12.9 GB, 12884901888 bytes, 25165824 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: 0x000168aa Device Boot Start End Blocks Id System /dev/vda1 * 2048 2099199 1048576 83 Linux /dev/vda2 2099200 15728639 6814720 8e Linux LVM
zoals je kan zien is de size 12.9GB wat belangrijk is de start sector van partitie 2 (2099200) het is belangrijk dat je de partitie die je weer creëert op de zelfde plek begint en zoals in dit geval een primaire is. heb je hier een extended partitie staan moet je dus beide weg gooien en beide weer aan maken. delete de 2de partitie door d te kiezen gevolgd door 2.
dan maak je een nieuwe door n te kiezen. met de juiste waardes in mijn voorbeeld dus een primair na het aanmaken kies nog even de juiste type t voor lvm 8e
Command (m for help): d Partition number (1,2, default 2): 2 Partition 2 is deleted Command (m for help): n Partition type: p primary (1 primary, 0 extended, 3 free) e extended Select (default p): p Partition number (2-4, default 2): First sector (2099200-25165823, default 2099200): Using default value 2099200 Last sector, +sectors or +size{K,M,G} (2099200-25165823, default 25165823): Using default value 25165823 Partition 2 of type Linux and of size 11 GiB is set Command (m for help): t Partition number (1,2, default 2): 2 Hex code (type L to list all codes): 8e Changed type of partition 'Linux' to 'Linux LVM'
nog even een laatste check of alles goed staan, en als alles goed is wegschrijven naar disk met de w van wirte
Command (m for help): p Disk /dev/vda: 12.9 GB, 12884901888 bytes, 25165824 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: 0x000168aa Device Boot Start End Blocks Id System /dev/vda1 * 2048 2099199 1048576 83 Linux /dev/vda2 2099200 25165823 11533312 8e Linux LVM Command (m for help): w The partition table has been altered! Calling ioctl() to re-read partition table. WARNING: Re-reading the partition table failed with error 16: Device or resource busy. The kernel still uses the old table. The new table will be used at the next reboot or after you run partprobe(8) or kpartx(8) Syncing disks.
de juiste indeling staat nu op de disk. nu alleen nog de kernel op de hoogte brengen. dat kan met partprobe. soms zoals in dit geval wil partprobe niet werken en krijg je een foutmelding.
$ sudo partprobe
als dit gebeurt is nog lvm op de hoogte brengen dat er iets gewijzigd is.
$ sudo pvresize /dev/vda2 Physical volume "/dev/vda2" changed 1 physical volume(s) resized / 0 physical volume(s) not resized $ sudo pvs PV VG Fmt Attr PSize PFree /dev/vda2 cl lvm2 a-- 11.00g 4.50g /dev/vdb vg_dataintr lvm2 a-- 8.00g 0 /dev/vdc vg_dataintr lvm2 a-- 8.00g 0 /dev/vdd vg_dataintr lvm2 a-- 8.00g 0
disk vergroot.
Recente reacties