Как постоянно запускать приложение на сервере [закрыто]

Я использую серверную версию Ubuntu 12.04. У меня есть доступ к серверу через ssh.

У меня вопрос: как запустить программу через SSH, чтобы она не закрывалась, даже если я отключу ssh. Он должен запускаться на сервере как служба.

вы можете сказать мне, как я могу это сделать?

0
задан 2 January 2014 в 14:51
6 ответов

Вызов команды с помощью nohup

из nohup информация:

'nohup' запускает данную КОМАНДУ с игнорированием сигналов зависания, так что Команда может продолжить работу в фоновом режиме после выхода из системы. Сводка:

  nohup КОМАНДА [ARG] ...
2
ответ дан 4 December 2019 в 11:01

nohup не помещает автоматически выполняемую команду в фоновом режиме, вы должны завершить командную строку символом &.

nohup command &

2
ответ дан 4 December 2019 в 11:01

В дополнение к совету nohup, рассмотрите возможность использования Экран GNU , он позволяет открывать несколько окон терминала с возможностью возобновления соединений, если ваш сеанс ssh умирает из-за любого причина.

1
ответ дан 4 December 2019 в 11:01

экран полезен.

Выполнить экран, затем запустить вашу команду, нажмите ctrl + A , затем d . Вы можете вернуться к своей программе. Запустите screen -ls , чтобы найти Отдельный экран, подключитесь к нему с помощью screen -r 20673.pts-0.srv .

1
ответ дан 4 December 2019 в 11:01

Выскочка ! Поскольку вы используете Ubuntu 12.04 ..

Вы создаете сценарий выскочки в / etc / init /

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

# my upstart script
# optional stuff
description "start and stop the THING"
version "1.0"
author "Tom"


# configuration variables.
# You'll want to change these as needed
env A_THING_TO_SET=blaaah

# tell upstart we're creating a daemon
# upstart manages PID creation for you.
expect fork
# of course, if it doesn't fork, take out the above line

script
# My startup script, plain old shell scripting here.
chdir /opt/thingy/bin
exec /opt/thingy/bin/thingy ARGUMENTS
# create a custom event in case we want to chain later
emit thingy_running
end script

Взято и адаптировано из: http://geeknme.wordpress.com/2009/10/15/getting-started-with-upstart-in-ubuntu/

Я также рекомендую вы читаете Поваренную книгу Upstart

. Если вы не используете Ubuntu, другие варианты включают supervisor (d) , monit , daemontools все это отстой гораздо меньше, чем запуск всего на экране или без поддержки.

2
ответ дан 4 December 2019 в 11:01

Хотя мы не должны давать рекомендации по продукту, вот мои отзывы о samhain . Меня попросили изучить лучшее решение на рынке средств проверки целостности файлов с открытым исходным кодом, и Samhain в итоге оказался лучшим, поскольку он многофункциональный, имеет открытый исходный код и активно развивается.

Вы можете настроить влияние ресурсов:

  • Ограничить ввод-вывод, генерируемый инициализацией / проверками SetIOLimit = 1000 (кБ / с)
  • Определить приоритет процесса для уменьшения воздействия: SetNiceLevel = 19
  • использование более простого алгоритма хеширования снизит нагрузку на ЦП
  • Выбор только тех атрибутов, которые вы считаете значимыми в процессе хеширования, уменьшит количество включаемых данных.
  • Ограничьте количество файлов, которые вы хотите отслеживать.
  • уменьшить частоту проверки проверка файлов

Источник:

3
ответ дан 4 December 2019 в 11:01

Теги

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