crontab не выполняет скрипт

Я пытаюсь запустить скрипт, расположенный в /Documents/scripts/startup.sh, который содержит только команду sudo mount / dev / sda1 / mnt при запуске. Я добавил его в crontab, выполнив crontab -e и добавив @reboot /Documents/scripts/startup.sh в crontab. однако при запуске проверка / mnt показывает, что диск не был смонтирован. Я также проверил, что crontab работает, выполнив статус cron службы sudo и он работает. Буду признателен за любую помощь по этому вопросу.

Редактировать: Добавление журнала обслуживания

May 02 11:20:24 jovan-desktop CRON[995]: pam_unix(cron:session): session opened for user root by (uid=0)
May 02 11:20:24 jovan-desktop CRON[1036]: (root) CMD (sudo mount dev/sda1 /mnt)
May 02 11:20:24 jovan-desktop CRON[1035]: (jovan) CMD (/home/jovan/Documents/scripts/startup.sh)
May 02 11:20:24 jovan-desktop CRON[996]: (CRON) info (No MTA installed, discarding output)
May 02 11:20:24 jovan-desktop CRON[996]: pam_unix(cron:session): session closed for user jovan
May 02 11:20:24 jovan-desktop sudo[1037]:     root : TTY=unknown ; PWD=/root ; USER=root ; COMMAND=/usr/bin/mount dev/sda1 /mnt
May 02 11:20:24 jovan-desktop sudo[1037]: pam_unix(sudo:session): session opened for user root by (uid=0)
May 02 11:20:24 jovan-desktop sudo[1037]: pam_unix(sudo:session): session closed for user root
May 02 11:20:24 jovan-desktop CRON[995]: (CRON) info (No MTA installed, discarding output)
May 02 11:20:24 jovan-desktop CRON[995]: pam_unix(cron:session): session closed for user root

Спасибо.

0
задан 2 May 2020 в 18:25

1 ответ

(root) CMD (sudo mount dev/sda1 /mnt)

В нем отсутствуют первые / в / dev / sda1

(jovan) CMD (/home/jovan/Documents/scripts/startup.sh)

Это работает с вашей (Йован) личность. Вы не можете ожидать, что он каким-то образом угадывает ваш пароль для аутентификации в sudo , не так ли?) Я бы сказал, что помещать sudo где-либо в неинтерактивный скрипт неправильно.

Обратите внимание, что для монтирования файловых систем во время загрузки существует файл / etc / fstab . Вы просто добавляете туда свою файловую систему, и сценарии запуска (или systemd ) будут монтировать ее, если только вы не пометите ее noauto .

И, наконец, я бы порекомендовал вам установить почтовый транспортный агент (даже если он доставляет почту на ваш компьютер), в этом случае вы получите сообщение об ошибке в своем почтовом ящике.

1
ответ дан 19 June 2020 в 21:44

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

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