A principal força motriz por trás da existência dessa convenção de nomenclatura de diretório é o gerenciamento mais fácil de pacotes de arquivos de configuração. Seja seu rpm, deb ou qualquer outra coisa, é muito mais fácil (e provavelmente mais seguro) poder soltar um arquivo em um diretório para que ele seja incluído automaticamente na configuração de um programa em vez de tentar editar um arquivo de configuração global.
Um bom exemplo disso é o logrotate. No diretório /etc/logrotate.d existem arquivos de configuração para praticamente todos os aplicativos que você instalou que mantêm um logon / var / log . Alguns são agrupados na configuração do syslog porque quase todo sistema possui um arquivo de mensagens, wtmp e lastlog. Mas se você instalar o Apache em seu sistema, precisará de uma maneira fácil de adicionar automaticamente a configuração para girar os logs do Apache, para que ele simplesmente solte um arquivo de configuração chamado httpd em /etc/logrotate.de logrotate está configurado para incluir os arquivos nesse diretório. Cada um pertence ao pacote para o daemon e, se você remover o pacote, ele removerá o arquivo. É basicamente uma maneira de modularizar arquivos de configuração. Observe que isso precisa ser suportado pelo programa, não é algo automático que o sistema faça por você ou algo assim. Geralmente, os programas que possuem uma diretiva de configuração chamada include especificam onde esse diretório está localizado no sistema de arquivos.
logrotate.d pode até ser o primeiro local em que essa convenção foi usada fora dos diretórios init.d e rc.d para scripts init.