Archiv/NTFS Partitionierung

Archivierte Anleitung

Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite für weitere Änderungen gesperrt.

Artikel für fortgeschrittene Anwender

Dieser Artikel erfordert mehr Erfahrung im Umgang mit Linux und ist daher nur für fortgeschrittene Benutzer gedacht.

Zum Verständnis dieses Artikels sind folgende Seiten hilfreich:

  1. Ein Terminal öffnen

Inhaltsverzeichnis
  1. Grafische Werkzeuge
  2. Konsole
  3. Ändern der Partitionstabelle
  4. Festplatten benennen

Dieser Artikel beschäftigt sich mit dem Anlegen und Bearbeiten von NTFS-Partitionen. Eine allgemeine Anleitung zum Anlegen und Formatieren von Partitionen findet man im Artikel Partitionierung, in dem auch grafische Werkzeuge erwähnt werden.

Achtung!

Das Anlegen und Verändern von Partitionen ist immer mit einem gewissen Risiko verbunden. Daher sollte man vor einem solchen Eingriff ins System eine Sicherung aller wichtigen Daten vornehmen.

Grafische Werkzeuge

Die Programme GParted und QtParted können natürlich auch zum Vergrößern/Verkleinern einer NTFS-Partition verwendet werden. Dabei einfach die NTFS-Partition markieren und "Größe ändern/Verschieben" auswählen. Anschließend die gewünschte neue Größe angeben und die Änderungen "Anwenden" lassen. Will man die Partition vergrößern, muss natürlich noch entsprechend freier Speicherplatz vorhanden sein.

Falls nach dem Vergrößern/Verkleinern der Partition weiterhin die alte Größe angezeigt wird, muss noch die Partitionstabelle angepasst werden.

Konsole

Eine Partition lässt sich auch über die Kommandozeile [1] bequem anpassen. Dies hat den Vorteil, dass man Rückmeldungen bekommt und evtl. Fehlermeldungen auswerten kann.

Zuerst sollte man die Bezeichnung (z.B. /dev/hda) der NTFS-Partition ermitteln. Eine Anleitung dazu findet man im Artikel Windows-Partitionen einbinden. In dem nachfolgenden Beispiel wird immer die Partition /dev/hda verwendet und muss gegebenenfalls auf anderen Systemen angepasst werden.

Der nächste Befehl zeigt weitere Informationen über die gefundene NTFS-Partition an.

sudo ntfsresize --info /dev/hda1 

Die Ausgabe könnte so aussehen:

ntfsresize v1.9.4
NTFS volume version: 3.0
Cluster size : 4096 bytes
Current volume size: 6292300288 bytes (6293 MB)
Current device size: 6292306944 bytes (6293 MB)
Checking filesystem consistency ...
100.00 percent completed
Accounting clusters ...
Space in use : 3678 MB (58,4%)
Collecting shrinkage constrains ...
Estimating smallest shrunken size supported ...
File feature Last used at By inode
$MFT : 485 MB 0
Multi-Record : 5334 MB 2677
You might resize at 3677433856 bytes or 3678 MB (freeing 2615 MB).
Please make a test run using both the -n and -s options before real resizing!

Der Ausgabe kann man die tatsächliche Größe der Partition (volume size) und die Größe, die in der Partitionstabelle eingetragen ist (device size), entnehmen. Weiter unten sieht man, wieviel Prozent bzw. MB der Partition momentan mit Daten belegt sind (Space in use) und um welche Größe die Partition verkleinert werden kann (freeing).

Die Verkleinerung kann mit dem folgenden Befehl geprüft werden:

sudo ntfsresize --no-action --size 3690M /dev/hda1 

Hierbei sorgt der Parameter --no-action dafür, dass die Änderung nur getestet wird. Die neue Größe soll 3690 MB betragen. Hier eine gekürzte Fassung der Bildschirmausgabe:

...
Current volume size: 6292300288 bytes (6293 MB)
Current device size: 6292306944 bytes (6293 MB)
New volume size : 3689992704 bytes (3690 MB)
...
Relocating needed data ...
ERROR: Extended record needed (2456 > 1024), not yet supported!
Please try to free less space.

Man sieht hier eine Fehlermeldung, da nicht genug Speicherplatz für die Durchführung der Aktion zur Verfügung steht. Da einiger Speicherplatz zur Umspeicherung der Daten benötigt wird, muss man einen kleineren Wert angeben.

sudo ntfsresize --no-action --size 5500M /dev/hda1 

Damit hätten wir die Partition um rund 700 MB verkleinert. Die Ausgabe hierzu lautet:

...
Current volume size: 6292300288 bytes (6293 MB)
Current device size: 6292306944 bytes (6293 MB)
New volume size : 5499994624 bytes (5500 MB)
...
Relocating needed data ...
100.00 percent completed
Updating $BadClust file ...
Updating $Bitmap file ...
Updating Boot record ...
The read-only test run ended successfully.

Der Test wurde erfolgreich durchgeführt und es kann nun der Parameter --no-action beim nächsten Aufruf weggelassen werden. Hier erfolgt eine Sicherheitsabfrage, die man mit Y bestätigen muss. Die reale Umwandlung dauert ein wenig und sollte folgende Ausgabe liefern:

...
100.00 percent completed
Updating $BadClust file ...
Updating $Bitmap file ...
Updating Boot record ...
Syncing device ...
Successfully resized NTFS on device '/dev/hda1'.
You can go on to shrink the device e.g. with 'fdisk'.
IMPORTANT: When recreating the partition, make sure you
  1) create it with the same starting disk cylinder
  2) create it with the same partition type (usually 7, HPFS/NTFS)
  3) do not make it smaller than the new NTFS filesystem size
  4) set the bootable flag for the partition if it existed before
Otherwise you may lose your data or can't boot your computer from the disk!

Es wurde nun die reale Größe der Partition verändert. Dies muss allerdings noch in die Partitionstabelle eingetragen werden, damit die Informationen auch richtig verarbeitet werden können.

Ändern der Partitionstabelle

Zuerst sollte man sich die Informationen über die NTFS-Partition anzeigen lassen [1]:

sudo ntfsresize --info /dev/hda1 

Die Partitionstabelle muss angepasst werden, falls die Werte von "Current volume size" und "Current device size" unterschiedlich sind.

...
Current volume size: 5499994624 bytes (5500 MB)
Current device size: 6292306944 bytes (6293 MB)
...

Aus Sicherheitsgründen sollte man vorher die alte Partitionstabelle und den Master Boot Record mit den folgenden Befehlen sichern:

sudo sfdisk -d /dev/hda > hda.pt
sudo dd if=/dev/hda of=hda.mbr bs=512 count=1 

Die Anpassung der Partitionstabelle erfolgt mittels des Programmes fdisk.

sudo fdisk /dev/hda 

Nach dem Start des Programms kann man über bestimmte Buchstaben und der Taste verschiedene Kommandos ausführen lassen. Eine Übersicht über die verschiedenen Kommandos erhält man mit M ("menu").

Die Partition mit der falschen Größe muss nun gelöscht und danach mit der korrekten Größe neu erstellt werden. Dabei werden natürlich nicht die Partitionen geändert, sondern lediglich die Einträge der Partitionstabelle. Die Änderungen werden erst durch ein Schreiben der Partitionstabelle mittels W ("write") übernommen. Falsche Eingaben können also jederzeit durch das Beenden des Programmes mit Q ("quit without saving") rückgängig gemacht werden.

Die Partitionen kann man sich mit P ("print") anzeigen lassen. Man sollte sich nun den Start- und Endzylinder der zu löschenden Partition merken, da diese Informationen eventuell später noch einmal benötigt werden. Mit der Taste D ("delete") und der Nummer der zu löschenden Partition wird der Eintrag gelöscht. Mit N ("new") legt man einen neuen Eintrag in der Tabelle an.

Nun wird man nach dem ersten und letzten Zylinder gefragt. Bei Start sollte der Wert der alten Partition eingetragen werden. Der Endpunkt wird am einfachsten durch eine Größenangabe angegeben, z.B. bei dem obigen Beispiel wäre dies +5500M. Diese Angabe berechnet automatisch den korrekten Endzylinder für eine bestimmte Größe. Natürlich kann auch direkt der Endzylinder angegeben werden.

Der Typ der Partition muss anschließend mit T ("type") festgelegt werden. Für eine NTFS-Partition muss hierfür 7 gedrückt werden. Fall es sich bei der Partition um eine primäre handelt (was bei NTFS sehr oft der Fall ist), muss man sie mit A ("active") noch auf aktiv setzen.

Eine erneute Ausgabe der Partitionsübersicht mit P ermöglicht eine letzte Kontrolle der Änderungen, welche dann mit W ("write") wirklich in die Partitionstabelle geschrieben werden.

Damit ist alles komplett und der Rechner kann neu gestartet werden.

Hinweis:

Ein Windows-System startet beim ersten Hochfahren eine Überprüfung der Partition. Nach dieser Überprüfung ändert Windows seine eigenen Einträge und startet den Rechner neu. Wenn alles funktioniert hat, sollte auch unter Windows die neue Größe der Partition angezeigt werden.

Festplatten benennen

Partitionierungsprogramme können die erstellten Partitionen nicht benennen, d.h. Labels setzen. Diese Labels werden in den Dateimanagern sichtbar, sobald das Laufwerk (z.B. USB-Stick) eingehängt ist. Labels repräsentieren so zu sagen die Laufwerksbezeichnung an den Endnutzer.

Wie man die Labels von Datenträgern setzt erklärt der Artikel Labels.