Я использую следующий скрипт с моей машины с Windows для запуска в Linux и резервного копирования.
@ECHO off
:: run remote command
plink.exe username@myserver /home/username/do-backup.sh
Проблема с этим скриптом в том, что я должен поддерживать свою сессию. поскольку резервное копирование занимает около 30 минут, поэтому я хочу знать, можно ли запустить этот сценарий, и после этого команда резервного копирования продолжает работать, даже если я выключу свою систему. или вы можете сказать, что я выполняю свой командный файл, он отправляется на сервер, выполняет сценарий на сервере, а затем возвращается, пока сценарий резервного копирования продолжает работать на сервере.
Если вы используете nohup
в вашей командной строке сценарий продолжит работу даже после завершения сеанса. Итак, изменив вашу команду на что-то вроде
plink.exe username@myserver nohup /home/username/do-backup.sh
Должен это сделать.
Я фанат
plink.exe username@myserver "echo /home/username/do-backup.sh | at now + 1 min"
который скажет удаленному серверу запустить скрипт через 1 минуту.
Обратите внимание, что поскольку это запускает сценарий через планировщик, вам может потребоваться убедиться, что сценарий правильно настраивает среду, это может быть не совсем та же среда, что и при запуске через интерактивный сеанс.