===== fdisk ===== **Kurzfassung:** ''fdisk'' ist ein klassisches Kommandozeilen-Tool zur Partitionsverwaltung. Es funktioniert hauptsächlich mit MBR (Master Boot Record) und bietet eine interaktive Schnittstelle. Neuere Versionen unterstützen auch GPT. Zielgruppe: Systemadministratoren für MBR-Partitionierung. ==== Übersicht ==== ''fdisk'' ist eines der ältesten und weit verbreiteten Partitionierungswerkzeuge unter Linux. Mit einfachen interaktiven Befehlen können Partitionen erstellt, gelöscht und modifiziert werden. Das Tool ist standardmäßig auf den meisten Linux-Systemen installiert. **Hauptmerkmale:** * MBR-fokussiert (ab Linux-Kernel 5.x auch limitierte GPT-Unterstützung) * Interaktive Schnittstelle mit Menü * Keine destruktiven Änderungen bis zur expliziten Speicherung (''w''-Befehl) * Geringerer Speicherverbrauch, schnelle Ausführung * Kompatibilität mit älteren Systemen ==== Installation ==== # Debian/Ubuntu sudo apt install util-linux # RHEL/CentOS/Fedora sudo dnf install util-linux # fdisk ist meist bereits installiert fdisk --version ==== Grundlegende Befehle ==== === Festplatte analysieren (Lesemodus) === # Alle Festplatten und Partitionen sudo fdisk -l # Nur eine Festplatte sudo fdisk -l /dev/sda # Mit Größenangaben sudo fdisk -l /dev/sda | grep -E "Disk|^/dev" === Festplatte interaktiv bearbeiten === # fdisk starten sudo fdisk /dev/sda # Im fdisk-Menü: m # Hilfe anzeigen (alle Befehle) p # Partitionstabelle anzeigen n # Neue Partition anlegen d # Partition löschen t # Partitionstyp ändern a # Boot-Flag setzen/entfernen w # Änderungen speichern und beenden q # Ohne Speichern beenden ==== Partitionen erstellen ==== === Schritt-für-Schritt Beispiel === # fdisk starten sudo fdisk /dev/sda # Aktuelle Partitionen anzeigen p # Neue Partition erstellen n # "Neue Partition" p # "Primär" (oder e für erweitert) 1 # Partitionsnummer # Default - First Sector +10G # Größe: 10 GB (oder +2048S für Sektoren) # Weitere Partitionen analog # ... # Änderungen anzeigen p # Speichern w === Erweiterte Partitionen und logische Partitionen === # Im fdisk für komplexere Layouts: # Primäre Partition n p 1 [Enter] +20G # Erweiterte Partition (für logische) n e # Erweitert 2 [Enter] [Enter] # Rest der Festplatte # Logische Partition erstellen n l # Logisch (automatische Nummer 5) [Enter] +10G # Weitere logische Partitionen n l [Enter] +15G p # Zur Kontrolle w # Speichern ==== Partitionstypen ==== Die Partitionstyp-ID bestimmt die Partitionsart (Linux, Swap, LVM, RAID, etc.): # Im fdisk Partitionstyp ändern: t 1 # Partitionsnummer 83 # Partitionstyp-ID # Alle verfügbaren Typen anzeigen: t L # Liste aller IDs **Häufige Partitionstypen:** | **ID** | **Beschreibung** | **Verwendung** | | 83 | Linux | Standard Linux Dateisystem | | 82 | Linux Swap | Swap-Bereich | | 8e | Linux LVM | Logisches Volumen-Management | | fd | Linux RAID | RAID-Konfiguration | | ef | EFI System | EFI-Partition (GPT) | | 1 | FAT12 | Alte MS-DOS Partition | | c | FAT32 | Windows FAT32 | ==== Boot-Flag setzen ==== Das Boot-Flag kennzeichnet die Partition, von der das System starten soll (wichtig für MBR): sudo fdisk /dev/sda a # Boot-Flag toggle 1 # Partitionsnummer p # Kontrollieren (* zeigt Bootable) w # Speichern ==== Partitionen löschen ==== sudo fdisk /dev/sda # Einzelne Partition löschen d 1 # Partitionsnummer # Mehrere Partitionen löschen d 2 d 3 d 5 p # Kontrollieren w # Speichern ==== Partitionstabelle backen und wiederherstellen ==== **Wichtig vor größeren Änderungen!** # Backup der Partitionstabelle erstellen sudo sfdisk -d /dev/sda > sda-partition-table.bak # Backup anzeigen cat sda-partition-table.bak # Wiederherstellen aus Backup sudo sfdisk /dev/sda < sda-partition-table.bak # Oder mit dd (MBR-Sektor) sudo dd if=/dev/sda of=sda-mbr-backup bs=512 count=1 sudo dd if=sda-mbr-backup of=/dev/sda bs=512 count=1 ==== Fortgeschrittene Szenarien ==== === Größenberechnungen === # fdisk nutzt Sektoren (üblicherweise 512 Bytes) # Umrechnung: # 1 GB ≈ 2097152 Sektoren (1000^3 / 512) # 1 GiB ≈ 2097152 Sektoren (1024^3 / 512) # In fdisk Größe in Sektoren eingeben: +2097152 # = 1 GiB Partition # Oder Shorthand +100G # = 100 GB +100GiB # = 100 GiB === Non-interaktiv mit Befehlen === # Vorsicht! Keine Fehlertoleranz! sudo fdisk /dev/sda < === Mit sfdisk für Automatisierung === # Komplexe Layouts automatisiert echo " # Partition Table on /dev/sda unit: sectors /dev/sda1 : start= 2048, size=20971520, Id=83 /dev/sda2 : start=20973568, size=41943040, Id=8e " | sudo sfdisk /dev/sda ==== GPT mit fdisk (neuere Versionen ab 2.33+) ==== # fdisk ab Linux 5.x/fdisk 2.33+ unterstützt GPT: sudo fdisk /dev/sda # GPT-Label erstellen (löscht MBR) g # Partitionen wie normal erstellen n 1 [Enter] +512M # EFI Partition n 2 [Enter] [Enter] # Rest # Partitionstyp ändern (bei GPT andere IDs) t 1 1 # EFI System # Speichern w **Hinweis:** Für umfassendere GPT-Arbeit wird `sgdisk` oder `parted` empfohlen. ==== Häufige Fehler und Lösungen ==== **Problem: "Can't add partition: Permission denied"** # Lösung: Mit Sudo ausführen sudo fdisk /dev/sda **Problem: Partitionstabelle beschädigt** # Aus Backup wiederherstellen sudo sfdisk /dev/sda < sda-partition-table.bak # Oder mit testdisk (datenrettung) sudo testdisk /dev/sda **Problem: Partition nach fdisk nicht sichtbar** # Kernel-Partitionstabelle neu laden sudo partprobe /dev/sda # Oder Reboot sudo reboot **Problem: fdisk zeigt falsche Größen** # Partitionstabelle corruptet? Mit sfdisk prüfen sudo sfdisk -V /dev/sda # Oder gparted verwenden sudo gparted /dev/sda ==== Vergleich mit anderen Tools ==== | **Tool** | **Format** | **UI** | **Stärke** | **Schwäche** | | ''fdisk'' | MBR, GPT* | Interaktiv | Klassisch, verbreitet | Alte Schnittstelle | | ''cfdisk'' | MBR, GPT | Menü-UI | Nutzerfreundlicher als fdisk | Weniger Kontrolle | | ''parted'' | MBR, GPT | Kommandozeile | Resize-Operationen, GPT-fokussiert | Komplexe Syntax | | ''sgdisk'' | GPT | Kommandozeile | GPT-Spezialist, Scripts | Kein MBR | | ''gparted'' | MBR, GPT | GUI | Grafisch, sicher | Desktop nur | ==== Best Practices ==== **Empfehlungen:** * Immer ''p'' nutzen, um Änderungen zu prüfen VOR ''w'' * Backup der Partitionstabelle erstellen: `sfdisk -d /dev/sda > backup.bak` * Bei Unsicherheit: Live-CD (GParted Live) verwenden * Non-interaktive Scripts vermeiden (zu fehlerbehaftet) * Nach Änderungen: `partprobe` oder Reboot * Für neue Partitionen: `mkfs.ext4 /dev/sdaX` ausführen **KRITISCH - Datenverlust möglich:** * Falsche Festplatte angeben → Kompletter Datenverlust! * ''w'' speichert ALLE Änderungen sofort * Keine Undo-Funktion - Backup ist essentiell! * Partition mit ''d'' löschen ist permanent (bis Datenrettung) * System-Festplatte niemals ohne Backup ändern ==== Siehe auch ==== * [[sammlung:partitionieren|Partitionieren - Übersicht]] * [[sammlung:cfdisk|cfdisk]] * [[sammlung:parted|parted]] * [[sammlung:sgdisk|sgdisk]] * [[sammlung:gparted|gparted]] * [[sammlung:lvm|LVM - Logisches Volume Management]] * [[sammlung:mount|mount und Dateisystem-Verwaltung]] ==== Quellen ==== * [[https://man7.org/linux/man-pages/man8/fdisk.8.html|fdisk - man page]] * [[https://linux.die.net/man/8/fdisk|fdisk - linux.die.net]] * [[https://linux.die.net/man/8/sfdisk|sfdisk - man page]] ---- {{tag>fdisk partition mbr cli kommandozeile}} ==== Weitere Informationen ==== man fdisk {{tag>cli storage}}