Crontab не запущен на удаленном сервере SSH

#ssh #cron #remote-server

#ssh #cron #удаленный сервер

Вопрос:

Я хочу запускать скрипт оболочки bash каждые 7 утра каждый день. Но это не сработало. Это команды.

 00 07 * * * / usr / bin / sh /home/Download/download.sh
  

я попытался запустить на локальном устройстве. Когда я запускаю его на локальном устройстве, crontab работает нормально, но когда я пытаюсь запустить удаленный сервер, он не запускается. есть какое-либо решение в этом случае?

Комментарии:

1. Почему вы ставите пробелы между всеми частями /usr/bin/sh ?

Ответ №1:

Я предполагаю, что вы хотите запустить /home/Download/download .sh каждый день в 7 утра.

Сначала убедитесь, что ваш файл является исполняемым:

 chmod  x /home/Download/download.sh
  

В зависимости от вашего компьютера путь к sh может отличаться. Проверьте это с which sh помощью команды. В большинстве случаев это /bin/sh так, что ваш crontab будет выглядеть так:

 0 7 * * * /bin/sh /home/Download/download.sh
  

Но, тем не менее, я думаю, вам это не нужно /bin/sh , поэтому ваш crontab должен выглядеть так:

 0 7 * * * /home/Download/download.sh
  

Комментарии:

1. Файл не обязательно должен быть исполняемым, если вы запустите его с помощью /bin/sh filename

Ответ №2:

Один первый

 sudo crontab -e
  

Второй

 chmod  x /home/Download/download.sh
  

и последнее.

 0 7 * * * /home/Download/download.sh
  

Комментарии:

1. Сначала должен быть chmod, затем crontab. В противном случае вам придется снова закрыть crontab и снова открыть.

2. @charly1212 Порядок не имеет значения. Вам просто нужно сделать chmod это до 7 утра на следующий день.