Festplattenpartitionen sind die Grundlage für das Speichern unserer Daten auf Festplatten. Um mit Partitionen umgehen zu können, fügen wir in diesem Teil des RHCSA-Prüfungsvorbereitungstutorials unserem RHEL 8-Testsystem eine leere Festplatte hinzu und erstellen, listen und löschen eine neue Partition darauf. Zuerst verwenden wir das klassische MBR-Setup (Master Boot Record), dann machen wir dasselbe mit dem GPT-Setup (GUID Partitioning Table). GPT ist eine fortschrittlichere Partitionierungstechnik, die große Partitionen zulässt, während MBR auf 2 TB Speicherplatz pro Partition begrenzt ist. Wenn das also im Moment keine sehr einschränkende Größe zu sein scheint, denken Sie an den Trend der Festplattennutzung, der aus der Sicht des Endbenutzers vielleicht nicht so stark ist, aber sicherlich aus der Sicht der Linux-Systemadministration.
In diesem Tutorial lernen Sie:
- So erstellen Sie eine neue MBR-Partition mit fdisk
- Wie man klassische Partitionen mit fdisk auflistet
- So löschen Sie eine Partition mit fdisk
- So erstellen Sie eine GPT-Partition mit gdisk
- Wie man GPT-Partitionen auflistet
- So löschen Sie GPT-Partitionen
1 GB Partition mit fdisk erstellen
Softwareanforderungen und verwendete Konventionen
Kategorie | Anforderungen, Konventionen oder verwendete Softwareversion |
---|---|
System | Red Hat Enterprise Linux 8.0 |
Software | util-linux 2.32.1, gdisk 1.0.3 |
Andere | Privilegierter Zugriff auf Ihr Linux-System als root oder über sudo Befehl. |
Konventionen | # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden |
Partitionen verwalten
Die Partitionierung ist der erste Schritt zur Erweiterung des Speicherplatzes, der vom System zum Speichern von Daten verwendet werden kann. Wir behandeln sowohl die MBR- als auch die GPT-Partitionierung, das Erstellen, Auflisten und schließlich das Löschen von Partitionen.
Wenn eine Festplatte bereits wertvolle Daten enthält, erstellen Sie immer eine Sicherungskopie, bevor Sie Partitionen ändern, nur für den Fall. Während das Hinzufügen neuer Partitionen zu leerem Festplattenspeicher Daten nicht schadet, wird das Löschen einer Partition genau das tun und alles auf dieser Partition zerstören.
In unserem Testaufbau hat unser System gerade eine nagelneue 2GB Festplatte erhalten, die zur Partitionierung bereitsteht. Es ist komplett roh, es sind keine Daten oder Dateisysteme vorhanden, daher ist es für uns absolut sicher, die Partitionierung nach Belieben zu ändern. Unsere primäre Festplatte, die das Betriebssystem enthält, heißt /dev/sda
das ist 15 GB groß, während die neue Festplatte von unserem System als /dev/sdb
erkannt wird . Wir sehen das Partitionierungslayout im ersten Schritt.
- Um Partitionen aufzulisten, können wir
fdisk
verwenden . Wir tun dies, um unser Setup beim Start zu sehen.# fdisk -l Disk /dev/sda: 15 GiB, 16106127360 bytes, 31457280 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 Disklabel type: dos Disk identifier: 0x906d1ee8 Device Boot Start End Sectors Size Id Type /dev/sda1 * 2048 2099199 2097152 1G 83 Linux /dev/sda2 2099200 31457279 29358080 14G 8e Linux LVM Disk /dev/sdb: 2 GiB, 2147483648 bytes, 4194304 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 /dev/mapper/rhel-root: 12.5 GiB, 13417578496 bytes, 26206208 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 /dev/mapper/rhel-swap: 1.5 GiB, 1610612736 bytes, 3145728 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
In der Ausgabe können wir sehen, dass wir die Hauptfestplatte
/dev/sda
haben mit zwei Partitionen,/dev/sda1
und/dev/sda2
darauf. Wir können unser neues leeres/dev/sdb
sehen ohne Partitionen sowie die logischen Volumes, die das System enthält. Für dieses Tutorial ignorieren wir alles andere und konzentrieren uns auf die leere Festplatte. - Um eine neue Partition auf der leeren Festplatte zu erstellen, stellen wir sie als Argument für
fdisk
bereit :# fdisk /dev/sdb Welcome to fdisk (util-linux 2.32.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command.
Die
fdisk
Dienstprogramm erwartet unsere Befehle. Wir möchten eine neue Partition erstellen, also drücken wir „n“.Command (m for help): n
Wir sollen eine primäre Partition erstellen, daher lautet die Antwort auf die nächste Frage „p“.
Partition type p primary (0 primary, 0 extended, 4 free) e extended (container for logical partitions) Select (default p): p
Die nächsten Fragen beziehen sich auf die Partitionsnummer, den ersten und den letzten Sektor, die die tatsächliche Größe der Partition bestimmen. In unserem Beispiel erstellen wir eine einzelne Partition, die die Festplatte abdeckt, und die Standardwerte sind erste Partition, erster verfügbarer Sektor zum Starten und letzter Sektor zum Beenden, was genau das ist, was wir brauchen. Daher akzeptieren wir die Standardeinstellungen für diese Fragen.
Partition number (1-4, default 1): First sector (2048-4194303, default 2048): Last sector, +sectors or +size{K,M,G,T,P} (2048-4194303, default 4194303): Created a new partition 1 of type 'Linux' and of size 2 GiB.
Wir sind nicht darauf beschränkt, in Sektoren zu zählen, wenn wir das Ende der Partition definieren. Wie das Dienstprogramm angibt, können wir eine genaue Größe angeben. Wenn wir beispielsweise eine Partition mit einer Größe von 1 GB möchten, könnten wir im letzten Sektor Folgendes angeben:
Last sector, +sectors or +size{K,M,G,T,P} (34-4194270, default 4194270): +1G
Die Partition ist jetzt vollständig, aber wie das Dienstprogramm beim Start anzeigt, sind die Änderungen nur so lange im Speicher, bis wir sie auf die Festplatte schreiben. Das ist Absicht und die Warnung hat einen guten Grund:Indem wir die Änderungen auf die Festplatte schreiben, zerstören wir alles, was sich in dem Sektorbereich befand, den wir mit unserer neuen Partition abdecken. Wir sind sicher, dass es keinen Datenverlust geben wird, also schreiben wir die Änderungen auf die Festplatte:
Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks.
Um sicherzustellen, dass das Betriebssystem von den Änderungen weiß, führen wir
partprobe
aus :# partprobe
Wir können den
fdisk -l
verwenden Funktion, um genauer zu sein, indem Sie den Gerätenamen hinzufügen, an dem wir interessiert sind.# fdisk -l /dev/sdb Disk /dev/sdb: 2 GiB, 2147483648 bytes, 4194304 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 Disklabel type: dos Disk identifier: 0x29ccc11b Device Boot Start End Sectors Size Id Type /dev/sdb1 2048 4194303 4192256 2G 83 Linux
Und in der Ausgabe können wir sehen, dass unsere Festplatte jetzt einen neuen
/dev/sdb1
enthält Partition, die einsatzbereit ist. - Das Löschen einer Partition ist im Grunde der gleiche Vorgang rückwärts. Das Dienstprogramm ist logisch aufgebaut:Wir geben das Gerät an, auf dem wir arbeiten möchten, und wenn wir die Partitionslöschung mit dem Befehl „d“ auswählen, wird unsere einzige Partition ohne Frage gelöscht, da sich nur eine auf der befindet disk.
# fdisk /dev/sdb Welcome to fdisk (util-linux 2.32.1). Changes will remain in memory only, until you decide to write them. Be careful before using the write command. Command (m for help): d Selected partition 1 Partition 1 has been deleted.
Dies ist zwar sehr praktisch, aber beachten Sie, dass dieses Tool es wirklich einfach macht, Daten mit einem einzigen Tastendruck von der Festplatte zu löschen. Deshalb sind alle Warnungen vorhanden, Sie müssen wissen, was Sie tun. Es gibt immer noch Sicherheitsvorkehrungen, auf der Festplatte ändert sich nichts, bis wir es geschrieben haben.
Command (m for help): w The partition table has been altered. Calling ioctl() to re-read partition table. Syncing disks. # partprobe # fdisk -l /dev/sdb Disk /dev/sdb: 2 GiB, 2147483648 bytes, 4194304 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 Disklabel type: dos Disk identifier: 0x29ccc11b
- Um ein GPT-basiertes Partitionslayout zu erstellen, verwenden wir
gdisk
(GPT fdisk)-Dienstprogramm. Das Innenleben wird Ihnen vertraut sein, wenn Sie von Anfang an dieses Tutorial lesen.# gdisk /dev/sdb GPT fdisk (gdisk) version 1.0.3 Partition table scan: MBR: MBR only BSD: not present APM: not present GPT: not present *************************************************************** Found invalid GPT and valid MBR; converting MBR to GPT format in memory. THIS OPERATION IS POTENTIALLY DESTRUCTIVE! Exit by typing 'q' if you don't want to convert your MBR partitions to GPT format! *************************************************************** Command (? for help): n Partition number (1-128, default 1): First sector (34-4194270, default = 2048) or {+-}size{KMGTP}: Last sector (2048-4194270, default = 4194270) or {+-}size{KMGTP}: Current type is 'Linux filesystem' Hex code or GUID (L to show codes, Enter = 8300): Changed type of partition to 'Linux filesystem' Command (? for help): w Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): Y OK; writing new GUID partition table (GPT) to /dev/sdb. The operation has completed successfully.
Vom Punkt der Befehle aus haben wir dasselbe getan, das Erstellen einer neuen Partition mit „n“ eingeleitet, die Standardeinstellungen akzeptiert, die die gesamte Festplatte mit der neuen Partition abdecken, und dann die Änderungen auf die Festplatte geschrieben. Zwei neue Warnungen erscheinen, die erste ist nur da, weil wir dieselbe Festplatte mit
fdisk
partitioniert haben früher, was vongdisk
erkannt wurde . Das letzte ist ein zusätzliches "sind Sie sicher?" Art Frage, bevor wir die arme Platte endlich überschreiben dürfen. - Das Auflisten von GPT-Partitionen erfordert denselben Wechsel zu
gdisk
:# gdisk -l /dev/sdb GPT fdisk (gdisk) version 1.0.3 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Disk /dev/sdb: 4194304 sectors, 2.0 GiB Sector size (logical/physical): 512/512 bytes Disk identifier (GUID): 3AA3331F-8056-4C3E-82F3-A67254343A05 Partition table holds up to 128 entries Main partition table begins at sector 2 and ends at sector 33 First usable sector is 34, last usable sector is 4194270 Partitions will be aligned on 2048-sector boundaries Total free space is 2014 sectors (1007.0 KiB) Number Start (sector) End (sector) Size Code Name 1 2048 4194270 2.0 GiB 8300 Linux filesystem
fdisk
erkennt auch, dass die Platte partitioniert ist:# fdisk -l /dev/sdb Disk /dev/sdb: 2 GiB, 2147483648 bytes, 4194304 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 Disklabel type: gpt Disk identifier: 3AA3331F-8056-4C3E-82F3-A67254343A05 Device Start End Sectors Size Type /dev/sdb1 2048 4194270 4192223 2G Linux filesystem
- Das Löschen der von uns erstellten GPT-Partition erfolgt ähnlich wie im MBR-Fall, mit der zusätzlichen Plausibilitätsprüfung hinzugefügt:
# gdisk /dev/sdb GPT fdisk (gdisk) version 1.0.3 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Command (? for help): d Using 1 Command (? for help): w Final checks complete. About to write GPT data. THIS WILL OVERWRITE EXISTING PARTITIONS!! Do you want to proceed? (Y/N): Y OK; writing new GUID partition table (GPT) to /dev/sdb. The operation has completed successfully.
Das Auflisten der Festplatte zeigt nun, dass wir die GPT-Partition tatsächlich von der Festplatte gelöscht haben.
# gdisk -l /dev/sdb GPT fdisk (gdisk) version 1.0.3 Partition table scan: MBR: protective BSD: not present APM: not present GPT: present Found valid GPT with protective MBR; using GPT. Disk /dev/sdb: 4194304 sectors, 2.0 GiB Sector size (logical/physical): 512/512 bytes Disk identifier (GUID): 3AA3331F-8056-4C3E-82F3-A67254343A05 Partition table holds up to 128 entries Main partition table begins at sector 2 and ends at sector 33 First usable sector is 34, last usable sector is 4194270 Partitions will be aligned on 2048-sector boundaries Total free space is 4194237 sectors (2.0 GiB) Number Start (sector) End (sector) Size Code Name
Übungen
- Erstellen Sie mehrere Partitionen auf derselben Festplatte. Überprüfen Sie ihre Kapazität und ihren Gerätenamen.
- Partition auf einem GPT-Datenträger mit
fdisk
erstellen . Bewältigt Ihre Version beide Typen? - Testen Sie die in
fdisk
integrierten Sicherheitsgurte undgdisk
Dienstprogramme. Versuchen Sie, Sektoren außerhalb des zulässigen Bereichs anzugeben, den ersten Sektor größer als den letzten usw.