У меня есть служба (tomcat), для запуска которой требуется sudo. Я сделал простой скрипт на удаленном сервере в /root/bin/test.sh
#!/bin/sh
sudo service tomcat start
read
(Сценарий должен делать и другие вещи, только для простоты). Когда я запускаю его непосредственно на удаленном сервере, tomcat запускается и продолжает работать на сервере после моего отключения.
Когда я запускаю его удаленно, процесс запускается (я вижу его, когда его ставят на паузу для "чтения"), но как только сценарий заканчивается, он исчезает. (во время паузы для чтения запустите эту команду локально)
ps -ef | grep tomcat
Я пробовал различные комбинации команд nohup, screen и & на командах как на локальном компьютере, так и в сценарии test.sh на удаленном компьютере, но не могу заставить его работать.
ssh -t gregb@111.111.111.111 "/root/bin/test.sh"
ssh -t gregb@111.111.111.111 "nohup /root/bin/test.sh"
ssh -t gregb@111.111.111.111 "nohup /root/bin/test.sh &"
ssh -t gregb@111.111.111.111 "screen /root/bin/test.sh &"