Neue Rechner muß ich gelegentlich leider mit vorinstalliertem Windows einkaufen. Damit ich parallel dazu Ubuntu-22.04 installieren kann, muß ich die Windows-Partition verkleinern.
Ausgangslage
Ich habe eine VM in VirtualBox und darin läuft eine Standard-Installation von Windows-10. Die Plattenaufteilung sieht so aus:
| disk | disk-size | vendor | model | serial | part | part-size | fstype | usage | mountpoint | label |
|---|---|---|---|---|---|---|---|---|---|---|
| sda | 80G | ATA | VBOX HARDDISK | VB4ff9ca9f-9e42bb21 | ||||||
| . | sda1 | 100M | vfat | 28% | ||||||
| . | sda2 | 16M | null | |||||||
| . | sda3 | 79,4G | ntfs | 14% | ||||||
| . | sda4 | 524M | ntfs | 84% |
Testablauf
Vorbereitungen
- NVRAM-Datei löschen:
rm -f .../virtualbox/Win10/Win10.nvram - Ubuntu-22.04 vom ISO starten
Parameter ermitteln
| Parametername | Wert | Ermittelt mit | |
|---|---|---|---|
| NTFS-Laufwerk | /dev/sda | blkid| |
|
| Sektorgröße | 512 | sfdisk --json ...| |
|
| NTFS-Partition | /dev/sda3 | blkid| |
|
| Partitionsnummer | 3 | “Ende” der NTFS-Partition| | |
| Minimalgröße | 11909525504 | ntfsresize --info ...| |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 | |
Dateisystem verkleinern
- Testaufruf:
ntfsresize --size 20G --no-action /dev/sda3 Verkleinerung durchführen:
echo 'y' | ntfsresize --size 20G /dev/sda3Hinweis: Die Option “ntfsresize —force …” funktioniert leider nicht richtig, die Sicherheitsabfrage erscheint dennoch!
Dateisystem bereinigen:
ntfsfix -d /dev/sda3Unklar: Ist dies eine gute Idee? Wenn wir das Dateisystem nicht bereinigen, dann können wir keine Infos über das Dateisystem mehr abrufen!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 | |
Daten des verkleinerten Dateisystems ermitteln
| Parametername | Wert | Ermittelt mit | |
|---|---|---|---|
| Größe | 19999998464 | ntfsresize --info ...| |
|
| Cluster-Größe | 4096 | ntfsresize --info ... oder ntfsinfo -m ...| |
|
| Cluster-Anzahl | 4882812 | ntfsinfo -m ...| |
|
| Sector-Größe | 512 | ntfsinfo -m ...| |
|
| Start-Sektor | … | sfdisk --json ...| |
Beboachtung: “Eigentlich” würde ich erwarten, dass dies gilt:
- Cluster-Größe x Cluster-Anzahl = Größe
- Cluster-Größe x Cluster-Anzahl: 4096 x 4882812 = 19999997952
- Größe: 19999998464
Leider wird die Erwartung enttäuscht!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | |
Partition verkleinern
Sektoranzahl:
- Dateisystem-Göße / Sektor-Größe = 19999998464 / 512 = 39062497
- Cluster-Anzahl * Cluster-Größe / Sektor-Größe = 4882812 * 4096 / 512 = 39062496
Verkleinern:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 | |
Schlusssichtung:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | |
Unklarheiten und Probleme
Nummerierung der Partitionen
Wie sieht die Nummerierung aus, wenn eine Partition mitten drin gelöscht wird? Also:
- Ich habe erst die Partitionen 1,2,3 und 4
- Ich lösche die Partition 2
- Wie sehen nun die Nummern der restlichen Partitionen aus?
- 1 2 3?
- 1 3 4?
Erkenntnis: 1 3 4 ist die verwendete Nummerierung!
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 | |
Verfügbarer Plattenplatz innerhalb von Win10
Ich habe die NTFS-Partition verkleinert auf 20GB. Zuvor wurde angezeigt, dass grob 11GB belegt sind.
Nach dem Start von Win10 sieht die Situation anders aus:
- Als Größe von C: wird 18.6 GB angezeigt
- Frei sind davon 700 MB (also quasi nix)
Also: Man sollte wohl besser mindestens 40GB für Win10 vorsehen!
Links
Historie
- 2022-07-23: Erste Version