autossh não será executado em segundo plano

1

Eu tento definir o autossh para ser executado na inicialização, adicionando-o ao /etc/rc.local, mas não consigo nem que seja executado em segundo plano.

Esta é a parte crucial do meu arquivo de configuração:

Host remotehost.com
  LocalForward 127.0.0.1:8082 127.0.0.1:8082
  LocalForward 127.0.0.1:8000 127.0.0.1:80
  LocalForward 127.0.0.1:10001 127.0.0.1:10001
  LocalForward 127.0.0.1:12001 127.0.0.1:12001
  Port 9922

Este comando funciona:

autossh -F /home/[username]/.ssh/config -i /home/[username]/.ssh/id_rsa remotehost.com

Mas, se eu adicionar a opção -f

autossh -f -F /home/[username]/.ssh/config -i /home/[username]/.ssh/id_rsa remotehost.com

não vai.

Como você pode ver, estou usando apenas patches absolutos, por isso não deve ser esse problema .

Isso é o que meu log diz:

2014/04/22 12:09:07 autossh[4367]: checking for grace period, tries = 0
2014/04/22 12:09:07 autossh[4367]: starting ssh (count 1)
2014/04/22 12:09:07 autossh[4367]: ssh child pid is 4368
2014/04/22 12:09:07 autossh[4367]: check on child 4368
2014/04/22 12:09:07 autossh[4367]: set alarm for 600 secs
2014/04/22 12:09:07 autossh[4368]: execing /usr/bin/ssh
2014/04/22 12:09:07 autossh[4367]: check on child 4368
2014/04/22 12:09:07 autossh[4367]: ssh exited with status 0; autossh exiting
2014/04/22 12:09:07 autossh[4367]: expired child, returning 2
    
por Niclas Nilsson 22.04.2014 / 12:25

1 resposta

1

Oh. Me bobo. Isto é coberto no manual, mesmo que eu tenha perdido. Eu deveria ter adicionado o -N -switch. Isso é o que eu coloco em rc.local e o que funciona:

su [username] -c 'autossh -f -N -F /home/[username]/.ssh/config_tunnels -i /home/[username]/.ssh/id_rsa remotehost.com

[username] é obviamente trocado pelo meu nome de usuário.

    
por 22.04.2014 / 12:53