Kann ich mein Zuhause auf mehrere Betriebssysteme verteilen?

1

Ist es möglich, auf derselben Festplatte eine einzelne Home-Partition (z. B. EXT4) zu haben, die von mehreren Betriebssystemen gemeinsam genutzt wird?

Was ich tun möchte, ist, Linux, HURD und DragonFlyBSD auf demselben System zu installieren, mit einem einzigen Zuhause.

Könnte dies eine Lösung sein, um das Problem in Konflikt stehender Konfigurationsdateien zu lösen:

/home/
      user1/
      user1_linux/
      user1_hurd/
      user1_dfbsd/

Dabei user1handelt es sich um ein Pseudo-Benutzerverzeichnis, in dem sich alle "normalen" Dateien befinden, und bei den anderen handelt es sich um die tatsächlichen betriebssystemspezifischen Benutzerverzeichnisse, in denen Konfigurations- und betriebssystemspezifische Dateien gespeichert sind.

Dann sollte jedes Betriebssystem nur Zugriffsrechte user1/und ein eigenes dediziertes Benutzerverzeichnis haben.

Pietro
quelle
Die einzige Möglichkeit, dies aus der Ferne zu sehen, ist, wenn Sie eine Art Single Sign-On (SSO) hatten
Ramhound
3
Werfen Sie einen Blick auf diese Antwort von Unix.SE - unix.stackexchange.com/questions/6344/…
Michael Frank
@MichaelFrank - Ihr Link bietet eine gute Antwort auf meine Frage. Vielen Dank.
Pietro

Antworten:

3

Dies ist sicherlich möglich, indem Sie / home auf eine separate Partition stellen und in jedes Betriebssystem einbinden. Dies führt jedoch garantiert zu großen Problemen .

Ich möchte eine alternative Lösung vorschlagen, die mir seit acht Jahren gute Dienste leistet: Ein versionskontrolliertes Repository mit einer minimalen Anzahl von Dienstprogrammen und Konfigurationsdateien, von denen ich sicher sein kann, dass sie nicht beschädigt werden, wenn sie auf verschiedenen Plattformen und sogar in geringfügig unterschiedlichen Versionen verwendet werden von Anwendungen:

  • Konfiguration für viele Anwendungen.
  • .gitignore-Dateien, in denen die Dateien und Verzeichnisse aufgelistet sind, die für die Versionskontrolle sinnlos sind (wie z. B. Protokolle), Geheimnisse enthalten (wie z. B. Lizenzdateien) oder einfach zu schwer für eine ordnungsgemäße Versionskontrolle sind (wie z. B. das Einmischen von Laufzeitelementen wie Fenstergröße) eine Konfigurationsdatei in einer einzigen Zeile von JSON / XML).
  • doc / files, um mich an Dinge zu erinnern, die ich selten brauche und die keine Konfiguration sind.
  • Beispiele / Code.
  • Patches / auf set -o errexitdas Basissystem, mit dem in der .bashrc gearbeitet werden soll. Dies war ein Experiment, um sicherzustellen, dass meine .bashrc-Datei vernünftig ist, indem sie bei irgendwelchen Problemen vorzeitig beendet wird. Dies ist möglich, aber der Code eines Drittanbieters hat einige Probleme verursacht.
  • shell-includes / wird nur für verwendet scripts/arch_linux_system_upgrade.sh, weshalb ich Arch Linux lieber aktualisiere.
  • make-includes / fügt dem Makefile einige Utility-Ziele hinzu
  • Das Makefile kann dazu verwendet werden
    • Bereinigen Sie die Konfiguration, um die Versionskontrolle zu vereinfachen.
    • Führen Sie einige kleinere Tests für den Repository-Inhalt durch.
    • Erstellen Sie Symlinks zu den Punktedateien in meinem Ausgangsverzeichnis, damit Sie nicht hin und her kopieren müssen.
    • Starten Sie die Benutzerdienste pulseaudio und redshift.
l0b0
quelle
Wie funktioniert das Konfigurations-Repository?
Xen2050
In der Readme-Datei wird nur das Installieren und Testen beschrieben. Aber nur die grundlegenden Schritte dessen, was es tut, würden ausreichen, wie man beschreibt, wie jemand seine eigenen Skripte erstellen könnte. (Ohne weitere Informationen ist Ihre Antwort im Grunde auch eine Nur-Link-Antwort)
Xen2050