rdiff-backup não está funcionando, mas o rsync é, o Mandriva para ambos OS

2

Eu tenho dois servidores, ambos do Mandriva 2010.2, com a mesma versão exata do rdiff-backup (1.3.3) e exatamente o mesmo rsync. Eu costumava usar o rdiff-backup um pouquinho de volta no debian, mas eu mudei para um sistema operacional diferente desde então. Quando eu tento usar o rdiff-backup agora eu recebo muitos erros. Mas conectar via rsync está funcionando perfeitamente bem.

Como visto abaixo:

[root@localhost var]# rsync --rsh='ssh -p24752' -avz -e [email protected]:/var/test /var/backup sending incremental file list drwxr-xr-x 4096 2012/06/22 13:27:38 backup

sent 39 bytes received 13 bytes 104.00 bytes/sec total size is 0 speedup is 0.00

Mas isso é o que acontece quando tento executá-lo via rdiff-backup

[root@localhost var]# rdiff-backup --remote-schema 'ssh -C %s -p 24752' -v9 --print-statistics [email protected]::/var/test /var/backup
Fri Jun 22 13:45:20 2012  Using rdiff-backup version 1.3.3
Fri Jun 22 13:45:20 2012  Executing ssh -C [email protected] -p 24752
/usr/lib64/python2.6/site-packages/rdiff_backup/SetConnections.py:148: DeprecationWarning: os.popen2 is deprecated.  Use the subprocess module.
  stdin, stdout = os.popen2(remote_cmd)
Fri Jun 22 13:45:20 2012  Client sending (0): ConnectionRequest: Globals.get with 1 arguments
Fri Jun 22 13:45:20 2012  Client sending (0): 'version'
Pseudo-terminal will not be allocated because stdin is not a terminal.
stdin: is not a tty
-bash: line 1: syntax error near unexpected token 'crdiff_backup.connection'
-bash: line 1: 'oh(crdiff_backup.connection'
Fri Jun 22 13:45:20 2012  Fatal Error: Truncated header string (problem probably originated remotely)

Couldn't start up the remote connection by executing

    ssh -C [email protected] -p 24752

Remember that, under the default settings, rdiff-backup must be
installed in the PATH on the remote system.  See the man page for more
information on this.  This message may also be displayed if the remote
version of rdiff-backup is quite different from the local version (1.3.3).

Quando copio e colo a conexão falhou usando a seguinte seqüência de comando, ela funciona perfeitamente bem imediatamente (os pares de chaves foram configurados)

[root@localhost var]# ssh -C [email protected] -p24752

Last login: Fri Jun 22 13:39:37 2012 from 203-217-31-220.perm.iinet.net.au

Ambos os servidores são raiz, ambos os conjuntos de arquivos estão presentes. Eu tentei o comando ssh com '-t -t' para combater esse erro stdin, mas isso causa uma exceção de memória python: /.

Alguma idéia de como proceder?

EDITAR: Também aqui está o que faz quando eu não uso o esquema personalizado (mais ou menos o mesmo, mas a porta 22 recusa a conexão como nós não usá-lo: P

[root@localhost rdiffinstall]# rdiff-backup  -v9 --print-statistics [email protected]::/var/test /var/backup
Fri Jun 22 14:24:06 2012  Using rdiff-backup version 1.2.8
Fri Jun 22 14:24:06 2012  Executing ssh -C [email protected] rdiff-backup --server
/usr/lib64/python2.6/site-packages/rdiff_backup/SetConnections.py:148: DeprecationWarning: os.popen2 is deprecated.  Use the subprocess module.
  stdin, stdout = os.popen2(remote_cmd)
Fri Jun 22 14:24:06 2012  Client sending (0): ConnectionRequest: Globals.get with 1 arguments
Fri Jun 22 14:24:06 2012  Client sending (0): 'version'
ssh: connect to host example.com.au port 22: Connection refused
Fri Jun 22 14:24:06 2012  Fatal Error: Truncated header string (problem probably originated remotely)

Couldn't start up the remote connection by executing

    ssh -C [email protected] rdiff-backup --server

Remember that, under the default settings, rdiff-backup must be
installed in the PATH on the remote system.  See the man page for more
information on this.  This message may also be displayed if the remote
version of rdiff-backup is quite different from the local version (1.2.8).
    
por Mattisdada 22.06.2012 / 07:25

1 resposta

0

O problema é que seu servidor está executando o bash como shell, em vez de rdiff-backup --server (que entenderia seus comandos 'oh(crdiff_backup.connection' ). A solução para mim é:

  • Alterar o esquema remoto para incluir o comando, por exemplo, ssh -C %s -p 24752 rdiff-backup --server
  • Defina o comando ssh forçado no lado remoto como rdiff-backup --server (que também é um pouco mais seguro se você estiver usando no script).
por 12.12.2013 / 13:22