Você pode obter algumas informações úteis se ignorar o script de inicialização e executar o xinetd diretamente com o sinalizador de depuração -d.
/usr/sbin/xinetd -f /etc/xinetd.conf -d
Na minha caixa Gentoo quando não tenho nenhum serviço definido, o comando acima sairá após o resultado abaixo da depuração
09/10/26@21:26:05: DEBUG: 23117 {cnf_start_services} mask_max = 0, services_started = 0
09/10/26@21:26:05: CRITICAL: 23117 {init_services} no services. Exiting...
Com um serviço habilitado (chargen neste caso, em /etc/xinetd.d/chargen-stream altere a linha 'disable = yes' para 'disable = no') executando o comando acima produz a seguinte saída e o xinetd não sai até pressionar Ctrl-c.
09/10/26@21:41:00: DEBUG: 23261 {cnf_start_services} Started service: chargen-stream
09/10/26@21:41:00: DEBUG: 23261 {cnf_start_services} mask_max = 6, services_started = 1
09/10/26@21:41:00: NOTICE: 23261 {main} xinetd Version 2.3.14 started with libwrap loadavg options compiled in.
09/10/26@21:41:00: NOTICE: 23261 {main} Started working: 1 available service
09/10/26@21:41:00: DEBUG: 23261 {main_loop} active_services = 1
Como nota de rodapé, se você executar o script init com o chargen ativado, então você poderá usar o netstat para ver o xinetd ouvindo na porta chargen, executando o seguinte comando:
netstat -tap | grep xinetd
A saída deve ser algo como isto:
tcp 0 0 *:chargen *:* LISTEN 23439/xinetd