Рейтинг:0

Есть ли причина, по которой sysctl разбит на такое количество файлов конфигурации?

флаг om

Есть ли веская причина, по которой sysctl разбито на такое количество файлов конфигурации в нескольких каталогах?

Есть ли причина, по которой я не могу удалить все sysctl.d конфигурационные файлы и поместите все в /etc/sysctl.conf?

В моей системе работает Xubuntu 20.04 и sysctl.d каталоги:

  • /etc/sysctl.d/
  • /usr/lib/sysctl.d/

Но должны быть другие файлы конфигурации с sysctl ключи, потому что если я запускаю:

# sudo sysctl --система

он выводит все ключи из моего кастома /etc/sysctl.conf файл и все ключи из различных sysctl.d файлы.

Однако, если я запускаю:

# судо sysctl -а

он выводит тонны ключей, не установленных явно (во всяком случае, мной).

Я думаю, мне также действительно нужно знать, как найти все файлы конфигурации, которые загружаются sysctl ключи в ядро.

человек системный перечислите всего 6 возможных местоположений для sysctl файлы конфигурации:

  • /запустить/sysctl.d/ которого не существует.
  • /etc/sysctl.d/ который содержит 8 конфигурационных файлов, сгенерированных ОС и 99-sysctl.conf символическая ссылка на /etc/sysctl.conf.
  • /usr/local/lib/sysctl.d/ которого не существует.
  • /usr/lib/sysctl.d/ который содержит 3 файла, установленных ОС.
  • /lib/sysctl.d/ что то же самое, что /usr/lib/sysctl.d/ хотя он не показывает символическую ссылку.
  • /etc/sysctl.conf мой сильно модифицированный sysctl файл.

Я просмотрел все отдельные файлы конфигурации, и они не учитывают даже половину sysctl ключи загружаются в ядро. Я понимаю, что некоторые приложения могут установить sysctl keys, но должны быть другие конфигурационные файлы, загружающие все эти ключи в ядро.

Кроме вариантов для sysctl команда, на странице руководства нет других данных.

флаг ar
Какой дистрибутив и версию Linux вы используете?
muru avatar
флаг us
«по нескольким каталогам», какие каталоги?
emptysocket avatar
флаг om
Я отредактировал свой вопрос с дополнительной информацией. Спасибо!
heynnema avatar
флаг ru
**ОПАСНОСТЬ ОПАСНОСТЬ**! Хватит возиться с файлами системного уровня. Ничего не удаляйте. Не кладите кучу ненужного в /etc/sysctl.conf. Вы получите действительно сломанную систему.
bac0n avatar
флаг cn
Отдельный файл обычно принадлежит разным пакетам `apt-file find /etc/sysctl.`, как и sysctl.conf (procps), если какой-либо из этих пакетов будет обновлен, ваши изменения будут потеряны.
bac0n avatar
флаг cn
...как и в каком порядке загружаются параметры описано в `man sysctl`
флаг cn
«Есть ли веская причина, по которой sysctl разбит на такое количество файлов конфигурации в нескольких каталогах?» Да, есть. 1. непрерывность. При возникновении ошибки каталог с проблемной частью пропускается. Когда в 1 конфе такого быть не может. Ошибка означает сбой системы. 2. чтобы избежать зависимостей: файлы можно упорядочивать и выполнять по порядку. В 1 конфе это невозможно. и еще много причин :)
флаг cn
Это сделано по уважительной причине. UBUNTU не участвовал в этом, поэтому мне кажется, что это не по теме.
emptysocket avatar
флаг om
Так это проблема Debian или Linux, а не Ubuntu?
Рейтинг:0
флаг us

/запустить/sysctl.d/ которого не существует.

/бег временно, изменения в нем теряются при перезагрузке. Поэтому вставьте файлы конфигурации в /бег используются для изменения текущей загрузки, но без сохранения этих изменений после перезагрузки.

/etc/sysctl.d/ который содержит 8 конфигурационных файлов, сгенерированных ОС и 99-sysctl.conf символическая ссылка на /etc/sysctl.conf.

Здесь будет храниться конфигурация из пакетов, которые администратору разрешено изменять. дпкг сообщит вам, когда ваши изменения конфликтуют с обновлениями пакета.

/usr/local/lib/sysctl.d/ которого не существует.

/USR/местный предназначен для использования администратором, и пакеты ничего там не сделают. Вы должны создать каталог, если он вам понадобится.

/usr/lib/sysctl.d/ который содержит 3 файла, установленных ОС.

Файлы в /USR/библиотека не предназначены для изменения администратором. Обновления пакетов перезапишут изменения здесь.

/lib/sysctl.d/ что то же самое, что /usr/lib/sysctl.d/ хотя он не показывает символическую ссылку.

С в /usr сливаться, /бин, /библиотекаи т. д. являются символическими ссылками на соответствующие каталоги в /usr.

/etc/sysctl.conf мой сильно модифицированный sysctl файл.

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


Изменить конфигурацию транзакционно проще всего, когда вы можете просто добавить или удалить файл с нужным вам содержимым, вместо того, чтобы использовать регулярные выражения или что-то еще для изменения строки в середине файла конфигурации, заполненного неизвестно чем. То есть каталоги, позволяющие вставлять файлы конфигурации, гораздо предпочтительнее, чем одиночные файлы конфигурации.

emptysocket avatar
флаг om
Это именно то, что мне нужно было знать. Спасибо.

Ответить или комментировать

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