Я знаю много каталогов с именем .d:
init.d
yum.repos.d
conf.d
Это значит каталог? Если да, то с чем это связано?
ОБНОВЛЕНИЕ: у меня было много интересных ответов о том, что .d
означает, но название моего вопроса не было правильно выбрано. Я изменил «значит» на «стоять».
.d
см. Комментарий msw по этому вопросу в Ask Ubuntu ..d
вinit.d
, но это , кажется , почти все пользовательские файлы конфигурации идут в.d
каталогах в RHEL / CentOS / Fedora.Ответы:
.d
Суффикс здесь означает каталог. Конечно, это было бы ненужным , поскольку Unix не требует суффикса для обозначения типа файла , но в этом конкретном случае, что - то необходимо было неоднозначность команды (/etc/init
,/etc/rc0
,/etc/rc1
и так далее) и каталогов , которые они используют (/etc/init.d
,/etc/rc0.d
,/etc/rc1.d
,. ..)Это соглашение было введено, по крайней мере, в Unix System V, но, возможно, ранее.
init
Команда используется для размещения в ,/etc
но , как правило , в настоящее время/sbin
на современных System V операционки.Обратите внимание, что это соглашение было принято многими приложениями, переходящими из одного файла конфигурации файла в несколько файлов конфигурации, расположенных в одном каталоге, например:
/etc/sudoers.d
Здесь опять-таки цель состоит в том, чтобы избежать конфликта имен не между исполняемым файлом и файлом конфигурации, а между бывшим монолитным файлом конфигурации и каталогом, в котором они содержатся.
источник
ls
команду (неls -al
) без использования--color
опции (явно указанной илиLS_OPTIONS
являющейся частью переменной среды), наличие «.d» делает каталоги выделенными из списка. Вот почему я всегда думал, что это было сделано.color
не единственный или лучший способ визуально пометить каталоги.ls -F
сделаю это и еще много полезных вещей.Выдержка из списка рассылки Debian (выделение добавлено):
Для части 2, причина для «.d», моя лучшая догадка будет «распределена», как не в основном файле конфигурации, а в части конфигурации .
источник
.d
то еще значило за мной! Но этот источник показывает только обоснование Debian для использования в одном контексте соглашения, существовавшего с первых дней существования Unix. Я должен задаться вопросом, действительно ли этот сопровождающий Debian преднамеренно упрощал - или действительно думал, что Debian изобрел эту практику.Если вы говорите о «.d» в конце имен каталогов, этот ответ правильный, это просто маркер для «каталогов».
Только не путайте его с «d» в имени и имени файла, например «syslogd», что означает « демон» . Компьютерный процесс работает в фоновом режиме.
источник
syslogd
, не каталогах, заканчивающихся на «.d». Я скоро отредактирую.sysctl.d
,modprobe.d
.. это будет неуместное использование?Это не означает, что каталоги сами по себе, в основном происходит то, что каталоги, которые заканчиваются
.d
(обратите внимание, что они обычно только когда-либо/etc
), занимают части конфигурации.Это разработано так, чтобы дистрибутивы могли включать в себя универсальные значения по умолчанию, например
/etc/yum.conf
, но тогда есть простой в использовании метод для пользователей или других пакетов для добавления их собственных конфигураций yum безопасным способом, который не будет перезаписан.Как пример для ням ...
Если я хочу начать использовать EPEL на своем RHEL5 или CentOS Box, я могу настроить новый репозиторий в
/etc/yum.repos.d
папке (скажем/etc/yum.repos.d/epel.repo
) или установить пакет epel-release, который автоматически создает файл, не изменяя конфигурацию по умолчанию и не вызывая конфликты файлов, которые не должно случитьсяЧто произойдет, так это то, что большинство программ прочитают свою конфигурацию по умолчанию (
/etc/yum.conf
например), а затем переберут свои.d
папки, включая фрагменты конфигурации, в работающую программу.Надеюсь, это объясняет это для вас.
источник
Точно так же, как файлы могут
.ext
указывать тип файла (обычно называемый «расширением»), каталоги иногда должны.d
показывать, что это каталог, а не файл. Это его тип.ls
Вывод по умолчанию визуально не различает каталоги и файлы, так что.d
это просто старое соглашение, показывающее его тип (каталог) в таких списках.источник
.d
суффикс предотвращает конфликты с файлом с аналогичным именем. Например, вы можете иметь файл конфигурации/etc/apt/sources.list
и каталог файлов конфигурации/etc/apt/sources.list.d
.В более общем смысле, каталоги .d (другой пример - /etc/httpd/conf.d, /etc/rc.d, / etc /) указывают, что содержащиеся в них файлы будут читаться и использоваться, часто для конфигурации, если они совпадают. данный шаблон и не требует явного добавления в какой-либо основной список.
Поэтому, если вы добавите файлы вида * .repo в /etc/yum.repos.d, yum будет использовать их при запуске, не добавляя их в список конфигураций /etc/yum.conf. Если вы добавите файлы вида * .conf в /etc/http/conf.d, они будут прочитаны Apache без необходимости явного добавления в /etc/httpd/conf/httpd.conf. Аналогично, chkconfig для файлов в /etc/init.d, cron заданий в /etc/cron.d.
источник
Я думаю, но не может документально подтвердить, что
.d
указывает на то, что каталог , связанный с д aemon.Доказательства указывают на то, что это по крайней мере правдоподобно:
Где-то в глубоких зарослях маленьких кусочков древней истории Unix, все еще гремящих в глубине моего сознания за паутиной, это вызывает у меня правильный ответ. Я полагаю, что это могло произойти со времени, когда первые млекопитающие бродили по земле, прежде чем динозавры начали вымирать, и
man
страницы были не только в системе, но и физически в стойках, измеряемых ногой.источник
</cobwebs>
Я полагаю, что ответы, которые указывают, что цель состоит в том.d
, чтобы избавиться от неоднозначности каталога от связанных и имеющих одинаковые имена файлов, являются правильными. Я проголосовал за E-man и jlliagre.yum
это более новое изобретение.