Script Bash para transferir a pasta recursivamente sem sobrescrever via FTP

1

Eu precisaria de um script bash para transferir pastas recursivamente via FTP. Nome de usuário / senha / IP - estático definido.

  1. Servidor no qual o script é executado: Linux
  2. Servidor de origem: Samba (Linux ...)
  3. Dest. Servidor: Linux

Como os arquivos a serem transferidos são grandes arquivos de banco de dados (.bak, etc), sobrescrever deve ser evitado . De preferência, sem sugestões, porque o script tem que ser 'cronned', para ser executado à noite.

(Eu não sou um herói no bash, mas tenho a impressão de que é o mais fácil para esta situação)

Obrigado um monte de antecedência!

    
por laurens 12.11.2009 / 12:10

2 respostas

4

Se o servidor de destino for o Linux, sugiro apenas usar o rsync com uma chave ssh? O FTP não é criptografado e não tem suporte nativo para backups incrementais.

Um único rsync com uma linha de comando como a abaixo pode ser suficiente.

rsync -auv -e "ssh -i /path/to/keyfile" /path/to/source_directory/* \
    user@remotehost:/path/to/destination_directory/
    
por 12.11.2009 / 15:20
0

Você pode montar FTPfs e cp de tudo lá. Certifique-se de desabilitar a transferência delta para que não baixe arquivos de lá:)

BTW, como você vai fazer esses backups sem sobrescrever? você terá vários arquivos antigos misturados com novos se não usar date no nome da pasta.

    
por 12.11.2009 / 14:11

Tags