Linux, kann ein Home-Verzeichnis verknüpft werden?

9

Ich habe eine zweite große Speicher-Festplatte in Ubuntu in / media / storage gemountet. Ich möchte, dass sich meine Home-Verzeichnisse für mich und alle zukünftigen Benutzer des Systems auch auf diesem Speicherlaufwerk befinden.

Ich dachte, dass der einfachste Weg, dies zu erreichen, darin besteht, / home nach / media / storage / home zu verschieben und dann einen Symlink zu erstellen, sodass / home auf / media / storage / home verweist. Würde das funktionieren?

Der einzige Grund, den ich frage, ist, dass ich weiß, dass in einem Home-Verzeichnis eines Benutzers viele spezielle Konfigurationsinformationen gespeichert sind, sodass ich nicht wusste, ob dies irgendetwas auf dem System vermasseln würde.

Gibt es bessere alternative Methoden zum Verschieben des Home-Verzeichnisses?

Jake Wilson
quelle

Antworten:

7

Was Sie beschreiben, ist eine Strategie, die funktionieren wird.

Eine andere Möglichkeit besteht darin, das Laufwerk direkt bei / home anstelle von / media / storage zu mounten . Wenn Sie dies getan haben, möchten Sie wahrscheinlich vorhandene Daten in andere Ordner verschieben, damit Sie nicht mit zusätzlichen Unterverzeichnissen / home / foo enden .

Das Hauptproblem bei beiden Strategien besteht darin, dass keine Home-Verzeichnisse verfügbar sind, wenn die Bereitstellung des Speicherlaufwerks aus irgendeinem Grund fehlschlägt. In diesem Fall wird die Symlink-Strategie wahrscheinlich schwerer scheitern. Die Direct-Mount-Strategie hinterlässt ein tatsächliches Verzeichnis, sodass Programme, die versuchen, auf / home / foo zuzugreifen, fehlschlagen, der einfache Zugriff auf / home jedoch weiterhin erfolgreich ist.

Quacksalber
quelle
1
Und wenn Sie die Verzeichnisse / home / foo auf dem Mount versteckt haben und die Festplatte jemals ausfällt, können sich die Benutzer weiterhin anmelden. Insbesondere bei grafischen Anmeldungen bedeutet die Unfähigkeit, in das Home-Verzeichnis eines Benutzers zu schreiben, dass er sich nicht anmelden kann.
KeithB
1
@ KeithB: Ja. Sie könnten Skelett-Home-Verzeichnisse so lassen, dass sie vom Mount ausgeblendet werden, obwohl dies möglicherweise nicht die optimale Wahl ist. Es stellt sich die Frage, ob sich der Benutzer mit einer eingeschränkten Grundkonfiguration anmelden soll oder ob die Anmeldungen fehlschlagen sollen, damit Sie das Problem beheben können. (Ich dachte darüber nach, diesen Punkt in der Antwort zu
verdeutlichen
Okay, ich denke, meine größte Sorge ist, dass wenn mein Speicherlaufwerk ausfällt, auf / home nicht zugegriffen werden kann. Der Hauptgrund, warum ich meine / home-Verzeichnisse auf einem anderen Laufwerk als das primäre Betriebssystemlaufwerk / die primäre Partitionspartition haben möchte, besteht darin, dass mein primäres Laufwerk, auf dem das Betriebssystem installiert ist, nur 100 Gigs beträgt und zwischen mehreren Benutzern, die ihre Home-Verzeichnisse füllen, gefüllt wird schnell auf. Es wäre also viel besser, / home auf dem viel größeren Speicherlaufwerk zu haben. Gibt es sowieso eine Art Kaskaden-Setup, bei dem / home, wenn es sich auf einem separaten Laufwerk befindet, das nicht gemountet werden kann, anderswo danach sucht?
Jake Wilson
@ Jakobud: Es klingt möglich, aber ich kenne keine existierende Lösung dafür; Möglicherweise ist zur Implementierung ein benutzerdefiniertes Skript erforderlich. Ich würde mir darüber keine Sorgen machen. Sie haben gute Gründe, diese Änderung vorzunehmen, und im Falle eines Mount-Fehlers möchte ich wahrscheinlich, dass das System inaktiv ist (mit unzulässigen oder grundsätzlich nutzlosen Anmeldungen), bis ich es manuell handhaben kann.
Quacksalber Quijote
Sie könnten auch eine Lösung wie LVM in Betracht ziehen, mit der Sie die Verzeichnisse / home auf beiden Laufwerken belegen können. Die Anwendung von LVM auf ein Nicht-LVM-System bedeutet jedoch im Grunde eine Neuinstallation, sodass dies einige Arbeit bedeuten würde. Wenn dies für den Heimgebrauch bestimmt ist, machen Sie sich darüber keine Sorgen. Bei einem kommerziellen Server kann eine LVM-Strategie in Betracht gezogen werden.
Quacksalber Quijote
4

Anstatt das gesamte /homeVerzeichnis mit einem anderen Ort zu verknüpfen (z. B. /media/storage/home), erstellen Sie Symlinks für jeden Benutzer separat und lassen Sie Ihr Administratorkonto nicht verknüpft, damit sich der Administrator jederzeit anmelden kann

/home/admin ist /home/admin

/home/billy ist verbunden mit /media/storage/home/billy

Cypour
quelle
1
Gibt es tatsächlich Distributionen, die / home / admin anstelle von / root als Homefolder für root verwenden? In beiden Fällen wäre es meiner Meinung nach immer noch einfacher, die Administratoren einfach an einen anderen Ort zu verschieben, als für jeden Benutzer einen Symlink zu erstellen.
Baarn
administ wahrscheinlich ein Konto mit Administratorrechten und der Möglichkeit, sich remote anzumelden (während die direkte Root-Anmeldung wahrscheinlich blockiert ist und daher für Wiederherstellungszwecke nicht ausreicht).
HonoredMule