Я пытаюсь запустить start.sh в перезагрузке с crontab. Но ничего не происходит afer перезагрузка, и журнал без ошибки. Кто-то знает то, что я сделал неправильно? Для тестирования я дал start.sh и Mod.jar 777 разрешений, но тем не менее ничто после перезагрузки. Если я запускаю, start.sh вручную вошел в систему как otto, все в порядке, и Mod.jar запускается после этих 60 секунд.
Содержание crontab-e (как Пользователь Otto)
@reboot ./home/otto/server/start.sh
Содержание start.sh
sleep 60
/usr/bin/screen -d -m -S mod java -mx100M -jar /home/otto/server/Mod.jar
Журнал Крона без ошибки.
May 1 12:12:02 srv1 /USR/SBIN/CRON[1881]: (otto) CMD (./home/otto/server/start.sh)
Добро пожаловать в AU!
Это, кажется, случай дисплея (или stdout
) не быть правильно определенным средой крона Вашего пользователя (поскольку обычно имеет место для всех gui приложений). Вы найдете много Q/A на том предмете в AU и StackExchange в целом.
Решение:
В пользователе otto
crontab, измените свой ввод заданий для него для чтения:
@reboot DISPLAY=:0 /home/otto/server/start.sh
Примечание;
я подавил побочное .
перед Вашим полностью определенным вызовом сценария. Полные пути необходимы в сценариях или программах, вызываемых кроном; они всегда запускают с /
.
/boot/efi/
похоже дерево dir, и оказывается, что я отсутствуюshimx64.efi
- я, возможно, должен установить подписанный контейнером пакет . Я думаю, что я, возможно, также должен переименовать файлы для использования загрузчика нейтрализации, как Вы описали для съемного диска. Хотя диск не предназначается, чтобы быть " съемный, " ничто в UEFI NVRAM не будет установлено в первый раз, когда целевое устройство включается. Сообщит, как только я пробую это. – thom_nic 7 October 2017 в 05:12