Partitionsgrößenbeschränkung bei großen Festplatten

Last change on 2020-12-18 • Created on 2020-03-17 • ID: RO-717C5

Einleitung

Die Nutzung eines Datenträgers mit GPT als Systemfestplatte wird von allen aktuellen Standardimages außer CentOS 6.x unterstützt und vom installimage Skript automatisch angelegt. Diese wird benötigt um das Partitionsgrößenlimit von 2 Terabyte der älteren MS-DOS Partitionstabelle zu umgehen. Informationen zur MS-DOS Partitionstabelle findet man beispielsweise bei Wikipedia.

Nutzung von MS-DOS Partitionstabelle mit >2TB Festplatten

Bei CentOS und allen älteren Images wird noch die MS-DOS Partitionstabelle verwendet. Damit auch hier die vollen 3 Terabyte der neuen EX Modelle genutzt werden können, wird folgendes Partitionierungsschema bei Festplatten, welche größer als 2 Terabyte sind, standardmäßig verwendet:

PART swap swap 32G
PART /boot ext3 512M
PART / ext4 1024G
PART /home ext4 all

Alle anderen Server nutzen weiterhin das alte Schema:

PART swap swap 2G
PART /boot ext3 512M
PART / ext4 all

Da Partitionen nur maximal 2 Terabyte groß sein können, muss der restliche Speicher in den vorherigen Partitionen aufgeteilt werden. Bei einer 3 Terabyte Festplatte muss daher mindestens 1 TB (jedoch maximal 2TB) unter den vorherigen Partitionen aufgeteilt werden. Es wäre daher auch folgendes Schema vorstellbar:

PART swap swap 32G
PART /boot ext3 512M
PART / ext4 1024G
PART /var ext4 200G
PART /usr ext4 300G
PART /home ext4 all

Bei folgendem Schema könnten die 3 Terabyte jedoch nicht vollständig genutzt werden (da eine Partition maximal 2 Terabyte groß sein kann (/home)):

PART swap swap 32G
PART /boot ext3 512M
PART / ext4 40G
PART /home ext4 all

Auch bei folgendem Schema würden die 3 Terabyte nicht ausgenutzt:

PART swap swap 32G
PART /boot ext3 512M
PART / ext4 40G
PART /var ext4 100G
PART /usr ext4 200G
PART /home ext4 all

Dies liegt im Aufbau begründet. Die letzten 3 Partitionen (/var,/usr,/home) werden in einer erweiterten Partition angelegt, welche wiederum nur maximal 2 Terabyte groß sein kann. Da die ersten 3 Partitionen nicht mindestens 1 Terabyte Größe in der Summe einnehmen, ist hier auch keine volle Nutzung möglich.

In diesem und dem vorherigen Beispiel begrenzt installimage die maximale Partitionsgröße selbstständig auf 2 Terabyte.

Eine weitere Möglichkeit besteht in der Verwendung von LVM. Hier können die Partitionen zu einem großen logischen Volume kombiniert werden.

PART swap swap 32G
PART /boot ext3 512M
PART lvm vg0 1024G
PART lvm vg0 all

LV vg0 root / ext4 all

Nachteil dieser Konfiguration ist die höhere Komplexität und der damit verbundenen Administrationsaufwand.

RAID

Das Größenlimit gilt nur in der Partitionstabelle. Das bedeutet, dass beispielsweise ein Software-RAID mit Level 5 über drei 2-TB-Partitionen eine RAID-Partition mit einer Größe von 4 Terabyte ergibt. Beim Einsatz eines Hardware-RAID-Controllers ist dies nicht der Fall. Dort kann eine Partition maximal 2 Terabyte groß sein.

Hardware RAID Controller

Um die volle Größe der Festplatten nutzen zu können, muss auf die gleichen Festplatten zweimal ein RAID erstellt werden. Ein RAID für die bootfähige Partition, bspw. 200GB groß, und ein RAID für den restlichen Platz der Festplatten.

Beispiel

Als Beispiel werden 3 x 3-TB Festplatten in einem RAID Level 5 System verwendet. Es müssen zwei RAIDs erstellt werden.

  1. ein RAID auf dem das bootfähige System installiert wird, ca. 200GB groß.
  2. ein RAID das den restlichen Speicherplatz der Festplatte belegt. In diesem Beispiel ~ 5,8-TB groß

Adaptec Hardware RAID Controller

Damit der RAID-Controller Festplatten >2-TB erkennt, muss die Firmware mindestens den Build 17911 haben. Sollte dies nicht der Fall sein, wenden Sie sich bitte an unseren Support.

RAID 5 über 200GB für das bootfähige System:

arcconf create 1 LOGICALDEVICE 200000 5 0 0 0 1 0 2 noprompt

RAID 5 über den Rest der Festplatten:

arcconf create 1 LOGICALDEVICE MAX 5 0 0 0 1 0 2 noprompt

Allgemeine Details erhalten Sie hier: Adaptec RAID Controller

LSI Hardware RAID Controller

RAID 5 über 200GB für das bootfähige System:

megacli -CfgLdAdd -r5 [252:0,252:1,252:2] WB ADRA Cached CachedBadBBU -sz200GB -a0

RAID 5 über den Rest der Festplatten:

megacli -CfgLdAdd -r5 [252:0,252:1,252:2] WB ADRA Cached CachedBadBBU -a0

Allgemeine Details erhalten Sie hier: LSI RAID Controller

Installation und Partitionierung

Nun kann das installimage ausgeführt werden. Hier sind einige Anpassungen nötig: Bei Festplatten wird nur /dev/sda verwendet, die Andere(n) müssen mit einem # auskommentiert werden. Außerdem ist das Software RAID auszuschalten (auf 0 zu setzen).

Nach der Installation des Betriebssystems kann eine Partition auf dem zweiten RAID erstellt werden, damit dieses nutzbar wird. Hier wird statt der MSDOS Partitionstabelle eine GPT Partitionstabelle verwendet, welche Partitionen >2-TB ermöglicht. Diese Schritte können im Rescue System durchgeführt werden.

  • gdisk /dev/sdb
  • n für neue Partition
  • mit Enter den Vorgabewert der Partitionsnummer übernehmen
  • mit Enter den Vorgabewert für den Partitionsanfang übernehmen
  • ebenfalls mit Enter den Vorgabewert für das Partitionsende übernehmen
  • Hex Code für den Datentyp der Partition eingeben (0700 für Linux/Windows Daten)
  • mit w werden die Änderungen schließlich gespeichert.

Nun kann die Partition formatiert werden:

mkfs.ext4 /dev/sdb1

Abschließend muss die Datei /etc/fstab um folgenden Eintrag erweitert werden, natürlich entsprechend angepasst:

/dev/sdb1  /mnt  ext4  defaults  0  1
Table of Contents