it-swarm.com.de

Wie kann ich meinen Home-Ordner von einem anderen Laufwerk aus verknüpfen?

Genauer gesagt, ich möchte, dass der Benutzerordner für mein Home-Konto eine andere Festplatte mit mehr Speicherplatz ist, aber meine anderen kleineren Konten auf meiner SSD belassen. Ich konnte meinen Benutzerordner auf einen anderen Datenträger kopieren, muss ihn aber jetzt mit dem Basisordner auf meiner SSD verknüpfen. Ich möchte, dass er von einem normalen Start aus zugänglich ist, und bitte sagen Sie mir nicht, dass ich nicht den Benutzerordner kopiert habe Das Beste, ich möchte nur eine Antwort. Wie kann ich einen Link erstellen, der von/home/Benutzername zu/extra-home/Benutzername geht und vom System beim Laden der Benutzerordner erkannt wird?

11
sbergeron

Denken Sie daran, dass Ihre Berechtigungen identisch sein müssen. Zusätzlich zu symlink können Sie auf neueren Distributionen und Dateisystemen als root auch bind-mount verwenden:

mkdir /home/username mount --bind --verbose /extra-home/username /home/username

Dies ist nützlich, um den Zugriff auf Unterverzeichnisse "über" das Verzeichnis/home über Dämonen zuzulassen, die ansonsten so konfiguriert sind, dass keine Pfade über Symlinks (Apache, ftpd usw.) gesendet werden.

Sie müssen sich natürlich an das (oder das Init-Skript) erinnern, das beim Neustart gebunden werden soll.

17
Joe Atzberger

Laut this Frage zum Super User ist dies möglich.

Sie können eine symbolische Verknüpfung erstellen, indem Sie Folgendes verwenden:

ln -s /extra-home/username /home/username

Wenn es aus irgendeinem Grund nicht funktioniert, können Sie einfach den symbolischen Link löschen, das Verzeichnis zurückschieben und Ihren Computer neu starten.

9

Ich würde Folgendes versuchen:

Wenn Sie als ein anderer Benutzer angemeldet sind, kopieren Sie in einer Root-Shell (z. B. Sudo -i) den Inhalt von /home/username nach /extra-home/username und stellen Sie sicher, dass der neue Speicherort im Besitz von username ist:

# cp -p /home/username /extra-home/
# chown username:username /extra-home/username

Verschieben Sie das ursprüngliche Verzeichnis /home/username/ an einen sicheren Ort:

# mv /home/username /root/

Erstellen Sie den Symlink:

# ln -s /extra-home/username /home/username

Stellen Sie sicher, dass es wie erwartet funktioniert, indem Sie ein anderes Terminalfenster öffnen und su ausführen:

$ Sudo su username

Wenn zumindest vom Terminal aus alles gut aussieht (der Inhalt von /home/username/ wird wie erwartet angezeigt), melden Sie sich ab und wieder an (ich gehe davon aus, dass Sie sich auf dem Ubuntu-Desktop befinden) und es sollte normal arbeiten. Wenn dies nicht der Fall ist, löschen Sie einfach den Symlink und verschieben Sie den archivierten Basisordner zurück an seinen ursprünglichen Speicherort.

2
Paul