Я пытаюсь запустить сценарий при перезагрузке, который позволяет перенаправлять порт на удаленный сервер. Я сделал сценарий, что он работает, если я запускаю его в терминале. Но я не могу запустить его при перезагрузке crontab:
@reboot sleep 120000 && sh /home/user/doit.sh
где я могу увидеть журнал ошибок для crontab? У меня есть еще один скрипт в crontab, это команда перезагрузки, и он работает. Этого нет. Этот сценарий вызывает SSH для создания туннеля. Спасибо.
Поскольку у вас есть systemd-система, вы можете рассмотреть возможность добавления .service
файл, например /etc/systemd/system/ssh-tunnel.service
со следующим содержанием:
[Unit]
Description=SSH tunnel
After=network.target
[Service]
Type=forking
ExecStart=/home/user/doit.sh
[Install]
WantedBy=multi-user.target
Вы можете изменить тип юнита на Type=simple
если ваш скрипт не разветвляется. После вам просто нужно перезагрузить systemd, включите устройство и попробуйте запустить его:
systemctl daemon-reload
systemctl enable ssh-tunnel.service
systemctl start ssh-tunnel.service
Если все работает нормально, туннель будет установлен, как только сеть будет готова.