mic.we
Goto Top

Partition online vergößern in CentOS 7 ohne LVM

Hallo @ all,

da ich nun schon den 2. Tag an meinem Problem hänge stelle ich das hier nun mal als Frage rein.

Ich habe eine CentOS 7 - VM (3.10.0-514.16.1.el7.x86_64) und möchte eine der Partitionen online ohne System-Neustart vergrößern. Es handelt sich dabei um eine normale Partition, keine LVM-Partition. Ich habe dazu die virtuelle Festplatte im VMWare-Center vergrößert. Ich habe dann in der VM folgendes Script ausgeführt.

rescan-scsi-bus.sh --forcerescan

Damit sind die Geräteinformationen neu eingelesen worden und ich habe nun folgenden Stand.

/dev/sdb    = 8 GB
/dev/sdb1  = 4 GB (XFS, /var/log)

Die Partition "sdb1" soll nun auf die max-Größe von "sdb" erweitert werden.

Meine eigenen Recherchen ergaben, der Befehl "parted" wäre geeignet. Leider in der Distibution nur in der Version 3.1 vorhanden, hier fehlt die erforderliche Option (resize) zum erweitern einer Partition (wurde in einer früheren Version mal heraus genommen).

Als Variante 2 habe ich den Befehl "resizepart" gefunden der möglicherweise in Frage käme. Zu diesem Befehl habe ich leider keine vernünftigen Beschreibungen bzw. Beispiele gefunden.
OK, die Hilfe sagt

resizepart <disk device> <partition number> <length>


Das ist bis auf die Option Länge alles klar. Die Länge bzw. Größe muss hier in Blöcken angegeben werden.

Hier ist nun meine eigentliche Frage:
  • Wie bekomme ich den richtigen Wert für die Anzahl der Blöcke heraus?
  • Ist das überhaupt der richtige Weg?
  • Gibt es eine andere, vieleicht bessere Möglichkeit?



vielen Dank schon mal im Voraus

Content-Key: 336838

Url: https://administrator.de/contentid/336838

Printed on: April 26, 2024 at 13:04 o'clock

Member: holli.zimmi
holli.zimmi May 04, 2017 at 11:28:17 (UTC)
Goto Top
Hi,

•Wie bekomme ich den richtigen Wert für die Anzahl der Blöcke heraus?

im Wirt System den Befehl ausführen:
fdisk -l  <Name der VM>

Wenn ich mich nicht irre!

Gruß

Holli
Member: mic.we
mic.we May 04, 2017 at 12:17:29 (UTC)
Goto Top
Den Befehl habe ich auch schon verwendet. Bei der Ausgabe für sdb kann ich keine Werte für Blöcke finden.

Disk /dev/sdb: 8589 MB, 8589934592 bytes, 16777216 sectors
Units = Sektoren 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: 0x000c40fa

Gerät boot. Anfang Ende Blöcke Id System
/dev/sdb1 2048 8388607 4193280 83 Linux
Member: mic.we
mic.we May 04, 2017 at 12:51:20 (UTC)
Goto Top
habe jetzt eine Befehl gefunden, der das wohl macht was ich brauche.

cat /proc/patitions

Die Ausgabe sieht wie folgt aus

major minor  #blocks  name
   8       16    8388608 sdb
   8       17    4193280 sdb1

resizepart /dev/sdb 1 8388608

führte leider nicht zum gewünschten Ergebnis. Die Partitionsgröße von sdb1 hat sich nicht geändert.
Member: Lochkartenstanzer
Lochkartenstanzer May 05, 2017 updated at 08:07:17 (UTC)
Goto Top
Zitat von @mic.we:

habe jetzt eine Befehl gefunden, der das wohl macht was ich brauche.

cat /proc/patitions

Die Ausgabe sieht wie folgt aus

> major minor  #blocks  name
>    8       16    8388608 sdb
>    8       17    4193280 sdb1
> 

> resizepart /dev/sdb 1 8388608
> 

führte leider nicht zum gewünschten Ergebnis. Die Partitionsgröße von sdb1 hat sich nicht geändert.

Kein Wunder, resizepart ändert ja auch keine Partitionen auf der Platte, sondern sagt nur dem Kernel, wie goßt die Partition ist.

Ändere am besten mit fdisk die Partition (löschen und neu erstellen) und dann kannst Du mit resizepart dem kernel sagen, wie große die Partition ist. ggf mußt Du noch mir resize2fs das Dateisystem anpassen (falls es ein ext-filesystem ist).

lks

PS: Entweder vorher backup machen oder der einafchheit halber "offlien" durchführen.
Member: Lochkartenstanzer
Lochkartenstanzer May 05, 2017 updated at 10:29:29 (UTC)
Goto Top
Moin,

das funktioneirt mit jeder Linux-variante:

Vergrößern:

  • Mit fdisk Partition löschen und neu anlegen (an gleichem Anfangsblock)
  • Mit resize2fs Filesystem anpassen

Beim verkleinern, muß man zuerst mit resize2fs das fs verkleinern und dann erst mit fdisk die Partition löschen/anlegen.

lks