Kann ich mein Zuhause für mehrere Betriebssysteme freigeben?

Kann ich mein Zuhause für mehrere Betriebssysteme freigeben?

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

Ich möchte Linux, HURD und DragonFlyBSD auf demselben System installieren, also über ein einziges Home.

Um das Problem der widersprüchlichen Konfigurationsdateien zu beheben, könnte dies eine Lösung sein:

/home/
      user1/
      user1_linux/
      user1_hurd/
      user1_dfbsd/

wobei user1sich ein Pseudobenutzerverzeichnis befindet, in dem sich alle „normalen“ Dateien befinden, und die anderen Verzeichnisse die echten betriebssystemspezifischen Benutzerverzeichnisse sind, in denen Konfigurations- und betriebssystemspezifische Dateien abgelegt werden.

Dann sollte jedes Betriebssystem nur Zugriffsrechte auf user1/sein eigenes dediziertes Benutzerverzeichnis haben.

Antwort1

Dies ist sicherlich möglich, indem man /home auf einer separaten Partition ablegt und diese in jedem der Betriebssysteme einbindet. Dies ist jedochführt praktisch garantiert zu großen Problemen.

Ich möchte eine alternative Lösung vorschlagen, die mir seit acht Jahren gute Dienste leistet: eine versionskontrollierteRepositoryaus einem minimalen Satz von Dienstprogrammen und Konfigurationsdateien, bei denen ich mit hinreichender Sicherheit davon ausgehen kann, dass sie bei Verwendung auf unterschiedlichen Plattformen und sogar bei leicht unterschiedlichen Anwendungsversionen nicht kaputtgehen:

  • Aufbaufür viele Anwendungen.
  • .gitignore-DateienAuflisten der Dateien und Verzeichnisse, die entweder für die Versionskontrolle sinnlos sind (z. B. Protokolle), Geheimnisse enthalten (z. B. Lizenzdateien) oder deren Versionskontrolle einfach zu schwierig ist (z. B. solche, bei denen Laufzeitaspekte wie die Fenstergröße in einer Konfigurationsdatei in einer einzigen Zeile JSON/XML vermischt werden).
  • doc/-Dateien, um mich an Dinge zu erinnern, die ich selten brauche und die keine Konfiguration sind.
  • Beispiele/ Code.
  • patches/ zum Basissystem, um damit set -o errexitin .bashrc zu arbeiten. Dies war ein Experiment, um sicherzustellen, dass meine .bashrc in Ordnung war, indem ich sie bei Problemen frühzeitig beendete. Dies ist zwar machbar, aber Code von Drittanbietern hat einige Dinge kaputt gemacht.
  • shell-includes/ wird nur für verwendet scripts/arch_linux_system_upgrade.sh, und das ist die Art und Weise, wie ich Arch Linux am liebsten aktualisiere.
  • make-includes/ fügt dem Makefile einige Utility-Ziele hinzu
  • Das Makefile kann verwendet werden, um
    • Bereinigen Sie die Konfiguration für eine einfachere Versionskontrolle.
    • Führen Sie einige kleinere Tests des Repository-Inhalts durch.
    • Erstellen Sie symbolische Links zu den Dotfiles in meinem Home-Verzeichnis, um das Hin- und Herkopieren zu vermeiden.
    • Starten Sie die Benutzerdienste Pulseaudio und Redshift.

verwandte Informationen