Ich habe eine Festplatte mit installiertem Ubuntu 16.04 und muss nun Windows als zweites Betriebssystem installieren, ohne Daten in Linux zu verlieren. Wenn ich das richtig verstanden habe, kann das durch Erstellen einer Partition und Installieren von Windows auf der neuen Partition erfolgen. Ich weiß jedoch nicht, wie man eine Partitionstabelle im ext4-Dateisystem erstellt, insbesondere wenn es sich um die Systemfestplatte handelt.
Ich habe auch versucht, die neue Partitionstabelle zu erstellen, indem ich vom Flash-Laufwerk gebootet und sda3 ausgehängt habe, um die Partition zu erstellen, aber das hat nicht geklappt.
Wie kann ich die Partitionstabelle erstellen, ohne Daten und Stabilität von Linux zu verlieren? Auch alternative Wege sind willkommen.
Antwort1
Sie können keine Partition auf einem Ext4-Dateisystem erstellen. Am Anfang Ihrer Festplatte befindet sich eine Partitionstabelle (Legacy-BIOS-Typ oder GTP), die beschreibt, wie viele und wie große Partitionen Sie auf der Festplatte haben. Dateisysteme werden auf diesen Partitionen erstellt. (NTFS-Dateisystem für Windows, EXT4 oder mehrere andere Typen für Linux.
In Ihrem Fall müssen Sie Folgendes tun:
- Sichern Sie zuerst Ihre wichtigen Daten. Das ist wichtig.
- Booten Sie Linux vom USB-Stick (oder einer beliebigen Quelle außer Ihrer Systemfestplatte)
- Ändern Sie die Größe Ihrer ext4-Partition (verkleinern Sie sie). Sie können gemountete Partitionen nicht verkleinern, deshalb müssen Sie von einer externen Quelle booten.
- Passen Sie die Größe Ihrer virtuellen Systempartition an die reduzierte ext4-Größe an. Ich schlage vor, dass Sie aus Sicherheitsgründen eine etwas größere Größe als die ext4-Größe verwenden. Da Sie lvm verwenden, können Sie dies mit lvresize tun. Sie können sogar Schritt 3. und 4. gleichzeitig mit der Option lvresize --resizefs ausführen, was die sicherste Option ist.
- Jetzt müssen Sie das physische Volume mit pvresize verkleinern. Wählen Sie die Größe, die Sie für alle zukünftigen Linux-Partitionen benötigen (Sie können Partitionen im laufenden Betrieb mit lvm erstellen).
- Löschen Sie nun Ihre zugrunde liegende GPT-Partition und erstellen Sie sie neu. Wenn Sie Ihre Partition löschen und neu erstellen,MUSSStarten Sie die neue Partition amDasselbeSektorposition als Ihre gelöschte Partition, andernfalls verlieren Sie Ihre LVM-Daten (und höchstwahrscheinlich Ihr Dateisystem).
- Jetzt kannst du eine neue Partition für Windows erstellen (oder das machen lassen). (Vorher würde ich prüfen, ob ich Linux booten kann).
Die wichtigsten Befehle sind (alle als Root oder beginnend mit sudo):
# to list your logical volumes with phyisical pv-s
lvs -o +devices
# if you want 20G linux system disk
lvresize -r /dev/ubuntu-gnome-vg/your-system-lv-name 20G
# if you want preserve 500G for linux (you can use this space for anything)
pvresize --setphysicalvolumesize 500G /dev/sda3
# now resize the 3rd partition on disk1 to 500G (maybe a bit bigger for safety)
fdisk/parted/gparted
# after a reboot you can match up your pv exactly with the physical partition with (this is useful if you used the safe method and created a bit bigger partition eg.510G)
pvresize /dev/sda3
Obwohl es perfekt funktioniert (ich habe es mehrmals gemacht), ist es eine etwas fortgeschrittene Methode, nichts für Anfänger. Wenn Sie mit LVM/GPT nicht sehr vertraut sind, ist es möglicherweise einfacher, Ihr Linux-Dateisystem zu sichern (mounten Sie es von Ihrer Boot-CD, tarnen und gzippen Sie Ihr gesamtes Dateisystem und kopieren Sie es auf einen USB-Stick/eine externe Festplatte). Erstellen Sie dann zwei Partitionen (drei, um genau zu sein, behalten Sie die kleine EFI, eine Partition für Win und eine für Linux), installieren Sie Windows und erstellen Sie Ihr Linux-Dateisystem aus dem Tar.gz neu. Sie sollten sowieso eine Sicherung durchführen, also kann dies Ihr Backup-Plan sein, auch wenn Sie die erste Methode wählen!
Sonstige Hinweise: Ihr Windows überschreibt möglicherweise (und wird höchstwahrscheinlich) Ihren Bootmanager (z. B. Grub) und Ihr Linux lässt sich nicht mehr booten. Bei UEFI/GPT können Sie Ihr Betriebssystem auswählen, auf älteren Systemen müssen Sie Grub neu installieren. Das ist ganz einfach: Booten Sie einfach vom USB-Stick, führen Sie einen Chroot-Vorgang zum Systemdateisystem durch und führen Sie Grub-Install /dev/IhrFestplattengerätename aus. Viele Installations-USB-Sticks (Debian, Ubuntu) können von Ihrer Festplatte booten (Sie müssen dann keinen Chroot-Vorgang durchführen).
Antwort2
Meiner Erfahrung nach ist es einfacher, zuerst Windows und dann Linux zu installieren.
Allerdings benötigt Windows normalerweise eine NTFS
Partition. Windows überschreibt diegrub2
Bootmanagermit eigenen FensternBootloader. Während grub2
der Bootvorgang von Windows und Linux (Auswahlmenü und Standardboot nach < n > Sekunden) funktioniert, lädt der Windows-Bootloader nur das Windows-Betriebssystem.
- Backup System
- Ändern Sie die Größe Ihrer Linux-Partition
- Erstellen Sie eine neue Partition und formatieren Sie sie mit
NTFS
dem Dateisystem - Booten Sie vom Windows-Installationsmedium (DVD/USB) und installieren Sie Windows auf
NTFS
der Partition - Booten Sie das Linux-Live-Installationsmedium
- Chrooten Sie Ihre Linux-Partition und reparieren Sie Grub2 (aktualisieren/neu installieren).
Erledigt