fdisk

Aus wiki.archlinux.de

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
  • p – Zur eigenen Kontrolle vor dem Speichern
  • w – Schreiben 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
  • p – Zur eigenen Kontrolle vor dem Speichern
  • 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
  • p – Zur eigenen Kontrolle vor dem SpeicherZ
  • 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
  • p – Zur eigenen Kontrolle vor dem Speichern
  • w – Schreiben der Partitionstabelle

siehe auch