/etc/profile.d
é um meio específico do fornecedor de personalizar o ambiente de uma sessão de shell (definindo PATH
e assim por diante) e normalmente não estaria relacionado à inicialização de um daemon; alguns até argumentam que a inicialização do daemon não deve envolver /etc/profile.d
, de modo que as customizações do shell de usuário não façam com que um daemon falhe ao carregar ou carregue com configurações de ambiente incorretas (fuso horário, código de idioma etc.).
/etc/init.d
faz parte do sistema init SystemV, conforme implementado no Linux (o Digital UNIX, por outro lado, colocou-o em /sbin/init.d
); pode-se escrever um script de inicialização apropriado (estudar os scripts existentes para ver como fazer isso corretamente) que lançaria seu daemon. Isso lhe daria compatibilidade com o RHEL6 e o RHEL7.
Uma tarefa @reboot
cron poderia iniciar seu daemon, embora systemd
sob RHEL7 ofereça melhores recursos de gerenciamento do que um firewall e esqueça do cron (o que acontece se o daemon travar? ele deve ser reiniciado automaticamente? quão ruim seria se várias instâncias fossem iniciadas? Se mal, que tipo de bloqueio seria necessário para iniciar apenas uma instância?).