我在Windows XP上使用cygrunsrv和autossh創建一個服務,建立到遠程服務器的隧道,但我也想從遠程服務器創建另一個隧道到另一個服務器。Cygrunsrv&autossh:一種在命令行中嵌入遠程命令的方法?
我可以使用此命令行實現它:
autossh -M 5432 serverA -t 'autossh -M 4321 serverB -N'
但是當我想通過cygrunsrv設置它在Cygwin中,使其可以作爲一個服務:
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命令行以使其工作,或者我應該考慮一種不同的方法?
非常感謝安德魯,我刪除了AUTOSSH_NTSERVICE =是在我的命令行,它worked.I相信這是一個必要的選擇,因爲它加載的服務,我明顯錯過了-N標誌注意到在自述,殘疾shell訪問,阻止我的第二個autossh調用被髮送。 – Lionel 2012-01-04 16:56:27
再次感謝您的時間和記錄答案。祝你有美好的一天 ! – Lionel 2012-01-04 17:04:42