Запустите сервисы только, когда действительно требуется

Я использую свое настольное поле в качестве dev "сервер", таким образом, я установил mysql+apache+whatever. Это заставляет начальную загрузку длиться дольше, также потребление памяти высоко, так как у меня есть все это сервисное выполнение.

Программное обеспечение существует, который может запустить данный сервис только, когда к его порту получают доступ?

Скажите: запустите апача только, когда будет запрос на localhost:80 и так далее.

2
задан 16 April 2014 в 19:55

1 ответ

Вы могли, вероятно, использовать knockd, чтобы сделать это, если бы Вы действительно хотели. У меня также есть довольно много демонов, установленных для различного использования, и я склонен просто отключать их запускающийся на начальной загрузке и вручную запускать их, когда мне нужны они. Команда, чтобы сделать так была бы:

sudo update-rc.d $serviceName disable

и затем очевидное

sudo service $serviceName start

, когда Вы на самом деле хотите его выполнение.

knockd conf, о котором я могу думать первое, что пришло на ум, посмотрел бы что-то как:

[ApacheHTTP]
    sequence = 80
    seq_timeout = 10
    command = /usr/bin/service apache2 start
    tcpflags = syn
    cmd_timeout = 10

и т.д., и т.д. для всех сервисов Вы хотите. Это автоматически не остановит их, как бы то ни было. Можно добавить строку, которая говорит 'stop_command = остановка/usr/bin/service apache2', если Вы хотите, но это могло бы завершить работу ее без Вас желающий к.

1
ответ дан 8 October 2019 в 01:13

Другие вопросы по тегам:

Похожие вопросы: