1

Возможно ли иметь на одном жестком диске один домашний раздел (например, EXT4), совместно используемый несколькими операционными системами?

То, что я хотел бы сделать, это установить Linux, HURD и DragonFlyBSD в одной системе с одним домом.

Чтобы решить проблему конфликтующих файлов конфигурации, это может быть решением:

/home/
      user1/
      user1_linux/
      user1_hurd/
      user1_dfbsd/

где user1 - это псевдопользовательский каталог, в котором находятся все "нормальные" файлы, а остальные - реальные пользовательские каталоги, специфичные для ОС, в которые входят файлы конфигурации и файлы, специфичные для ОС.

Тогда каждая ОС должна иметь права доступа только к user1/ и к своему собственному выделенному каталогу пользователей.

1 ответ1

3

Это, безусловно, возможно, если поместить /home в отдельный раздел и смонтировать его в каждой из операционных систем. Тем не менее, это практически гарантированно приведет к большим проблемам.

Я хотел бы предложить альтернативное решение, которое хорошо мне помогло в течение восьми лет: управляемый версией репозиторий минимального набора утилит и файлов конфигурации, который, я могу быть уверен, не сломается при использовании на разных платформах и даже немного разных версиях приложений:

  • Конфигурация для множества приложений.
  • Файлы .gitignore, в которых перечислены файлы и каталоги, которые либо не имеют смысла для управления версиями (например, журналы), содержат секреты (например, файлы лицензий), либо слишком сложны для правильного управления версиями (например, те, которые смешивают во время выполнения такие вещи, как размер окна и файл конфигурации в одной строке JSON/XML).
  • Doc / файлы, чтобы напомнить себе о вещах, которые мне редко нужны, которые не являются конфигурацией.
  • примеры / кода.
  • патчи / к базовой системе для работы с set -o errexit в .bashrc. Это был эксперимент, чтобы убедиться, что мой .bashrc был в здравом уме, выходя из него рано в случае каких-либо проблем вообще. Это возможно, но сторонний код сломал некоторые вещи.
  • shell-includes / используется только для scripts/arch_linux_system_upgrade.sh , поэтому я предпочитаю обновлять Arch Linux.
  • make-includes / добавляет некоторые служебные цели в Makefile
  • Makefile может быть использован для
    • Очистите конфигурацию для облегчения контроля версий.
    • Запустите несколько небольших тестов для содержимого репозитория.
    • Создайте символические ссылки на точечные файлы в моем домашнем каталоге, чтобы избежать необходимости копировать туда-сюда.
    • Запустите пользовательские сервисы pulseaudio и redshift.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .