Я использую cygrunsrv и autossh в Windows XP, чтобы создать сервис, создающий туннель для удаленного сервера, но я также хочу создать другой туннель от удаленного сервера до другого сервера.
Я могу добиться этого с помощью командной строки:
autossh -M 5432 serverA -t 'autossh -M 4321 serverB -N'
но когда я хочу настроить его в cygwin через cygrunsrv, чтобы он работал как служба:
cygrunsrv -I TUNNEL -p /usr/bin/autossh -a "-M 5432 serverA -t 'autossh -M 4321 serverB -N'" -e AUTOSSH_NTSERVICE=yes -e AUTOSSH_POLL=20 -e AUTOSSH_GATETIME=30
Это не полностью работает. Служба правильно создает туннель для ServerA, но не отправляет команду autossh "autossh -M 4321 serverB -N" на ServerA.
Я пытался избежать цитаты, но все мои усилия не имели никакого значения, и я не вижу ни одной команды, отправленной в журналах autossh.
Я думаю, что проблема связана с псевдотерминалом, который не создается через cygrunsrv.
Я хотел бы знать, есть ли способ исправить мою командную строку cygrunsrv, чтобы она работала, или мне следует рассмотреть другой подход?