Partition (Datenträger)

Typ von Speicherort auf Festplatten
(Weitergeleitet von Systempartitionierung)

Als Partition (lateinisch partitio ‚(Ein)teilung‘) werden die zusammenhängenden, aufeinanderfolgenden Datenblöcke eines Teils eines Volumes bezeichnet. Das kann der gesamte Speicherplatz oder ein Teil eines geeigneten physischen oder logischen Datenspeichers sein. Eine Partition ist jeweils abermals ein Volume.[1]

Der Begriff Partition wird somit in der Datentechnik wesentlich anders verwendet als in der Mengenlehre, wo eine Partition eher der Partitionierung (Zerlegung) bspw. eines Datenträgers entspricht.

Verwendung

Bearbeiten

Die meisten Betriebssysteme benötigen Partitionstabellen, können aber auch mit nur einer Partition betrieben werden. Eine Partitionstabelle und alle darin definierten Partitionen sind immer Teil eines Volumes, was physischem Datenspeicher wie z. B. einer Festplatte, einer NVMe-SSD oder einem USB-Stick entspricht, oder aber auch bereits logisch einem RAID-Verbund oder einem LVM. Die Nutzung nur einer Partition ist die einfachste Art der Partitionierung, bei der sich die Partition über den gesamten Speicherbereich des Volumes – wie etwa des physischen Datenträgers – erstreckt.

Allerdings sprechen verschiedene Gründe für die Verwendung mehrerer Partitionen:

  • Multi-Boot-System: Partitionen erlauben, mehrere Betriebssysteme auf einer Festplatte zu installieren.
  • Mehrere Dateisysteme: Jede Partition besitzt ihr eigenes Dateisystem, somit können durch Partitionierung verschiedene Dateisysteme auf einem physischen Datenträger angelegt werden. Das erhöht auch die
  • Datensicherheit: Sollte das Dateisystem einer Partition Fehler aufweisen, sind die anderen Partitionen nicht davon betroffen. Das ist besonders vorteilhaft bei einer Neuinstallation des Betriebssystems, da nur dessen Partition formatiert werden kann und Daten auf anderen Partitionen erhalten bleiben.
  • Organisation: Man kann seine Daten dem Zweck nach in verschiedenen Partitionen speichern. So können zum Beispiel die Daten des Systems, Swapping-Daten, die Anwendungsprogramme und die Benutzerdaten auf unterschiedlichen Partitionen liegen, was beispielsweise Datensicherungen erleichtert.
  • Systemsicherheit: Unter vielen unixartigen Systemen ist es möglich, Eigenschaften für einzelne Partitionen festzulegen, beispielsweise etwa ausführbare Dateien (noexec) oder gar jeglichen Schreibzugriff (z. B. read-only root) zu verbieten.
  • Wiederherstellungsvolume (meist als versteckte Partition): Beispiele sind etwa die Windows-Wiederherstellungsumgebung oder das macOS-Wiederherstellungsvolume

Auf einigen Arten von Datenträgern wird von den meisten Betriebssystemen der gesamte physische Speicher als ein physisches Laufwerk verwendet, ohne auf das Konzept der Partitionierung zurückzugreifen.[2] Aus Betriebssystemsicht entspricht sowohl eine logische Partition als auch ein physischer Datenträger ohne Partitionstabelle jeweils einem Volume. Ein darauf vorhandenes Dateisystem erstreckt sich also immer über den gesamten verfügbaren Speicher des Volumes. Der Verzicht auf Partitionierung ist beispielsweise auf Disketten vorzufinden; er ist zu unterscheiden von einem Datenträger, auf dem eine einzige Partition eingerichtet ist, wie es z. B. bei USB-Sticks oder externen Festplatten normalerweise üblich ist.

Konzepte der Partitionierungen

Bearbeiten

Bevor es Festplatten größerer Kapazität gab, war die Begrenzung des Speicherplatzes in physischen Einheiten sozusagen naturgegeben – es gab keine weitere Aufteilung in Untereinheiten. So hatte ein Magnetband in einem Bandlaufwerk eine bestimmte Speicherkapazität, und größere Datenmengen mussten auf mehrere Magnetbänder verteilt werden. Als Inhaltsverzeichnis wurde beispielsweise VTOC verwendet.

Im Laufe der Zeit wurde die Kapazität von Speichermedien jedoch größer. Im sich entwickelnden Personal-Computing-Bereich beispielsweise wurde der IBM PC XT von 1983 erstmals auch mit internen Festplatten verkauft. Auch in Apples Macintosh XL von 1985 steckte optional eine Festplatte ab Werk. Da Festplatten eine viel größere Speicherkapazität als Disketten aufweisen, wurde die Möglichkeit geschaffen, diese in Partitionen zu unterteilen. Die Partitionstabelle stellt somit eines der ersten Konzepte der nichtphysischen Unterteilung in Partitionen dar.

Nachdem IBM und Microsoft 1983 den Master Boot Record (MBR) mit PC DOS bzw. MS-DOS 2.0 eingeführt hatten, folgte Apple 1987 mit der Apple Partition Map (APM) für Macintosh-Rechner. Auch andere Betriebssysteme und Plattformen führten das Konzept in gleicher Weise ein, etwa BSD-Systeme mit Disklabels (1988) oder Commodore mit dem Rigid Disk Block (RDB) für Amiga-Rechner. Auch die von Intel entwickelte GUID-Partitionstabelle (GPT, „GUID Partition Table“), die mit dem Extensible Firmware Interface (EFI) um 2000 eingeführt und mit UEFI seit 2005 als Teil dieser offenen Spezifikation von mehreren Herstellern weiterentwickelt wird, entspricht diesem Konzept.

 
Logical Volume Manager

Über Speichermedien- und Partitionsgrenzen hinweg bieten Logical Volume Manager (LVM) ebenfalls die Möglichkeit, den vorhandenen Speicher aufzuteilen. Mit diesem Konzept werden zusätzlich auch die natürlichen Grenzen aufgehoben, da z. B. mehrere Festplatten zu einem großen Speicherbereich zusammengefasst werden können, der dann wiederum in einzelne Partitionen aufgeteilt werden kann. Außerdem bietet das Konzept auch die Möglichkeit, den Speicher durch Hinzufügen von weiteren Speichermedien dynamisch zu vergrößern (oder durch das Entfernen von Medien zu verkleinern) – unter Windows (seit Windows 2000) heißt dieses Partitionierungskonzept daher auch Dynamische Datenträger, Windows 8.1 und neuer bietet mit Storage Spaces ein weitaus mächtigeres Werkzeug, um Speicherpools anzulegen.

Ein weiteres ähnliches Konzept ist die Aufteilung des Speichers durch das Dateisystem. Einige hoch entwickelte Dateisysteme bieten sowohl die Möglichkeit über Speichermediumgrenzen hinweg (wie LVM) einen großen zusammengesetzten Speicher als ein Dateisystem zu verwalten, als auch diesen gesamten Speicherbereich in Form von Partitionen (englisch Subvolumes) oder als Snapshots getrennt zu verwalten. Beispiele hierfür sind unter anderem ZFS und btrfs.

Für letztere Konzepte hat sich ein mehrstufiges Modell etabliert, indem mehr als ein Partitionierungskonzept verwendet wird. So bieten alle LVM-Umsetzungen die Möglichkeit, sich auf darunterliegende Partitionen (also das Konzept der Partitionstabellen) abzustützen. Eine Kombination mit weiteren Speicherkonzepten wie Redundanz (RAID) ist mit LVM und modernen Dateisystemen ebenfalls möglich. Auch die Ebene, in welcher beispielsweise der RAID-Verbund realisiert wird, lässt sich variieren: So können sowohl die einzelnen Datenträger oder einzelne Partitionen als RAID abgebildet werden als auch die als LVM konfigurierte Volume Group selbst. Obwohl es auch möglich wäre, den gesamten Speicherbereich eines Datenspeichers ohne Partitionstabelle innerhalb einer konkreten LVM-Konfiguration zu erfassen und einzig via LVM für eine Aufteilung in Speicherbereiche zu sorgen, wird diese Variante in der Praxis meist nicht verwendet.

Kompatibilität und Interoperabilität

Bearbeiten

Die meisten Rechnerarchitekturen unterstützen nur eine bestimmte Partitionstabelle zum Starten von Betriebssystemen. Das liegt zum einen daran, dass fast alle Computer als Plattform, also als Computersystem inklusive Betriebssystem, entwickelt und verkauft werden. Als technischen Grund liegt es zum anderen daran, wie die Firmware eines Computers den Bootloader startet. Der als Bootstrapping bezeichnete Prozess beginnt mit dem Laden des ersten Programms, das ein Computer nach dem Einschalten ausführt: der Firmware, etwa dem BIOS beim IBM PC, dessen Nachfolger UEFI, Open Firmware oder Kickstart. Diese erste Firmware initialisiert zumindest die zum Starten benötigte vorhandene Hardware (wobei es eventuell noch weitere Firmware aus dieser Hardware liest und ausführt) und übergibt anschließend an einen Bootloader – auch oft als Initial Program Load oder „Stage 1“ bezeichnet, dessen Aufgabe es ist, in weiterer Folge ein Betriebssystem zu starten. Um den Bootloader starten zu können, kann es erforderlich sein, zuerst die Partitionstabelle einzulesen und auszuwerten. Daher muss auch die Firmware das Format der Partitionstabelle kennen. Da es zu viel Aufwand wäre, Unterstützung für mehrere Partitionstabellen in der Firmware zu implementieren, können die meisten nur eine einzige Partitionstabelle auswerten und folglich nur von einem Speichermedium, welches diese Partitionstabelle enthält, den erforderlichen Bootloader starten.

Eine bis in die 2000er-Jahre weit verbreitete und sehr bekannte Ausnahme ist das BIOS bei IBM-PC-kompatiblen Computern, wie es 1981 von IBM beim Modell 5150 vorgestellt wurde. Das BIOS liest einen Bootloader vom ersten Datenblock eines Mediums, wobei es von einer fixen Datenblockgröße von 512 Bytes ausgeht – es kennt daher im Grundsatz keine Partitionen oder Partitionstabellen. Der 1983 eingeführte Master Boot Record (MBR) trägt diesem Konzept Rechnung, indem er nicht nur eine Partitionstabelle enthält, sondern auch ein Programm (bezeichnet als englisch Master Boot Code), das die Aufgabe hat, diese Partitionstabelle auszulesen und von einer der eingetragenen Partitionen im Chainloading-Prinzip einen weiteren Bootloader zu starten. Der IBM PC und kompatible Computer können daher prinzipiell jede beliebige Partitionstabelle enthalten, solange im ersten Datenblock auf dem Speichermedium ein Bootloader steht, der diese Partitionstabelle auszuwerten vermag und einen weiteren Bootloader für das Betriebssystem von einer der Partitionen startet. In der Praxis wurde von dieser Möglichkeit sehr wenig Gebrauch gemacht, jedoch ermöglicht es unter anderem einen Bootloader auf BIOS-basierten PCs, der eine GUID-Partitionstabelle auswertet und von einer der Partitionen ein Betriebssystem starten kann. Voraussetzung ist, dass das gestartete Betriebssystem dann auch mit dieser Konfiguration zurechtkommt. Bei Linux etwa ist das der Fall, Windows hingegen meldet eine nicht unterstützte Systemkonfiguration.[3] Ab ca. 2010 wurde das BIOS größtenteils von UEFI abgelöst.

Andere Systeme wie die Power-Macintosh-Serie von Apple verwenden eine fix vorgegebene Partitionstabelle, da die Open Firmware als Erstes den Bootloader als Datei direkt von einer der Partitionen lädt. Allerdings muss die Firmware dabei noch einen Schritt weiter gehen, da sie zu diesem Zweck nicht nur die Partitionstabelle kennen muss, sondern auch das Dateisystem: Bei Apple-Systemen aus der PowerPC-Ära (1994–2006) muss der Bootloader daher auf einer APM-Partition mit Hierarchical File System (HFS) gespeichert sein. Auch Server der Firmen Sun Microsystems und IBM nutzen Open Firmware, verwenden allerdings andere Dateisysteme.

Die seit 2000 von Intel in EFI spezifizierte GUID-Partitionstabelle (GPT) sieht sich als Nachfolger des Master Boot Record (MBR) und hat daher eine Reihe von Kompatibiltäts- und Schutzfunktionen implementiert. So existiert im ersten Datenblock immer auch ein MBR, der die Aufgabe hat, die folgende GUID-Partitionstabelle und den damit verwalteten Speicherplatz vor Zugriffen älterer Programme zu schützen. Dieser MBR heißt daher auch Schutz-MBR (englisch Protective MBR) – alte Programme und Computersysteme kommen dadurch nicht in die Verlegenheit, das Speichermedium als vermeintlich leer und uninitialisiert zu erkennen, da mit dem Schutz-MBR eine gültige Partitionstabelle samt Partition vorhanden ist. Im Endeffekt ist somit jedes Speichermedium mit GPT vor irrtümlichem Löschen auf alten Systemen, die nur den MBR kennen, geschützt. Anders als das BIOS lädt beim Bootstrapping dessen Nachfolger UEFI den Bootloader von einer speziellen Partition, die im FAT32-Dateisystem formatiert sein muss. UEFI muss daher die GUID-Partitionstabelle auslesen und auch auf das FAT32-Dateisystem zugreifen können, um anschließend den Bootloader direkt zu starten. Der Bootloader muss für dieselbe Prozessorarchitektur ausführbar sein wie das UEFI, aus dem es gestartet wurde (z. B. x86_64).

Auf Acorn-Rechnern verwendete jede SCSI-Erweiterungskarte einen in ihrer Firmware implementierten proprietären Partitionstabellentyp. Dieses Prinzip überlässt es also der genutzten Kombination aus Controllerkarte und Speichermedium (meistens eine Festplatte), welcher Partitionstabellentyp verwendet wird, was jedoch zu eigenen (inkompatiblen) Implementierungen führte. Der Nachteil war daher, dass das Betriebssystem auf die Daten auf einer Festplatte, die auf einem bestimmten Controller genutzt wurde, mit einer anderen SCSI-Controllerkarte nicht mehr über den normalen Dateisystem-Treiber-Weg zugreifen konnte.

Die Partitionstabelle auf Amiga-Rechnern von Commodore, der Rigid Disk Block (RDB), muss im Bereich eines der ersten 16 Datenblöcke stehen. Der Vorteil dieser Vorgehensweise ist, dass damit Partitionstabellen in unterschiedlichen Formaten koexistieren können – etwa ein MBR auf Datenblock 0 und ein RDB in einem der darauffolgenden Datenblöcke.

Allen Rechnerarchitekturen gemein ist, dass ein bereits gestartetes Betriebssystem eine Vielzahl an Partitionstabellen auf weiteren Speichermedien nutzen kann, weil Partitionstabellen in Software vom jeweiligen Betriebssystem initialisiert werden können. Ein gutes Beispiel hierfür ist Linux, das Partitionstabellen verschiedener Systeme und Plattformen unterstützt. Aber auch z. B. Windows kann Partitionen von sowohl MBR- als auch GPT-partitionierten Medien nutzen. Ebenso kann macOS (bis 2012 „Mac OS X“ und bis 2016 „OS X“) neben GPT- auch APM- und MBR-Partitionen verwenden. Zu beachten ist jedoch, dass das auf einer Partition verwendete Dateisystem ebenfalls vom Betriebssystem unterstützt sein muss, um letztlich Zugriff auf die enthaltenen Dateien zu erhalten.

Die verbreitetste und daher mit fast allen Betriebssystemen kompatible Kombination aus Partitionstabelle und Dateisystem dürfte eine MBR-Partition – egal ob Primärpartition oder logische Partition – mit dem Dateisystem FAT32 darstellen. Auf älteren Betriebssystemen (Mitte der 1980er bis Ende der 1990er) funktioniert zumindest noch das FAT16-Dateisystem, das jedoch nur mit knapp unter 4 GiB begrenzte Partitionen ermöglicht. Seit ca. 2010 gibt es Festplatten mit einer Speicherkapazität von 3 TiB und mehr; allerdings ist für Datenspeicher größer als 2 TiB (= 2048 GiB, ≈ 2199 GB) die Kombination bestehend aus Master Boot Record und FAT32-Partition nicht geeignet. Deshalb setzte sich zunehmend die GUID-Partitionstabelle als neuer Standard auf fast allen gängigen Betriebssystemen durch, die nach 2010 erschienen. Wegen seiner großen Verbreitung können moderne Betriebssysteme zudem oft mit dem von Microsoft für dessen Windows-Betriebssysteme entwickelten Dateisystem NTFS umgehen, eventuell unter Nutzung eines zusätzlichen Treibers eines Drittherstellers für den Schreibzugriff. Alternativ bietet Microsoft mit dem Dateisystem exFAT einen Nachfolger, der einige der Einschränkungen von FAT32 aufhebt.

Bezeichnungen und Typen unterschiedlicher Partitionen

Bearbeiten

Primäre, erweiterte und logische Partitionen

Bearbeiten

Diese Unterscheidung gibt es nur bei der Master-Boot-Record-Partitionstabelle, wie sie z. B. mit fdisk angelegt werden kann. Darin können maximal vier Partitionen eingetragen werden, entweder bis zu vier primäre oder bis zu drei primäre und eine erweiterte Partition.

Die Definition, ob eine Partition eine primäre oder eine erweiterte Partition ist, erfolgt mithilfe eines Partitionierungsprogramms in der Partitionstabelle, die Teil des Master Boot Record ist.

Eine erweiterte Partition dient als Rahmen für beliebig viele weitere logische Partitionen.

Logische Partitionen liegen innerhalb des Speicherbereichs der erweiterten Partition. So kann es nur eine einzige erweiterte Partition geben (die als eine der vier möglichen Partitionen im MBR definiert ist), diese kann jedoch eine unlimitierte Anzahl weiterer logischer Partitionen enthalten. Logische Partitionen sind somit nicht in der primären Partitionstabelle definiert, da sowohl der Tabelleneintrag der logischen Partition innerhalb des Speicherbereichs der erweiterten Partition liegt, als auch der Speicherbereich der logischen Partition selbst.

Logisches Laufwerk respektive Volume

Bearbeiten

Direkter Zugriff auf Hardware ist bei modernen Betriebssystemen nur im Kernelmodus möglich. Anwendungssoftware im Benutzermodus kann also nicht direkt auf Partitionen zugreifen. Stattdessen stellt ihnen das Betriebssystem den Datenspeicher als Volume bzw. logisches Laufwerk durch Einhängen (Mounten) an einem Einhängepunkt (englisch mount point) in die Verzeichnisstruktur bereit. Bei unixähnlichen Systemen dient ein beliebiger leerer Unterordner als Einhängepunkt. Bei Windows dienen primär sogenannte Laufwerksbuchstaben als Einhängepunkte, es können aber auch beliebige leere Unterordner verwendet werden.

Besonderheiten erweiterter Partitionen

Bearbeiten

Aufgrund der Spezifikation ergeben sich im Betrieb, je nach Betriebssystem und Konfiguration, diverse Besonderheiten. Beispielsweise erhält zwar unter Unix-artigen Systemen auch die erweiterte Partition selbst eine Gerätedatei, weil sie kein verwendbares Dateisystem enthält (sondern logische Partitionen) kann sie aber nicht mit dem mount-Befehl im Verzeichnisbaum eingehängt werden.

Master Boot Record, logische Laufwerke unter --->  DOS 3   DOS >5  OS/2#1  #2  Linux
├─Partition 1      – primäre Partition mit DOS     C:      C:      D:/–    –   /dev/hda1
├─Partition 2      – erweiterte Partition                                      /dev/hda2 (kein Dateisystem)
│ ├─Partition 1    – logische Partition mit OS/2   D:      E:      C:      D:  /dev/hda5
│ ├─Partition 2    – logische Partition            E:      F:      E:      E:  /dev/hda6
│ └─Partition 3    – logische Partition            F:      G:      F:      F:  /dev/hda7
├─Partition 3      – leer (primäre Partition)      –       –       –       –
└─Partition 4      – primäre Partition mit OS/2    –       D:      –/D:    C:  /dev/hda4

Unter Linux und *BSD werden die vier möglichen primären Partitionen, ob genutzt oder nicht, immer gezählt, sodass die logischen Partitionen ab 5 (Linux: /dev/hda5) beginnen. Beim direkten Zugriff auf die Gerätedatei der erweiterten Partition (im Beispiel /dev/hda2) sind die logischen Partitionen ebenfalls enthalten, sodass z. B. ein Überschreiben dieser Partition alle darin enthaltenen logischen Partitionen (von /dev/hda5 bis zur letzten logischen Partition n, /dev/hdan) löschen würde. Außerdem gibt die Nummerierung keinerlei Aufschluss über die Position der Partition auf dem Datenträger. Unter der Annahme, dass die Partitionen in der Reihenfolge im MBR gelistet sind, in der sie sich auch auf dem Datenträger befinden, ist etwa im obigen Beispiel der Speicherbereich der dritten und vierten primären Partitionen (die leere Partition erhält keine Gerätedatei, daher im Beispiel nur /dev/hda4) nach jenem der erweiterten Partition (/dev/hda2, mit den enthaltenen logischen Partitionen /dev/hda5 usw.), sodass die Reihenfolge auf dem Datenträger so aussieht: 1. /dev/hda1, 2. /dev/hda5, 3. /dev/hda6, 4. /dev/hda7, 5. /dev/hda4. Die Reihenfolge im MBR kann jedoch auch anders sein als auf dem Datenträger, sodass z. B. /dev/hda4, obwohl als letzte primäre Partition in der Partitionstabelle definiert, einen Speicherbereich vor einer der anderen primären Partitionen einnimmt. Einige fdisk-Varianten (z. B. unter Linux) können die Reihenfolge jedoch auch korrigieren.

Unter den Betriebssystemen DOS und OS/2 ist die Vergabe der Laufwerksbuchstaben nicht normiert, sodass auf einem Multi-Boot-System die Laufwerksbuchstaben nach Laufwerk C:, der jeweiligen Systempartition, nicht zwangsläufig dieselben Partitionen sein müssen. So wurde etwa unter frühen DOS-Versionen nur eine einzige primäre Partition unterstützt, weitere primäre Partition werden bis MS-DOS 4.x einfach ignoriert und bekommen keinen Laufwerksbuchstaben. Auch ist Laufwerk D: meist, wenn vorhanden, die erste vorhandene primäre Partition einer zweiten Festplatte, zusätzliche logische Partitionen (in je einer einzigen erweiterten Partition pro Festplatte) erhalten erst danach einen freien Laufwerksbuchstaben, sodass sich die Laufwerke nach dem Ein- oder Ausbau einer zusätzlichen Festplatte meist verschieben. Unter OS/2, das ebenfalls nur eine einzige primäre Partition unterstützt, hängt die Reihenfolge der Verarbeitung (Zuweisung eines Laufwerksbuchstabens) aller unterstützten Partitionen nach der Systempartition von den geladenen Treibern und der Konfiguration der Partitionen selbst ab, sodass sich zwangsweise eine Neuverteilung der Laufwerksbuchstaben gegenüber DOS ergibt. Allerdings unterstützt OS/2 das Starten („Booten“) von einer logischen Partition, während DOS nur von einer primären Partition aus gestartet werden kann.

Allen Betriebssystemen gemein ist nur, dass mehr als eine erweiterte Partition nicht unterstützt wird, da dies außerhalb der Spezifikation ist. Dabei handelt es sich also um einen Fehler im MBR, wie beim folgenden Beispiel:

Master Boot Record
├─Partition 1                 – primäre Partition
├─Partition 2                 – primäre Partition
├─Partition 3                 – erweiterte Partition
│ ├─Partition 1               – logische Partition
│ ├─                    . .     . . .
│ └─Partition n               – logische Partition
└─Partition 4                 – erweiterte Partition – FEHLER: es darf nur eine erweiterte Partition geben
  ├─Partition 1               – logische Partition
  ├─                    . .     . . .
  └─Partition n               – logische Partition

Die mit dem Betriebssystem mitgelieferten Einrichtungsprogramme lassen meist nur eine unterstützte Partitionierung zu. So kann z. B. MS-DOS-fdisk nur eine einzige primäre Partition anlegen, weil DOS traditionell ohnehin alle weiteren primären Partitionen ignorierte – erst sei MS-DOS 5.0 erhalten weitere primäre Partitionen einen Laufwerksbuchstaben, allerdings muss die Partitionstabelle im Master Boot Record dann von einem alternativen Partitionierungsprogramm erstellt worden sein. Das ist auch z. B. bei DR DOS der Fall, allerdings unterstützt Caldera DR-DOS 7.03 bereits mehr als eine primäre Partition, und ab MS-DOS 7.x (Teil von Windows 9x) ist auch der Start von einer logischen Partition aus möglich.[4]

Virtuelles Laufwerk

Bearbeiten

Unter dem Begriff „virtuelles Laufwerk“ kann einerseits verstanden werden, dass ein physisch (aktuell) nicht vorhandenes Laufwerk dennoch einen Verwaltungseintrag in der Laufwerksliste erhält; dies wird vor allem für Wechseldatenträger durchgeführt, deren Lesegerät somit auch ansprechbar ist, wenn kein Datenträger eingelegt ist (CD-/DVD-/BluRay-Laufwerke, Speicherkarten-Leser u. Ä.). Andererseits wird als „virtuelles Laufwerk“ auch bezeichnet, wenn ein Laufwerk eines bestimmten Typs emuliert wird; dies können unter anderem sein:

  • eine RAM-Disk, die einen Teil des Arbeitsspeichers als logisches Laufwerk im System einbindet. Der Speicherbereich muss vor der Nutzung formatiert werden, damit ein Dateisystem vorhanden ist (wird meist automatisch vom RAM-Disk-Treiber durchgeführt). Darauf gespeicherte Daten gehen bei jedem Neustart und beim Ausschalten verloren, wenn nicht die Art der Umsetzung im Zuge des Herunterfahrens des Betriebssystems eine Sicherungskopie anlegt, die beim erneuten Initialisieren der RAM-Disk wiederhergestellt wird.
  • ein virtuelles Laufwerk, das in den meisten Fällen als eine Datei auf einem bereits eingebundenen Dateisystem vorliegt und im System wie ein physisches Speichermedium virtualisiert eingebunden wird. Unter Linux kann man dies mit einem loop device mit Bordmitteln bewerkstelligen. Auch die DMG-Dateien in Mac OS X und VHD-Dateien unter Windows (seit Windows 7) funktionieren wie virtuelle Laufwerke. Ein weiteres Beispiel stellt die Einbindung von ISO-Abbildern dar, die ein optisches Laufwerk (CD-ROM, DVD-ROM) emulieren.

Zugriff und Nutzung

Bearbeiten

Verwendung

Bearbeiten

Wird eine Partition als logisches Laufwerk bzw. Volumen im Betriebssystem verfügbar gemacht, so spricht man davon, dass das Laufwerk „eingehängt“, „eingebunden“, „aktiviert“ oder „gemountet“ (von englisch to mount ‚montieren‘) wird.

Eingehängt wird ein solches an einem Einhängepunkt. Hierzu wird entweder ein sogenannter Laufwerksbuchstabe (CP/M, DOS, Windows, OS/2) oder ein beliebiges leeres Unterverzeichnis (Unix und ähnliche) verwendet.

Voraussetzung für die Nutzung von Dateisystemen ist stets der zugehörige Treiber. Welche Dateisysteme durch welches Betriebssystem eingebunden und verwendet werden können, ist demzufolge keine Frage des Betriebssystems an sich. Zwar liegen in einer Windows-Standardinstallation lediglich Treiber für die Microsoft-eigenen Dateisysteme FAT und NTFS vor, doch lassen sich nach Installation der jeweiligen Treiber durchaus auch fremde Dateisysteme wie beispielsweise das extended filesystem nutzen.

Jedoch wird bewusst nicht jede Partition als Volume zugänglich gemacht. Etwa die Swap-Partition soll vom Benutzer nicht fürs Ablegen von Dateien verwendet werden – das Betriebssystem nutzt diese Partition ausschließlich zum Auslagern von Speicherbereichen.

Unter DOS/Windows

Bearbeiten

Unter DOS (sowie Windows bis einschließlich Version 4.0) werden logische Laufwerke grundsätzlich durch Laufwerksbuchstaben repräsentiert (A:Z:). Die Laufwerksbuchstaben A: und B: sind allerdings für Diskettenlaufwerke fest reserviert und können nicht für ein anderes logisches Laufwerk genutzt werden; auch dann, wenn kein Diskettenlaufwerk vorhanden ist. Darüber hinaus sind maximal 24 weitere logische Laufwerke einsetzbar.

Bei MS-DOS und Windows 9x kann je Festplatte nur eine primäre DOS-Partition eingerichtet und eingehängt werden. Typischerweise erhält diese den Laufwerksbuchstaben C:.

Unter Windows NT

Bearbeiten

Ab Windows NT Version 5.0, Windows 2000 und neuer, kann u. U. auf Laufwerksbuchstaben verzichtet werden, da das Einhängen in ein beliebiges leeres Verzeichnis innerhalb eines NTFS-Dateisystems unterstützt wird. Das eingehängte Dateisystem muss nicht NTFS sein. Außerdem sind A: und B: nicht mehr auf Diskettenlaufwerke beschränkt.

Ab Windows 10 Version 1703 kann auf alle Partitionen auf externen, entfernbaren Wechseldatenträgern zugegriffen werden. Auch können mehr als eine primäre Partition mit Bordmitteln eingerichtet werden. Ein unterstütztes Dateisystem vorausgesetzt sind diese Partitionen nun auch nutzbar, was in früheren Windows-Versionen nicht funktionierte.[5][6][7]

Bei Windows NT unterscheidet Microsoft – aufgrund ihres jeweiligen Einsatzzwecks – zwischen Systempartition und Startpartition. Auf BIOS-basierten PCs kann für beide Zwecke ein und dieselbe Partition eingesetzt werden.

  • Die Systempartition (englisch system partition) muss lediglich die für den Start von Windows benötigten hardwarebezogenen Dateien enthalten, also den Bootloader mitsamt spezifischer Konfiguration. Das sind entweder der NT-Loader oder der Bootmgr mit BCD und alle dazugehörigen Konfigurationsdateien. Ein Laufwerksbuchstabe wird ihr normalerweise nicht zugeordnet. Auf den Nachfolgern der ehemals „IBM-PC-Kompatiblen“ mit (U)EFI als System-Firmware ist dies die EFI-Systempartition, die Teil der (U)EFI-Spezifikation ist und daher immer vorhanden sein muss.
  • Die Startpartition (englisch boot partition) enthält die Windows-Installation, üblicherweise im Verzeichnis \WINDOWS und erhält üblicherweise den Laufwerksbuchstaben C:. Die Umgebungsvariable %SystemDrive% enthält den Wert für ihren Laufwerksbuchstaben.[8][9]

Im Deutschen ist die Microsoft-Terminologie somit genau umgekehrt[10] wie unter anderen Betriebssystemen üblich: die Systempartition ist normalerweise jene, die das Betriebssystem enthält. Damit erklärt sich aber auch, warum das Windows-Startlaufwerk in der (englischen) Umgebungsvariable %SystemDrive% abgebildet ist. Auf den meisten BIOS-basierten Windows-Installationen (bis Windows 10 unterstützt) ist es jedoch ohnehin so, dass Windows dieselbe Partition für sowohl System- als auch Startpartition verwendet. Auf Computern mit UEFI (unterstützt ab Windows Vista SP1, Voraussetzung ab Windows 11) gibt es immer eine EFI-Systempartition und mindestens eine Betriebssystem-Systempartition (die Windows-„Startpartition“).

Unter Unix- und ähnlichen Systemen

Bearbeiten

Unter Unix, Linux und den meisten ähnlichen Betriebssystemen sind Partitionen über die Verzeichnisstruktur als Geräteknoten (englisch device node) bzw. Gerätedatei (englisch device file) repräsentiert.

Dabei hat jede Partition einen Dateinamen mit einer Buchstabenkombination, die etwas über den Typ des Datenträgers aussagen soll. So heißt z. B. unter Linux die erste Partition auf einer SCSI- und SATA-Festplatte /dev/sda1. Die folgenden Partitionen werden entsprechend durchnummeriert. Ist die Partitionstabelle ein Master Boot Record, so hat die erste logische Partition (innerhalb einer erweiterten Partition) auf dieser Festplatte immer die Gerätebezeichnung /dev/sda5 – auch dann, wenn weniger als vier primäre Partitionen vorhanden sind.

Eine Partition wird in ein beliebiges Unterverzeichnis in der Verzeichnisstruktur eingehängt, z. B. /mnt/Beispiel, und wird so für das System verfügbar. Eine Bootpartition wird üblicherweise unter /boot eingehängt, die Systempartition des aktiven Systems ist immer als Root-Verzeichnis / eingehängt.

Durch die Vergabe fixer Block-Device-Minor-Nummern ist bei Linux vor Kernel-Version 2.6.20 die maximale Anzahl ansprechbarer Partitionen über Gerätedateien begrenzt. Für IDE/ATA-Platten ist dadurch die höchste Nummer /dev/hd…63 und bei SCSI sowie SATA /dev/sd…15 (dabei steht jeweils für die Buchstaben a, b, c usw. für den ersten, zweiten, dritten Datenspeicher usw.). Ab Kernel 2.6.20 vom Februar 2007 ist für alle Festplatten das SCSI-Limit von 15 Partitionen festgelegt.[11] Damit konnte beispielsweise (c)fdisk zwar mit einer größeren Anzahl logischer Partitionen in MBR-Partitionstabellen umgehen, ein unveränderter Kernel diese aber nicht nutzen. Ab Kernel 2.6.28 vom Januar 2009 werden dynamische Block-Device-Nummern verwendet, die mithilfe des Userspace-Programms udev den einzelnen Gerätedateien zugewiesen werden, sodass dieses Limit nicht mehr existiert.[12]

Beispiel für gemeinsamen Zugriff

Bearbeiten

In der folgenden Beispielpartitionierung auf Basis des Master Boot Record wurden auf einer Festplatte, auf der sowohl Windows als auch Linux betrieben wird, mehrere Partitionen angelegt. Die erste Partition ist eine primäre Partition mit NTFS-Dateisystem für das Windows-Betriebssystem, die zweite Partition ist eine erweiterte Partition, die vier logische Partitionen enthält. Die ersten beiden logischen Partitionen der erweiterten Partition sind eine NTFS- und eine FAT32-Partition und zum Ablegen von Dateien gedacht, die anderen beiden Partitionen sind eine System- und eine Swap-Partition für das Linux-Betriebssystem.

Partitionierungsprogramme können dieses Partitionsschema zum Beispiel so darstellen:

Primäre Partition (NTFS)
Erweiterte Partition
+ Logische Partition 1 (NTFS)
+ Logische Partition 2 (FAT32)
+ Logische Partition 3 (Linux-Dateisystem, z. B. ext, Btrfs, XFS, …)
+ Logische Partition 4 (Linux-Swap)

Windows ordnet diesen Partitionen jeweils ein logisches Laufwerk bzw. Volumen als Laufwerksbuchstaben zu und würde diese typischerweise so anzeigen:

C: (Windows-Betriebssystem, NTFS)
D: (Daten 1, NTFS)
E: (Daten 2, FAT32)

Windows durchsucht u. a. beim Start die Partitionstabelle nach Partitionstypen, die auf durch das Betriebssystem verwendbare Dateisysteme hinweisen. Da Windows Linux-Dateisysteme nicht nutzen kann, werden die zugehörigen Partitionen normalerweise nicht angezeigt. Würden sie auf durch das Betriebssystem lesbare Dateisysteme hinweisen, würde ihnen standardmäßig je ein Laufwerksbuchstabe zugewiesen werden. Hierbei ist jedoch zu beachten, dass die Zusammengehörigkeit von Dateisystem- und Partitionstyp nicht zwingend ist. Änderte man beispielsweise den Partitionstyp der Linux-Partition direkt in der Partitionstabelle auf den Typ 0x07 (NTFS) oder 0x0B (FAT32), würde diese unter Windows durchaus angezeigt. Da auf dieser aber die erwartete Verwaltungsstruktur des Dateisystems (Dateizuordnungstabelle bzw. Master File Table) fehlt, würde die Partition beim ersten Lese- oder Schreibversuch als „nicht formatiert“ reklamiert und auch angeboten, die vermeintlich unformatierte Partition gleich mit einem von Windows unterstützten Dateisystem zu formatieren. Dies würde allerdings die gespeicherten Daten im Linux-Dateisystem zerstören.

Ein aktuelles Linux-Betriebssystem könnte die Partitionen dagegen so anzeigen:

/dev/sda1 (Primäre Partition; Windows-Betriebssystem, NTFS)
/dev/sda2 (Erweiterte Partition)
/dev/sda5 (1. logische Partition auf der erweiterten Partition; Daten 1, NTFS)
/dev/sda6 (2. logische Partition auf der erweiterten Partition; Daten 2, FAT32)
/dev/sda7 (3. logische Partition auf der erweiterten Partition; Linux, /)
/dev/sda8 (4. logische Partition auf der erweiterten Partition; Linux-Swap)

/dev/sda1 bis /dev/sda4 sind hier die vier möglichen MBR-Partitionen, von denen nur die ersten beiden verwendet werden. Die restlichen logischen Partitionen ab /dev/sda5 befinden sich in der erweiterten Partition. /dev/sda2 enthält als erweiterte Partition selbst kein Dateisystem, sondern die logischen Partitionen mit deren Dateisystemen.

Partitionierungsprogramme

Bearbeiten
 
GParted

Es gibt eine Reihe von Festplattenverwaltungsprogrammen, die das Partitionieren erleichtern. Bereits einfache Konsolen- und DOS-Programme wie fdisk ermöglichen eine Partitionierung. Hinweis: Obwohl der Befehl unter DOS, BSD-Unix (zum Beispiel macOS) und Linux auch fdisk heißt, handelt es sich nicht um dasselbe Programm.

Auch die Installationsprogramme der Betriebssysteme wie zum Beispiel YaST2 für SuSE Linux bieten Partitioniermöglichkeiten an, um das neue Betriebssystem neben einem bereits installierten Betriebssystem auf der Festplatte unterzubringen. Das ist meist jedoch nur ein Frontend für ein anderes Programm (zum Beispiel fdisk oder parted im Falle von YaST2).

Vor allem für Unices gibt es eine Reihe von Dienstprogrammen, um Dateisysteme zu erstellen und zu verwalten. Siehe Unix-Kommandos. macOS verwendet dazu das „Festplattendienstprogramm“ bzw. auf der Kommandozeile diskutil, die Rechner werden mit einer Partition ausgeliefert. Manche Partitionierungstools erlauben das Verkleinern (sofern noch Freiraum in der Partition) oder Vergrößern (sofern noch Freiraum auf dem Datenträger) von Partitionen ohne Datenverlust, selten sogar der Systempartition (der Partition, von dem das gerade laufende Betriebssystem gestartet wurde).

  • DOS (PC-kompatibel)
    • fdisk-Befehl (fdisk /? gibt Hilfe aus)
    • FIPS: Datenerhaltende Größenänderung von Partitionen
    • Norton Partition Magic von Symantec, ursprünglich PowerQuest (nur als Datenrettungssystem mit Partitionierungstool unter DOS)
    • eXtended FDisk (xfdisk) Partitions- und Boot-Manager (GPL): ein sehr leistungsstarker Bootmanager und Partitionierungsprogramm, das ein Booten von mehreren Partitionen ermöglicht und auch mit mehreren angeschlossenen Festplatten umgehen kann.
  • DOS (nicht PC-kompatibel)
    • die meisten DOS-Betriebssysteme bieten eine Variante von fdisk, die zur Erstellung der benötigten Partitionierung verwendet werden kann; Beispiele:
  • macOS (von 1999 bis 2012 „Mac OS X“ bzw. bis 2016 „OS X“)
  • OS/2 und lizenzierte Nachfolger (eComStation, ArcaOS)
    • fdisk-Befehl bis OS/2 Warp 4.0 (ist komplett per Kommandozeile steuerbar, kann auf einer eigenen Partition einen Bootmanager installieren[18])
    • fdiskpm bis OS/2 Warp 4.0 (die graphische Version)
    • Logical Volume Manager ab OS/2 Warp 4.5
  • diverse Unixoide Systeme wie BSD, GNU/Linux, OpenSolaris und viele weitere...
  • Visopsys (Standalone OS)
    • Partition Logic (GNU GPL)
  • Windows
    • Die Datenträgerverwaltung (bei Windows-NT-Reihe in das System integriert; diskmgmt.msc im Ordner %SystemRoot%\system32, typischerweise C:\Windows\system32\diskmgmt.msc)
    • Kommandozeilenprogramm diskpart (ab Windows 2000 in das System integriert)
    • Befehle fixmbr und fixboot der Wiederherstellungskonsole
    • Befehl bootsect mit Parametern der Wiederherstellungskonsole
    • Acronis Partition Expert
    • Acronis Disk Director Suite (enthält alle Festplattentools von Acronis)
    • MiniTool Partition Wizard (die Home Edition ist kostenlos)
    • Paragon Festplatten Manager bzw. Paragon Partition Manager Free Edition (englisch, kostenlos nutzbar für den privaten Gebrauch)
    • EaseUS Partition Master (englisch; Home Edition, Professional Edition und Server Edition), kostenlos 30 Tage für 32- und 64-Bit-Systeme benutzbar für den privaten Gebrauch
    • O&O PartitionManager (Professional und Server Edition)
    • Partition Commander
  • ZETA 1.0 (BeOS-Nachfolger)
    • Paragon Partitioning Tool (im Installer integriert, kann NTFS- und FAT-Partitionen verkleinern)

Einzelnachweise

Bearbeiten
  1. Brian Carrier: File System Forensic Analysis. Addison-Wesley Professional, 2005, ISBN 0-13-443954-6 (englisch, Volltext in der Google-Buchsuche): “One of the concepts in a volume system is to create partitions. A partition is a collection of consecutive sectors in a volume. By definition, a partition is also a volume, which is why the terms are frequently confused.”
  2. Häufig gestellte Fragen zur Architektur Datenträger Partitionierung GUID-Tabelle. Weitere Informationen. In: Hilfe und Support. Microsoft, 4. August 2009, abgerufen am 9. Februar 2014 (englisch): „Removable media without either GUID Partition Table or MBR formatting is considered a ‚superfloppy.‘
  3. Booting from GPT (englisch) von Rod Smith, aktualisiert am 11. Dezember 2012, abgerufen am 16. Februar 2014.
  4. https://www2.arnes.si/~fkomar/xosl.org/faqhow/faq.html
  5. Axel Vahldiek: Windows 10: Dank Creators Update mehrere Partitionen auf USB-Sticks. In: Heise online. 21. April 2017. Abgerufen am 15. März 2020.
  6. Andrea Müller: Partition auf USB-Stick unerreichbar. In: c’t 10/11 Hotline. 26. April 2011, abgerufen am 19. Februar 2014 (auch im Heft 10/11 S. 164).
  7. Frequently asked questions about the GUID Partitioning Table disk architecture. microsoft.com, Abschnitt „What about removable media?“ und folgende; abgerufen am 30. Juli 2014
  8. Windows Vista Business eingeschränkte Vorschau in der Google-Buchsuche
  9. MCSE Training Guide Windows XP Professional eingeschränkte Vorschau in der Google-Buchsuche
  10. Gord Parker, Rober L. Bogue, Will Schmied: MSCE Windows XP Professional. Markt+Technik, 2003, ISBN 3-8272-6441-3, S. 34, Hinweise-Kasten (eingeschränkte Vorschau in der Google-Buchsuche): „Die Bezeichnungen ›Startpartition‹ und ›Systempartition‹. Im Grunde genommen sind Microsoft Benennungen für die Start- und die Systempartition genau umgekehrt gemeint, als die Bezeichnungen vermuten lassen: Die Startdateien befinden sich nämlich auf der Systempartition und die Systemdateien (d. h. die Dateien im Ordner \%SystemRoot%\SYSTEM32) auf der Startpartition.“
  11. How to run 126 Xp in a hard disk – with a bit of help from Linux (englisch), Forumsbeitrag von saikee vom 9. Mai 2009, abgerufen am 20. Februar 2014
  12. What is the maximum No. of hard disk partitions after kernel 2.6.28 (englisch), Forumsbeitrag von saikee vom 8. März 2009, abgerufen am 20. Februar 2014
  13. APT Hard Disk Toolkit. atari8.co.uk, 15. März 2015, abgerufen am 20. Mai 2018 (englisch).
  14. pdisk manpage (englisch), abgerufen am 8. Mai 2015
  15. fdisk manpage (englisch), abgerufen am 8. Mai 2015
  16. gpt manpage (englisch), abgerufen am 8. Mai 2015
  17. diskutil manpage (englisch), abgerufen am 8. Mai 2015
  18. OS/2 FDISK and Installation. Technical Document # - 8262710. In: service5.boulder.ibm.com/pspsdocs.nsf. IBM, 19. Januar 1998, abgerufen am 14. März 2014 (englisch).