Die Größenänderung eines logischen Volumes in Linux ist nicht sehr schwierig und kann durch einen sehr einfachen Ansatz erreicht werden. Hier sind die üblichen Schritte:
- Erstellen Sie eine neue Partition auf der Festplatte.
- Fügen Sie die soeben erstellte Partition als physikalisches Volume hinzu.
- Fügen Sie den neuen physischen Datenträger zur Datenträgergruppe hinzu.
- Ordnen Sie dem logischen Volume Speicherplatz aus der Volume-Gruppe zu.
- Größe des Dateisystems ändern.
Aber in diesem Szenario haben Sie das Root-Dateisystem (als LVM-Partition) unter einer erweiterten Partition gemountet, nicht innerhalb einer primären Partition. Sie haben nur eine primäre Partition, die auf /boot gemountet wird, und der restliche Speicherplatz ist Teil dieser erweiterten Partition.
Klingt lästig? Lassen Sie mich Ihnen zeigen, wie Sie die Größe von LVM innerhalb einer erweiterten Partition ändern.
Größe der LVM-Partition innerhalb der erweiterten Partition ändern
Ich verwende in diesem Tutorial ein Linux, das in einer virtuellen Maschine installiert ist.
Bitte denken Sie daran, dass Sie beim Umgang mit Festplattenpartitionen sehr vorsichtig sein sollten.Schritt 1: Fahren Sie Ihre VM herunter und erhöhen Sie die Festplattengröße
Fahren Sie zuerst Ihre VM herunter und erhöhen Sie die Festplattengröße. Hier habe ich die Größe der Festplatte /dev/sda um 20 GB auf etwa 40 GB erhöht. Starten Sie dann Ihre VM und gehen Sie zur Konsole.
Sehen Sie sich unsere Festplattenpartitionen an.
[email protected]:~# fdisk -l
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 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: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 501758 41940991 20719617 5 Extended
/dev/sda5 501760 41940991 20719616 8e Linux LVM
Wenn Sie den Speicherplatz mit dem Befehl df analysieren, wird mir Folgendes angezeigt:
[email protected]:~# df -hT
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 989M 4.0K 989M 1% /dev
tmpfs tmpfs 201M 716K 200M 1% /run
/dev/dm-0 ext4 19G 1.5G 16G 9% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 1001M 0 1001M 0% /run/shm
none tmpfs 100M 0 100M 0% /run/user
/dev/sda1 ext2 236M 40M 184M 18% /boot
Hier ist das Ziel, die Größe der Partition /dev/dm-0 zu erhöhen, die auf /dev/sda5 gemountet wird.
Lassen Sie mich auch den aktuellen Status von physischen Datenträgern, Datenträgergruppen und logischen Datenträgern anzeigen:
[email protected]:~# lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
root ubuntu14-vg -wi-ao--- 18.74g
swap_1 ubuntu14-vg -wi-ao--- 1020.00m
[email protected]:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 ubuntu14-vg lvm2 a-- 19.76g 20.00m
[email protected]:~# vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu14-vg 1 2 0 wz--n- 19.76g 20.00m
Allen sind etwa 20 GB Speicherplatz zugewiesen.
Schritt 2:Beginnen Sie mit dem LVM-Resizing-Prozess
Hier sind die Schritte zum Ändern der Größe der LVM-Partition:
Öffnen Sie das fdisk-Dienstprogramm und sehen Sie sich die Partitionen an:
[email protected]:~# fdisk /dev/sda
Command (m for help): p
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 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: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 501758 41940991 20719617 5 Extended
/dev/sda5 501760 41940991 20719616 8e Linux LVM
Löschen Sie die erweiterte Partition (/dev/sda2) mit dem Befehl d
, wodurch automatisch die zugrunde liegende LVM-Partition gelöscht wird, die /dev/sda5.
Command (m for help): d
Partition number (1-5): 2
Erstellen Sie mit dem Befehl n
erneut eine neue Partition als erweitert mit voreingestellten Start- und Endzylinderwerten.
Command (m for help): n
Partition type:
p primary (1 primary, 0 extended, 3 free)
e extended
Select (default p): e
Partition number (1-4, default 2):
Using default value 2
First sector (499712-83886079, default 499712):
Using default value 499712
Last sector, +sectors or +size{K,M,G} (499712-83886079, default 83886079):
Using default value 83886079
Command (m for help): p
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 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: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 499712 83886079 41693184 5 Extended
Erstellen Sie eine logische Partition (dev/sda5) mit den standardmäßigen Start- und Endzylinderwerten.
Command (m for help): n
Partition type:
p primary (1 primary, 1 extended, 2 free)
l logical (numbered from 5)
Select (default p): l
Adding logical partition 5
First sector (501760-83886079, default 501760):
Using default value 501760
Last sector, +sectors or +size{K,M,G} (501760-83886079, default 83886079):
Using default value 83886079
Wechseln Sie in den Expertenmodus, indem Sie x
drücken .
Command (m for help): x
Führen Sie den Expertenbefehl b
aus um den Anfang der Partition anzupassen (dies ändert die Partitionsgröße, nicht wo sie endet). Geben Sie den Startwert ein, wie er vor dem Löschen der Partitionen war. Hier ist es 501760.
Expert command (m for help): b
Partition number (1-5): 5
New beginning of data (499713-83886079, default 501760): 501760
Führen Sie dann r
aus um zum Hauptmenü zurückzukehren.
Expert command (m for help): r
Überprüfen Sie die Partitionsnummer, nur um sicherzugehen.
Command (m for help): p
Disk /dev/sda: 42.9 GB, 42949672960 bytes
255 heads, 63 sectors/track, 5221 cylinders, total 83886080 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: 0x000a975f
Device Boot Start End Blocks Id System
/dev/sda1 * 2048 499711 248832 83 Linux
/dev/sda2 499712 83886079 41693184 5 Extended
/dev/sda5 501760 83886079 41692160 83 Linux
Ändern Sie nun den Partitionstyp auf LVM, indem Sie t
drücken Befehl und wählen Sie den Typ 8e
.
Command (m for help): t
Partition number (1-5): 5
Hex code (type L to list codes): 8e
Changed system type of partition 5 to 8e (Linux LVM)
Drücken Sie w
um alle Änderungen auf die Festplatte zu schreiben.
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.
Schritt 3:Nehmen Sie manuelle Änderungen am physischen und logischen Volume vor
Führen Sie den partprobe-Befehl aus, um das Betriebssystem über Änderungen der Partitionstabelle zu informieren:
[email protected]:~# partprobe /dev/sda
Führen Sie den Befehl lsblk aus, um zu sehen, dass /dev/sda5 jetzt etwa 40 GB groß ist (für mich).
[email protected]:~# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 40G 0 disk
├─sda1 8:1 0 243M 0 part /boot
├─sda2 8:2 0 1K 0 part
└─sda5 8:5 0 39.8G 0 part
├─ubuntu14--vg-root (dm-0) 252:0 0 18.8G 0 lvm /
└─ubuntu14--vg-swap_1 (dm-1) 252:1 0 1020M 0 lvm [SWAP]
sr0 11:0 1 1024M 0 rom
Führen Sie den df-Befehl aus und Sie werden feststellen, dass /dev/dm-0 immer noch die alten Größendetails anzeigt:
[email protected]:~# df -hT
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 989M 4.0K 989M 1% /dev
tmpfs tmpfs 201M 716K 200M 1% /run
/dev/dm-0 ext4 19G 1.5G 16G 9% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 1001M 0 1001M 0% /run/shm
none tmpfs 100M 0 100M 0% /run/user
/dev/sda1 ext2 236M 40M 184M 18% /boot
Dasselbe gilt für physische Volumes, Volume-Gruppen und logische Volumes:
[email protected]:~# lvs
LV VG Attr LSize Pool Origin Data% Move Log Copy% Convert
root ubuntu14-vg -wi-ao--- 18.74g
swap_1 ubuntu14-vg -wi-ao--- 1020.00m
[email protected]:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 ubuntu14-vg lvm2 a-- 19.76g 20.00m
[email protected]:~# vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu14-vg 1 2 0 wz--n- 19.76g 20.00m
Hier müssen Sie etwas manuell arbeiten.
Ändern Sie die Größe des physischen Volumes:
[email protected]:~# pvresize /dev/sda5
Physical volume "/dev/sda5" changed
1 physical volume(s) resized / 0 physical volume(s) not resized
Überprüfen Sie nun den Status des physischen Volumes und der Volume-Gruppe und stellen Sie sicher, dass die neue Größe richtig angezeigt wird:
[email protected]:~# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 ubuntu14-vg lvm2 a-- 39.76g 20.02g
[email protected]:~# vgs
VG #PV #LV #SN Attr VSize VFree
ubuntu14-vg 1 2 0 wz--n- 39.76g 20.02g
Ändern Sie auf ähnliche Weise die Größe des logischen Volumes:
[email protected]:~# lvextend -l +100%FREE /dev/ubuntu14-vg/root
Extending logical volume root to 38.76 GiB
Logical volume root successfully resized
Ändern Sie zuletzt die Größe des Dateisystems:
[email protected]:~# resize2fs /dev/ubuntu14-vg/root
resize2fs 1.42.9 (4-Feb-2014)
Filesystem at /dev/ubuntu14-vg/root is mounted on /; on-line resizing required
old_desc_blocks = 2, new_desc_blocks = 3
The filesystem on /dev/ubuntu14-vg/root is now 10161152 blocks long.
Überprüfen Sie den Festplattenstatus und stellen Sie fest, dass LVM jetzt die richtige Größe hat:
[email protected]:~# df -hT
Filesystem Type Size Used Avail Use% Mounted on
udev devtmpfs 989M 4.0K 989M 1% /dev
tmpfs tmpfs 201M 716K 200M 1% /run
/dev/dm-0 ext4 39G 1.5G 35G 4% /
none tmpfs 4.0K 0 4.0K 0% /sys/fs/cgroup
none tmpfs 5.0M 0 5.0M 0% /run/lock
none tmpfs 1001M 0 1001M 0% /run/shm
none tmpfs 100M 0 100M 0% /run/user
/dev/sda1 ext2 236M 40M 184M 18% /boot
Das ist alles! Sie haben die Größe der LVM-Partition innerhalb einer erweiterten Partition erfolgreich geändert.
Fragen oder Anregungen? Hinterlasse unten einen Kommentar.