Мне нужно получить узел Ubuntu для запуска туннеля autossh к SSH-серверу при загрузке узла.
Я создал службу со следующим:
'' ''
[Единица измерения]
Описание = Autossh туннель при загрузке
После = network-online.target
[Служба] Тип = простой
Пользователь = root
ExecStart = / var / tmp / autossh.sh
Перезапуск = при сбое
[Установить]
WantedBy = multi-user.target
'' ''
Сценарий autossh.sh, найденный в / var / tmp , содержит следующее:
autossh zabbix-cli@123.123.123.123 -p 22
Ошибка, которую я получаю при запуске «sudo systemctl status autossh.service»: /etc/systemd/system/autossh.service:8: путь к исполняемому файлу не абсолютен: autossh zabbix-cli@123.123.123.123 -p 22
Я также пытался добавить команду «autossh zabbix-cli@123.123.123.123 -p 22» непосредственно после ExecStart командование в службе.
Насколько я могу судить по другим постам, ExecStart нужен абсолютный путь к скрипту, который он должен запускать, и это то, что я включил.
Я также попытался добавить оба #! / Bin / bash в начало команды ExecStart, а также в начало сценария autossh.sh , но я получаю ту же ошибку независимо от того, что я делаю.
Я также пытался разместить скрипт autossh.sh в другом месте (/ home / username /)
Я получил его работающий благодаря Soren A! Ошибка состояла в том, что мне был нужен полный путь, который установлен, когда Вы устанавливаете autossh (/usr/bin/autossh), затем я должен был поместить параметры впоследствии. Я нашел пример здесь, что я скопировал: https://www.everythingcli.org/ssh-tunnelling-for-fun-and-profit-autossh /