Конфигурационная этика (эстетика): / etc vs $ HOME

Хорошо, это может быть не очень конкретный вопрос, и, возможно, он подвержен вкусу, но я изо всех сил стараюсь сделать это правильно, так что вот оно.

У меня есть компьютер. На этом компьютере есть Linux (слава богу). Arch Linux определен (с awesome wm). Я – единственный пользователь на этом компьютере.

Что касается хорошей практики, я настроил двух пользователей: пользователя root и romeovs пользователя romeovs . Таким образом, я использую только разрешения при необходимости (используя, например, sudo ).

На протяжении многих лет я выпускал свой программный пакет, добавляя на этот компьютер множество приложений. В частности: vim , git , mpc , mutt , calcurse , ufw , …

Теперь вот rub: какой из конфигурационных файлов этих приложений я использую? Все они предоставляют глобальный файл конфигурации /etc , который затрагивает всех пользователей, а также локальные опции конфигурации ~/.config (или, к сожалению, ~/ ).

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

  • dicrepancy при переключении на пользователя root , даже с помощью sudo (например, при использовании vim )

  • не всегда будут работать, например, при загрузке деамонов из массива DEAMONS из арки linux они запускаются пользователем root и, следовательно, не собирают локальные пользовательские конфиги.

  • основной каталог $HOME . К сожалению, очень мало приложений, которые придерживаются философии $XDG_CONFIG_HOME .

Преимущества:

  • материал является локальным, что больше ощущается в строках разрешений, разделяющих root и romeovs .

  • быстрый и легкий доступ к файлам. не нужно sudo редактировать их.

  • проще для git отслеживания файлов конфигурации.

  • как-то чувствует себя более безопасно: пользователь может закручивать содержимое без messign с глобальными настройками машины.

  • это более "a-package-update-may-overwite-my-config" -защищенный

Давайте получим:

Каков де-факто стандарт для разделения конфигурации на одной пользовательской машине, особенно для системного администратора (однопользовательского)?

One Solution collect form web for “Конфигурационная этика (эстетика): / etc vs $ HOME”

Однажды вы собираетесь сменить свой компьютер или дать кому-то другому (например, члену семьи) учетную запись на вашем компьютере.

  • Если вы хотите сохранить настройки на вашем следующем компьютере, поместите их в свой домашний каталог.
  • Если другой человек может захотеть другой настройки, поместите его в свой домашний каталог.
  • Если этот параметр зависит от компьютера и не зависит от пользователя, введите его в /etc

Ваши аргументы против размещения файлов конфигурации в домашнем каталоге на самом деле не содержат воды:

  • sudo сохраняет переменную среды HOME (если только вы не сказали ей об этом). Таким образом, ваши программы будут продолжать читать свои настройки из вашего домашнего каталога.
  • Демоны не должны читать ваши личные настройки. Демоны обычно настраиваются через файлы в /etc , а не через переменные среды или через файлы в вашем домашнем каталоге.
  • Предполагается, что в $HOME должно быть много точечных файлов. Вот почему они их не показывают.
  • Что делают скрипты в файле /etc/profile.d?
  • Собственность на папку etc изменена, как восстановить ее с помощью командной строки?
  • Есть ли способ узнать, какие файлы в файле / etc были изменены?
  • Не удается закрыть файл / etc / mtab при восстановлении / etc с помощью rar
  • Запретить пользователю вводить, перечисляя определенные папки
  • Управление конфигурацией, общие файлы и т. Д. С помощью ноутбука
  • Увеличение ограничения nproc для пользователя без полномочий root. Эффективно только перезапуском
  • Mysqld_multi не распознает группы
  • DHCP и корневая файловая система только для чтения
  • /etc/udev/rules.d/ vs /lib/udev/rules.d/ - что использовать и почему?
  • / etc / fstab 5-я колонка
  • Linux и Unix - лучшая ОС в мире.