Telnet не выводит эхо из сценария xinetd

У меня есть xinetd, и я написал скрипт:

#!/bin/bash echo "Some text" touch /home/somefile 

Я создал сервисную конфигурацию в /etc/xinetd.d/ и в основном работает, когда я подключаюсь к localhost под настроенным портом, потому что: файл somefile генерируется командой touch при подключении к службе. Я подключаюсь к telnet:

 telnet localhost someport 

Я не понимаю, что telnet не выводит строку «Some text». Что я могу сделать, чтобы сделать эту работу?

Здесь хранится файл конфигурации службы xinetd в файле /etc/xinetd.d/:

 # This is the configuration for the tcp/stream echo service. service my_service_name #not in /etc/services { # This is for quick on or off of the service disable = no # The next attributes are mandatory for all services id = my_custom_id type = UNLISTED wait = yes socket_type = stream protocol = tcp # External services must fill out the following user = root # group = server = /usr/bin/program_name_here # server_args = # External services not listed in /etc/services must fill out the next one port = 60001 } 

Изменение wait до no , скорее всего, решит вашу проблему. На странице руководства:

Если его значение да, услуга однопоточная; это означает, что xinetd запустит сервер, а затем прекратит обработку запросов на услугу до тех пор, пока сервер не умрет и серверное программное обеспечение не примет соединение.

Ключевым битом является то, что когда для ожидания установлено значение «да», серверное программное обеспечение, как ожидается, примет соединение, которое ваш скрипт не делает.