O .dsufixo aqui significa diretório. Claro, isso seria desnecessário como Unix não requer um sufixo para designar um tipo de arquivo, mas, nesse caso específico, algo era necessário para disambiguate os comandos ( /etc/init, /etc/rc0, /etc/rc1e assim por diante) e os diretórios que eles usam ( /etc/init.d, /etc/rc0.d, /etc/rc1.d,. ..)
Esta convenção foi introduzida pelo menos com o Unix System V, mas possivelmente anteriormente. O initcomando costumava estar localizado, /etcmas geralmente está agora nos /sbinsistemas operacionais modernos do System V.
Observe que esta convenção foi adotada por muitos aplicativos que se deslocam de um único arquivo de configuração de arquivo para vários arquivos de configuração localizados em um único diretório, por exemplo: /etc/sudoers.d
Aqui, novamente, o objetivo é evitar o conflito de nomes, não entre o arquivo executável e o arquivo de configuração, mas entre o antigo arquivo de configuração monolítico e o diretório que os contém.
.d, consulte o comentário de msw sobre esta questão relacionada no Ask Ubuntu .