Use o WinSCP ou similar para copiar arquivos do Linux para o Windows

2

Eu posso usar o WinSCP GUI muito bem para copiar uma pasta de um servidor Linux localmente para um servidor Windows para backup, usando a opção "arquivos / pastas atualizados somente" (uma espécie de rsync).

Eu gostaria de usar o utilitário de linha de comando do WinSCP ou algo semelhante que eu possa agendar através do agendador de tarefas do Windows para pegar a pasta (mais subpastas / arquivos) do servidor Linux todas as noites e armazená-la no servidor Windows.

Eu olhei para os documentos do WinSCP, mas estou com medo de tentar qualquer um dos comandos sem realmente saber quais deles executar, etc., porque a última coisa que quero é acidentalmente gravar os arquivos na direção errada.

Qualquer pessoa capaz de me informar os comandos do WinSCP (ou um utilitário semelhante) que eu possa agendar para fazer o seguinte:

Copy folder/subfolder/files (only new or updated) from "/shared/svnrepos" on the linux server to "\WINSERVER\BACKUP"

    
por TheCleaner 17.05.2012 / 21:31

2 respostas

4

Acho que a documentação explica isso claramente: link

Você deseja usar o comando synchronize em vez de um comando get.

When the first parameter is local, changes from remote directory are applied to local directory. When the first parameter is remote, changes from the local directory are applied to the remote directory.

Como você pode ver, há muito pouco risco de danificar os arquivos dos servidores se você usar o syncronize local, já que ele pegará o diretório remoto e aplicará no seu diretório local.

Eu criaria um arquivo de script e adicionaria uma tarefa agendada para chamar WinScp com:

WinScp.exe /script="d:\SvnBackupScript.txt"

Em seguida, coloque algo como o seguinte no seu arquivo de script:

synchronize local d:\svnBackup /shared/svnrepos

Certifique-se de ter sua configuração e configuração de conexão de acordo com a documentação.

Você sempre pode executá-lo no modo cosole e testar seus comandos:

WinScp.exe /console

Em seguida, basta digitar os comandos que você deseja no seu script

    
por 17.05.2012 / 22:27
0

Talvez o rclone ( link ) valha a pena tentar. Escrito em Go, tem vários binários (Windows incluído) e permite sincronizar diretórios do Linux para o Windows usando vários protocolos - incluindo o SSH.

Você precisa primeiro configurá-lo (isto é, definir um alias, protocolo e credenciais de host remoto) e, em seguida, executar a partir da linha de comando:

rclone sync remoteserveralias:/the/dir/path localpath

AVISO: Como sync exclui arquivos no destino (ele tenta ter duas cópias idênticas - remoto vs local), uma abordagem mais segura é usar o comando copy que copia diferencialmente os arquivos da origem para o destino sem nenhuma exclusão .

Veja o link

    
por 15.03.2018 / 17:56