fdisk
Hinweis: Vor dem Partitionieren sollte man sich mit dem Befehl fdisk -l oder lsblk über die angeschlossenen Festplatten und deren Partitionen einen Überblick verschaffen.
Mit dem Konsolenprogramm fdisk wird die Partitionstabelle eines Datenträgers ausgelesen, verändert oder neu erstellt.
Fdisk besitzt eine interaktive (Schritt für Schritt) Benutzerführung. Alternativ steht cfdisk mit ncurses-Textoberfläche oder sfdisk für den Einsatz in Skripten zur Verfügung.
Installation
Das Programm fdisk ist im Paket util-linux enthalten und gehört zur Standardinstallation. Seit der Version util-linux 2.23 ist fdisk auch GPT geeignet.
Partitionstabelle auslesen
Das Auslesen der aktuellen Partitionstabelle geschieht mit dem Befehl:
# fdisk -l
Partitionieren
Achtung: Das Partitionieren löscht alle Daten auf dem Datenträger.
Eingeleitet wird das Partitionieren mit dem Befehl:
fdisk <Datennträger>
Danach können interaktiv vom Benutzer die weiteren Schritte gewählt werden.
Mit der Eingabe des Buchstabens m
werden alle Möglichkeiten aufgelistet.
Alle Änderungen werden vorerst nur im cache vorgenommen und können mit der Eingabe von q
jederzeit folgenlos abgebrochen werden.
Erst mit der Eingabe von w
wird die neue Partitionstabelle auf den Datenträger geschrieben und die Partitionierung abgeschlossen.
Beispiel
Zur Veranschaulichung hier ein Beispiel mit allen Ausgaben und Eingaben.
Der Datenträger /dev/sda soll für die Einrichtung mit Arch-Linux neu partitioniert werden.
Da der PC ein BIOS besitzt und der Datenträger kleiner als 2TiB ist, kann eine DOS-Partitionstabelle (MBR) genutzt werden.
Die erste Partition soll für root (/) mit 40G und aktivierten Bootflags,
die zweite Partition für swap mit 4G und
der Rest der Platte für /home partitioniert werden.
# fdisk /dev/sda
Willkommen bei fdisk (util-linux 2.35.2).
Änderungen werden vorerst nur im Speicher vorgenommen, bis Sie sich
entscheiden, sie zu schreiben.
Seien Sie vorsichtig, bevor Sie den Schreibbefehl anwenden.
Befehl (m für Hilfe): o
Eine neue DOS-Festplattenbezeichnung 0x75b8e874 wurde erstellt.
Befehl (m für Hilfe): n
Partition type
p primary
e extended
Wählen (Vorgabe p): [Return]
Partitionsnummer (1-4, Vorgabe 1): [Return]
Erster Sektor (2048-1953458175, Vorgabe 2048): [Return]
Letzter Sektor, +/-Sektoren oder +/-Größe{K,M,G,T,P} (2048-1953458175, Vorgabe 1953458175): +40G
Eine neue Partition 1 des Typs »Linux« und der Größe 40 GiB wurde erstellt.
Befehl (m für Hilfe): a
Partition 1 ausgewählt
Die Bootfähig-Markierung auf Partition 1 ist nun aktiviert.
Befehl (m für Hilfe): n
Partitionstyp
p Primär (1 primär, 0 erweitert, 3 frei)
e Erweitert (Container für logische Partitionen)
Wählen (Vorgabe p): [Return]
Partitionsnummer (2-4, Vorgabe 2): [Return]
Erster Sektor (83888128-1953458175, Vorgabe 83888128): [Return]
Letzter Sektor, +/-Sektoren oder +/-Größe{K,M,G,T,P} (83888128-1953458175, Vorgabe 1953458175): +4G
Eine neue Partition 2 des Typs »Linux« und der Größe 4 GiB wurde erstellt.
Befehl (m für Hilfe): t
Partitionsnummer (1,2, Vorgabe 2): [Return]
Hexadezimalcode (geben Sie L ein, um alle Codes aufzulisten): 82
Partitionstyp von »Linux« nach »Linux swap / Solaris« geändert.
Befehl (m für Hilfe): n
Partitionstyp
p Primär (2 primär, 0 erweitert, 2 frei)
e Erweitert (Container für logische Partitionen)
Wählen (Vorgabe p): [Return]
Standardantwort p wird verwendet.
Partitionsnummer (3,4, Vorgabe 3): [Return]
Erster Sektor (92276736-1953458175, Vorgabe 92276736): [Return]
Letzter Sektor, +/-Sektoren oder +/-Größe{K,M,G,T,P} (92276736-1953458175, Vorgabe 1953458175): [Return]
Eine neue Partition 3 des Typs »Linux« und der Größe 887,5 GiB wurde erstellt.
Befehl (m für Hilfe): p
Festplatte /dev/sda: 931,49 GiB, 1000170586112 Bytes, 1953458176 Sektoren
Festplattenmodell: Elements 25A2
Einheiten: Sektoren von 1 * 512 = 512 Bytes
Sektorgröße (logisch/physikalisch): 512 Bytes / 512 Bytes
E/A-Größe (minimal/optimal): 512 Bytes / 512 Bytes
Festplattenbezeichnungstyp: dos
Festplattenbezeichner: 0x09bf51e9
Gerät Boot Anfang Ende Sektoren Größe Kn Typ
/dev/sda1 * 2048 83888127 83886080 40G 83 Linux
/dev/sda2 83888128 92276735 8388608 4G 82 Linux Swap / Solaris
/dev/sda3 92276736 1953458175 1861181440 887,5G 83 Linux
Befehl (m für Hilfe): w
Partitionstabelle sichern
Mit dem Befehl
# sfdisk -d /dev/sda > sda.dump
kann die Partitionstabelle gesichert und mit dem Befehl
# sfdisk /dev/sda < sda.dump
wieder hergestellt oder auf andere Festplatten übertragen werden.
Weitere Beispiele
(Bei den folgenden Beispielen ist lediglich die Eingabe notiert.)
Für /dev/sdx ist jeweils das konkrete Laufwerk zu setzen.
1 Partition
fdisk /dev/sdx
– Starten von fdisk- o – Erstellt eine leere Partitionstabelle (im cache).
- n – Erstellen einer neuen Partition
- ↵ Enter – Primarpatition bestätigen
- ↵ Enter – Partitionsnummer bestätigen
- ↵ Enter – Ersten Sektor bestätigen
- ↵ Enter – Letzten Sektor bestätigen
- w – Speichern der Partitionstabelle
Root Partition mit aktiviertem Bootsektor
Minimalvariante für die Installation auf einem BIOS-Boot-System.
fdisk /dev/sdx
– Starten von fdisk- o – Erstellt eine leere Partitionstabelle (im cache).
- n – Erstellen einer neuen Partition
- ↵ Enter – Primarpatition bestätigen
- ↵ Enter – Partitionsnummer bestätigen
- ↵ Enter – Ersten Sektor bestätigen
- ↵ Enter – Letzten Sektor bestätigen
- a – Bootsektor aktivieren
- w – Schreiben der Partitionstabelle
Swap Partition +4G und root mit aktiviertem Bootsektor
In diesem Beispiel kommt eine Swap Partition von 4GiB hinzu.
fdisk /dev/sdx
– Starten von fdisk- o – Erstellt eine leere Partitionstabelle (im cache).
- n – Erstellen einer neuen Partition
- ↵ Enter – Primarpatition bestätigen
- ↵ Enter – Partitionsnummer bestätigen
- ↵ Enter – Ersten Sektor bestätigen
- +4G – Volumen bestimmen (hier 4G)
- t – Partitionstyp wählen
- ↵ Enter – Partitionsnummer für den Typ bestätigen
- 82 – Partitionstyp auf Linux swap setzen
- n – Erstellen einer neuen Partition
- ↵ Enter – Primarpatition bestätigen
- ↵ Enter – Partitionsnummer bestätigen
- ↵ Enter – Ersten Sektor bestätigen
- ↵ Enter – Letzten Sektor bestätigen
- a – Bootsektor aktivieren
- w – Schreiben der Partitionstabelle
Home Partition, swap +4G und root mit aktiviertem Bootsektor
Dieses Beispiel entspricht dem oben aufgeführten mit einer root Partition von 40G, swap 4G und der Rest des Datenträgers wird für die home Partition eingerichtet.
fdisk /dev/sdx
– Starten von fdisk- o – Erstellt eine leere Partitionstabelle (im cache).
- n – Erstellen einer neuen Partition
- ↵ Enter – Primarpatition bestätigen
- ↵ Enter – Partitionsnummer bestätigen
- ↵ Enter – Ersten Sektor bestätigen
- +40G – Volumen bestimmen (hier 40G)
- a – Bootsektor aktivieren
- n – Erstellen einer neuen Partition
- ↵ Enter – Primarpatition bestätigen
- ↵ Enter – Partitionsnummer bestätigen
- ↵ Enter – Ersten Sektor bestätigen
- +4G – Volumen bestimmen (hier 4G)
- t – Partitionstyp wählen
- ↵ Enter – Partitionsnummer für den Typ bestätigen
- 82 – Partitionstyp auf Linux swap setzen
- n – Erstellen einer neuen Partition
- ↵ Enter – Primarpatition bestätigen
- ↵ Enter – Partitionsnummer bestätigen
- ↵ Enter – Ersten Sektor bestätigen
- ↵ Enter – Letzten Sektor bestätigen
- w – Schreiben der Partitionstabelle