Wie kann ich die Größe einer aktiven LVM-Partition ändern?

10

Ich bin ziemlich neu bei LVM und ich bin mir nicht sicher, was hier passiert. Ich war nicht derjenige, der diese Maschine ursprünglich eingerichtet hat.

Es gibt eine Festplatte mit einer Größe von 1 TB und eine LVM-Partition mit einer Größe von nur 50 GB. Ich kann nicht herausfinden, wie ich den verbleibenden Speicherplatz der Festplatte nutzen kann.

Ausgabe des Befehls df -h:

Filesystem              Size  Used Avail Use% Mounted on
/dev/mapper/vg00-slash   46G  1.4G   42G   4% /
udev                    3.9G  4.0K  3.9G   1% /dev
tmpfs                   1.6G  236K  1.6G   1% /run
none                    5.0M     0  5.0M   0% /run/lock
none                    3.9G     0  3.9G   0% /run/shm
/dev/sda1               232M   29M  191M  14% /boot

Ausgabe des Befehls fdisk -l:

Disk /dev/sda: 1099.5 GB, 1099511627776 bytes
255 heads, 63 sectors/track, 133674 cylinders, total 2147483648 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: 0x00038096

   Device Boot      Start         End      Blocks   Id  System
 /dev/sda1   *        2048      499711      248832   83  Linux
 /dev/sda2          501758   104855551    52176897    5  Extended
 /dev/sda5          501760   104855551    52176896   8e  Linux LVM

Disk /dev/mapper/vg00-swap: 3997 MB, 3997171712 bytes
255 heads, 63 sectors/track, 485 cylinders, total 7806976 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/vg00-swap doesn't contain a valid partition table

Disk /dev/mapper/vg00-slash: 49.4 GB, 49429872640 bytes
255 heads, 63 sectors/track, 6009 cylinders, total 96542720 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/vg00-slash doesn't contain a valid partition table

Ich gehe davon aus, dass ich eine neue Partition auf / dev / sda erstellen musste, um den verbleibenden Speicherplatz zu enthalten. Beim Versuch, eine neue primäre Partition zu erstellen, wird mir jedoch mitgeteilt, dass dies nicht möglich ist.

Last sector, +sectors or +size{K,M,G} (499712-501757, default 501757): +800G
Value out of range.

Ich weiß nicht, was ich jetzt tun kann ...


Beim Versuch, die Größe des logischen Volumes zu ändern, wird Folgendes angezeigt:

# lvresize vg00/slash -L +800g
Extending logical volume slash to 846.04 GiB
Insufficient free space: 204800 extents needed, but only 0 available

# pvdisplay -m
--- Physical volume ---
PV Name               /dev/sda5
VG Name               vg00
PV Size               49.76 GiB / not usable 2.00 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              12738
Free PE               0
Allocated PE          12738
PV UUID               WNZba3-bCCs-NmqL-Bc9v-zusy-TtfQ-BpAj3e

--- Physical Segments ---
Physical extent 0 to 952:
  Logical volume      /dev/vg00/swap
  Logical extents     0 to 952
Physical extent 953 to 12737:
  Logical volume      /dev/vg00/slash
  Logical extents     0 to 11784

(parted) print free                                                       
Model: VMware Virtual disk (scsi)
Disk /dev/sda: 1100GB
Sector size (logical/physical): 512B/512B
Partition Table: msdos

Number  Start   End     Size    Type      File system  Flags
        32.3kB  1049kB  1016kB            Free Space
 1      1049kB  256MB   255MB   primary   ext4         boot
        256MB   257MB   1048kB            Free Space
 2      257MB   53.7GB  53.4GB  extended
 5      257MB   53.7GB  53.4GB  logical                lvm
        53.7GB  1100GB  1046GB            Free Space
Alex Dow
quelle

Antworten:

2

Es sieht so aus, als würden Sie versuchen, eine neue primäre Partition zwischen Ihrer aktuellen /dev/sda1und Ihrer hinzuzufügen /dev/sda2. (Beweis: fdisksagt, dass die akzeptablen Bereiche von Endpunkten 499712-501757, default 501757zwischen diesen beiden Partitionen liegen.) Dafür ist einfach nicht genug Platz vorhanden. Weisen Sie stattdessen fdiskan , die Partition bei 104855552(oder später) zu beginnen und den Standardendwert anzugeben (es sei denn, Sie möchten Speicherplatz für einen anderen Zweck sparen). Dies sollte Ihnen eine Partition geben, die den Rest des verfügbaren Speicherplatzes nutzt, abzüglich ein wenig Verschwendung am Anfang.

Alternativ können Sie cfdiskGParted oder ein anderes Tool verwenden, das einen visuelleren Ansatz für die Partitionierung bietet, wodurch ein solcher Fehler weniger wahrscheinlich wird.

Rod Smith
quelle
7

Der größte Teil der Festplatte befindet sich bereits in einer LVM-Partition, die von lvm als physisches Volume bezeichnet wird . LVM teilt dann den Speicherplatz von physischen Volumes in logische Volumes auf . Sie können die Verwendung pvsoder pvdisplayBefehle Statistiken über die zeigen , physischen Volumen und lvsoder lvdisplayInformationen über alle die sehen logischen Volumes . Sie sollten sehen, dass im physischen Volume genügend freier Speicherplatz vorhanden ist. Sie können dann lvresizeein logisches Volume erweitern , um mehr Speicherplatz zu nutzen, wie in:

sudo lvresize vg00/slash -L +10g

Dadurch werden dem logischen Volume mit dem Namen slash in der Volume-Gruppe vg00, bei der es sich anscheinend um Ihr Root-Volume handelt, 10 GB hinzugefügt. Danach müssen Sie das Dateisystem erweitern, um diesen Speicherplatz zu verwenden, vorausgesetzt, Sie verwenden das Standard-ext4-Dateisystem mit:

sudo resize2fs /dev/mapper/vg0-slash
psusi
quelle
Ich habe versucht, die Größe des logischen Volumes zu ändern, wurde jedoch darauf hingewiesen, dass keine Extents verfügbar sind. Ich habe meine Frage mit der Ausgabe des Befehls bearbeitet.
Alex Dow
@ v0idnull, basierend auf Ihren neuen Informationen, ist Ihre lvm-Partition voll, verfügt jedoch über ausreichend nicht partitionierten Speicherplatz. Sie müssen daher nur die Größe ändern, um diesen Speicherplatz einzuschließen. Dann können Sie vergrößern oder logischere Volumes erstellen. Sie können dies mit gpartedoder dem parted resizeBefehl tun . Wenn Sie die partedRoute pvresizewählen, müssen Sie die Partition anschließend ausführen, um lvm über den neuen Speicherplatz zu informieren.
Psusi
Ich musste den Befehl verwenden, xfs_growfsanstatt resize2fseine schlechte magische Zahl für Superblockfehler zu erhalten. Ich bin auf RHEL7
craymichael
2
lvdisplay

gab mir :

--- Logisches Volume ---
LV-Pfad / dev / VolGroup / lv_root

dann

sudo lvextend -L+10g /dev/VolGroup/lv_root
sudo resize2fs /dev/VolGroup/lv_root

löste mein Problem

Laloi
quelle
Das Wachsen ist ziemlich einfach. Zum Schrumpfen müssen Sie vorsichtiger sein, da Sie zuerst die Größe von fs ändern müssen. Sie können auch GUI-Tools verwenden, die normalerweise sicherer sind.
Andrius Štikonas