So verschieben Sie Ihr Linux-Home-Verzeichnis auf ein anderes Laufwerk

Veröffentlicht: 2022-01-29
Linux-Terminal auf stilisiertem Laptop
Fatmawati Achmad Zaenuri/Shutterstock

Möchten Sie Ihren Linux-Home-Ordner auf ein anderes Laufwerk verschieben? Hier ist eine einfache und schrittweise Anleitung, die auf jeder Distribution funktionieren sollte. Das Verschieben Ihres Home-Ordners bedeutet, dass Sie Linux neu installieren können und sich keine Sorgen um Ihre persönlichen Dateien machen müssen.

Warum sollten Sie Ihren Home-Ordner separat aufbewahren?

Wenn Sie einen neuen Computer einrichten oder einem vorhandenen eine Festplatte hinzufügen, möchten Sie Ihr Home-Verzeichnis möglicherweise auf einem anderen Laufwerk als dem Standardspeicherort haben.

Eine immer beliebtere Konfiguration für moderne PCs ist ein mittelgroßes Solid State Drive (SSD) mit Ihrem Betriebssystem und ein größeres Solid State Hybrid Drive (SSHD) oder eine herkömmliche Festplatte (HD) als Hauptspeicher für Daten. Oder Sie haben möglicherweise eine einzige herkömmliche Festplatte in Ihrem System und haben eine neue HD für mehr Speicherplatz hinzugefügt. Was auch immer Ihre Gründe sind, hier ist ein einfacher und Schlag-für-Schlag-Durchlauf zum Verschieben Ihres Home-Verzeichnisses.

Übrigens, wenn Sie ein Linux-System von Grund auf neu installieren, sehen Sie wahrscheinlich eine Option zum Erstellen eines separaten Home-Verzeichnisses im Installationsprogramm Ihrer Linux-Distribution. Im Allgemeinen müssen Sie nur in die Partitionierungsoptionen gehen, eine separate Partition erstellen und sie unter „/home“ einhängen. Wenn Sie jedoch bereits eine Linux-Distribution installiert haben, können Sie diese Anweisungen verwenden, um Ihr aktuelles Home-Verzeichnis an einen neuen Ort zu verschieben, ohne etwas zu verlieren oder Ihr Betriebssystem neu zu installieren.

Jetzt, bevor wir anfangen, machen Sie ein Backup.

VERWANDT: So sichern Sie Ihr Linux-System mit rsync

Identifizieren Sie das Laufwerk

Wenn Sie gerade ein Laufwerk in einen Linux-Computer eingebaut oder Linux auf einem der Laufwerke in einem neuen Computer mit mehreren Laufwerken installiert und neu gestartet haben, gibt es kaum Anzeichen dafür, dass das neue Laufwerk überhaupt vorhanden ist.

Anzeige

Der Befehl fdisk listet die Laufwerke und ihre Partitionen für uns auf.

 sudo fdisk -l 

Blättern Sie durch die Ausgabe, bis Sie das neue Laufwerk identifiziert haben. Das erste Laufwerk heißt /dev/sda , das zweite /dev/sdb und so weiter, wobei der letzte Buchstabe jedes Mal größer wird. Somit wäre /dev/sde die fünfte Festplatte im System.

In diesem Beispiel ist das neue Laufwerk das zweite Laufwerk, das in das System eingebaut wird. Wir müssen also nach einem Eintrag für /dev/sdb suchen.

/dev/sdb ist oben hervorgehoben. Sie werden feststellen, dass es keine Zeile gibt, die eine Partition beschreibt. Es ist ein brandneues Laufwerk, also wird es noch keins haben. Wir müssen die Partition erstellen. Wir können dies mit fdisk tun. Wenn Ihre Festplatte nicht /dev/sdb ist, stellen Sie sicher, dass Sie /dev/sdb im Befehl durch die tatsächliche Laufwerkskennung für Ihre neue Festplatte ersetzen.

 sudo fdisk /dev/sdb 

Wenn fdisk Sie zur Eingabe eines Befehls auffordert, drücken Sie den Buchstaben p . Dies druckt die Partitionstabelle für die Festplatte. Wir wissen, dass es keinen haben wird, aber wir erhalten einige nützliche Informationen über das Laufwerk. Es gibt uns eine gute Chance sicherzustellen, dass das Laufwerk, für das wir eine Partition erstellen werden, das Laufwerk ist, mit dem wir arbeiten wollten.

Es sagt uns, dass es sich bei dem Laufwerk um ein 1-TB-Laufwerk handelt, was unseren Erwartungen in diesem Testgerät entspricht, also fahren wir fort.

Erstellen Sie eine Partition

Drücken Sie den Buchstaben n für eine neue Partition und drücken Sie dann p für eine primäre Partition. Wenn Sie nach der Partitionsnummer gefragt werden, drücken Sie die Nummer 1 .

Anzeige

Wir werden eine einzelne Partition für die gesamte Festplatte erstellen. Wenn wir also nach dem ersten Sektor gefragt werden, können wir die Eingabetaste drücken, um den Standardwert zu akzeptieren. Sie werden dann zur Eingabe des letzten Sektors aufgefordert und die Eingabetaste akzeptiert den Standardwert.

Obwohl fdisk bestätigt, dass es eine 1-TB-Linux-Partition erstellt hat, die Partition Nummer 1 ist, hat sich an der Festplatte noch nichts geändert. Bis Sie fdisk den Befehl geben, die Änderungen auf das Laufwerk zu schreiben, bleibt das Laufwerk unberührt. Wenn Sie sicher sind, dass Sie mit unserer Auswahl zufrieden sind, drücken Sie den Buchstaben w , um die Änderungen auf das Laufwerk zu schreiben.

Die Partition wurde nach /dev/sdb geschrieben. Sehen wir uns an, was gerade passiert ist. Wir werden fdisk noch einmal auf /dev/sdb verwenden.

 sudo fdisk /dev/sdb 

Drücken Sie den Buchstaben p , um diese Partitionstabelle zu drucken, und Sie werden sehen, dass jetzt eine Partition für das Laufwerk aufgelistet ist. Da es die erste Partition auf diesem Laufwerk war, heißt sie /dev/sdb1 . Eine zweite Partition würde /dev/sdb2 und so weiter.

Wir wollen keine Änderungen an der Partition vornehmen, also drücken Sie den Buchstaben q zum Beenden.

Erstellen Sie ein Dateisystem auf der Partition

Wir müssen ein Dateisystem auf der Partition erstellen. Das geht ganz einfach mit dem mkfs Befehl. Beachten Sie, dass Sie die Partitionsnummer in den Befehl aufnehmen müssen. Achten Sie darauf, /dev/sdb1 (die Partition) und nicht /dev/sdb (das Laufwerk) einzugeben.

 sudo mkfs -t ext4 /dev/sdb1 

Anzeige

Das Dateisystem wird für Sie erstellt und Sie kehren zur Eingabeaufforderung zurück.

Mounten des neuen Laufwerks

Um das neue Laufwerk zu verwenden, müssen wir die darauf befindliche Partition an einem Einhängepunkt im Dateisystem einhängen. Um ganz genau zu sein, mounten wir weder das Laufwerk noch die Partition, wir mounten das Dateisystem auf der Partition, indem wir es in den Dateisystembaum Ihres Systems einfügen.

Der /mnt -Punkt ist so gut wie jeder andere. Es ist nur ein temporärer Einhängepunkt, damit wir Daten auf das neue Laufwerk kopieren können. Wir werden den Befehl mount verwenden, um das Dateisystem auf der ersten Partition auf /dev/sdb unter /mnt .

 sudo mount /dev/sdb1 /mnt 

Wenn alles gut geht, kehren Sie ohne Fehlermeldungen zur Befehlszeile zurück. Mal sehen, ob wir das Verzeichnis in unser neu gemountetes Dateisystem ändern können.

 cd /mnt 

Ja wir können. Mal sehen, was hier ist.

 ls-ahl 

Wir befinden uns in unserem neuen Dateisystem. Das Standardverzeichnis „lost+found“ ist nicht erforderlich, sodass wir es entfernen können.

 sudo rm -rf verloren+gefunden 

Kopieren Ihres Home-Ordners

Wir müssen alles aus dem alten Home-Verzeichnis in das neu gemountete Dateisystem kopieren. Die Verwendung der Optionen r (rekursiv) und p (beibehalten) stellt sicher, dass alle Unterverzeichnisse kopiert werden und dass Dateieigentümer, Berechtigungen und andere Attribute beibehalten werden.

 sudo cp -rp /home/* /mnt 

Anzeige

Wenn der Kopiervorgang abgeschlossen ist, verwenden Sie ls , um sich umzusehen und zu überprüfen, ob sich Ihre Daten dort befinden, wo Sie sie im neuen Dateisystem erwarten. Mit anderen Worten, wenn /mnt Ihr Home-Verzeichnis war, ist alles vorhanden und korrekt?

 ls
 ist dave 

Sie werden wahrscheinlich etwas gründlicher sein wollen, als wir es auf der Testmaschine waren, auf der dieser Artikel recherchiert wurde. Als Sicherheitsnetz werden wir Ihr altes /home Verzeichnis umbenennen und behalten, bis Sie überzeugt sind, dass es sicher gelöscht werden kann.

 sudo mv /home /home.orig 

Und wir erstellen ein neues, leeres Home-Verzeichnis.

 sudo mkdir /home 

Wir verwenden dieses neue leere Home-Verzeichnis als Einhängepunkt für unser Dateisystem auf der neuen Festplatte. Wir müssen es von /mnt aushängen und auf /home neu einhängen. Beachten Sie, dass der Befehl umount kein „n“ nach dem „u“ hat.

Aber zuerst wechseln wir in das Stammverzeichnis (mit cd / ), um sicherzustellen, dass wir uns nicht in einem Verzeichnis befinden, das in die Mount- oder Unmount-Speicherorte aufgenommen wird.

 CD /
 sudo umount /dev/sdb1
 sudo mount /dev/sdb1 /home/ 

VERWANDT: Die Linux-Verzeichnisstruktur, erklärt

Testen Sie Ihr neues Home-Verzeichnis

Mal sehen, was die Attribute der Partition /dev/sdb1 jetzt sind:

 df /dev/sdb1 

Anzeige

Uns wird der Name des Dateisystems, die Größe der Partition und der verwendete und verfügbare Speicherplatz darauf angezeigt, und, was wichtig ist, wo sie gemountet ist. Es ist jetzt unser /home Verzeichnis. Das bedeutet, dass wir in der Lage sein sollten, genau so darauf zu verweisen, wie wir es auf das alte /home Verzeichnis könnten.

Wenn wir uns zu einem beliebigen Punkt im Dateisystem bewegen, sollten wir in der Lage sein, mit der Tastenkombination ~ Tilde zurück zu /home zu wechseln.

 CD /
 CD ~
 pwd
 ls 

 cd /home
 ls
 cd dave
 ls
 ls-a 

Wir können uns mit expliziten Befehlen und der Abkürzung ~ durch das Dateisystem hin und her zu /home bewegen. Die Ordner, Dateien und Punktdateien, die wir erwarten würden, sind alle vorhanden. Es sieht alles gut aus.

Wenn etwas fehlte, konnten wir es aus dem /home.orig , auf das wir im Stammverzeichnis des Dateisystems immer noch Zugriff haben. Aber es sieht alles gut aus.

Jetzt müssen wir /dev/sdb1 jedem Start Ihres Computers automatisch einhängen.

fstab bearbeiten

Die „fstab“-Datei enthält Beschreibungen der Dateisysteme, die beim Booten des Systems gemountet werden. Bevor wir Änderungen daran vornehmen, erstellen wir davon eine Sicherungskopie, auf die wir bei Problemen zurückgreifen können.

 sudo cp /etc/fstab /etc/fstab.orig 

Anzeige

Jetzt können wir die fstab-Datei bearbeiten. Verwenden Sie Ihren bevorzugten Editor, wir verwenden gedit . Jeder Texteditor tut es.

 sudo gedit /etc/fstab 

Sie müssen am Ende der Datei eine Zeile hinzufügen, um unser neues /home Verzeichnis einzuhängen. Wenn sich Ihre Laufwerks- und Partitionskennungen von den in diesem Beispiel verwendeten unterscheiden, ersetzen Sie diese durch die hier gezeigte /dev/sdb1 .

  • Geben Sie den Namen der Partition am Anfang der Zeile ein und drücken Sie dann die Tabulatortaste.
  • Geben Sie den Einhängepunkt /home ein und drücken Sie die Tabulatortaste.
  • Geben Sie die Dateisystembeschreibung ext4 ein und drücken Sie die Tabulatortaste.
  • defaults die Standardwerte für die Mount-Optionen ein und drücken Sie die Tabulatortaste.
  • Geben Sie die Ziffer 0 für die Dateisystem-Dump-Option ein und drücken Sie die Tabulatortaste.
  • Geben Sie die Ziffer 0 für die Option Dateisystemprüfung ein.

Verwenden von gedit zum Bearbeiten der fstab-Datei

Speichern Sie die fstab-Datei.

Starten Sie Ihr System neu

Wir müssen neu starten, um zu überprüfen, ob alles nach Plan gelaufen ist und Sie eine nahtlose Verbindung zu Ihrem neuen /home Verzeichnis haben.

Wenn dies nicht der Fall ist, haben Sie immer noch das Sicherheitsnetz Ihres ursprünglichen /home Verzeichnisses und der fstab-Datei, die bei Bedarf wiederhergestellt werden können. Aufgrund der von uns getroffenen Vorsichtsmaßnahmen – Kopieren des /home Verzeichnisses und der fstab-Dateien – können Sie Ihr System problemlos in den Zustand zurückversetzen, in dem es sich vor dem Start befand.

 sudo jetzt neu starten 

VERWANDT: Wie man Linux über die Befehlszeile neu startet oder herunterfährt

Letzte Kontrollen

Wenn Ihr System neu startet, überprüfen wir einfach, ob sich Ihr /home Verzeichnis wirklich auf Ihrer neuen Festplatte befindet und Ihr System nicht irgendwie (wie durch ein Wunder) wieder auf das alte /home Verzeichnis zurückgekehrt ist.

 df /dev/sdb1 

Großartig, es ist auf /home gemountet. Mission erfüllt.

Sobald Sie absolut sicher sind, dass Sie die Sicherheitskopie Ihres alten /home Verzeichnisses nicht mehr benötigen, können Sie es löschen:

 CD /
 sudo rm -rf home.orig/ 

Anzeige

Und wenn Sie feststellen, dass etwas nicht vom alten /home in Ihr neues /home kopiert wurde, können Sie es natürlich aus dem Backup wiederherstellen, das Sie erstellt haben, bevor wir begonnen haben.

Trautes Heim, Glück allein

Nachdem Sie nun Ihr /home Verzeichnis von der restlichen Partition des Betriebssystems getrennt haben, können Sie Ihr Betriebssystem neu installieren, und Ihre Daten bleiben unberührt. Alles, was Sie tun müssen, ist die fstab-Datei zu bearbeiten, um Ihr zweites Laufwerk auf /home zu mounten.

Und da sich alle Ihre Punktdateien in Ihrem /home Verzeichnis befinden, finden diese alle Ihre Einstellungen, Präferenzen und Daten, wenn Sie Ihre verschiedenen Anwendungen starten.

Es erspart Neuinstallationen und das Risiko von Upgrades.

RELATED: Beste Linux-Laptops für Entwickler und Enthusiasten