Migração do servidor de arquivos usando o Robocopy

4

Eu planejo migrar um compartilhamento de arquivos do Windows Server 2003 para o Server 2012 R2 (ele tem mais de 500 GB de dados. FYI - Não possui DFS).

Pensei em usar o comando abaixo para copiar os dados do servidor de origem para o servidor de destino:

robocopy "\Source server\folder\" "\Target server\folder\" /S /E /COPY:DATSOU /R:1 /W:10 /TEE /log:<log path.txt>

Durante o recorte, planejo executar o mesmo comando novamente para copiar qualquer arquivo novo / modificado.

Existe algum problema com o comando acima e eu preciso incluir '/ XO' durante o corte para excluir a cópia dos arquivos existentes novamente?

    
por Bineesh 07.12.2015 / 13:32

2 respostas

0

Eu tive o cenário exato no início deste ano. Para responder à sua pergunta, não deve haver problemas com o seu comando Robocopy. Gostaria de compartilhar o comando Robocopy que usei para migrar meu servidor de arquivos para uma nova VM Server 2012 R2.

Observação: use as mesmas letras de unidade e os mesmos caminhos de arquivo em seu novo servidor Windows Server 2012 R2. Se não fizer isso, as informações de compartilhamento não serão correspondidas e a migração falhará.

Detalhes sobre os interruptores de Robocopy:

 /e – Copy subdirectories, including empty ones
 /xj – Exclude junction points
/r:2 – 2 retries
/w:5 – 5 second wait between retries
  /v – Verbose output for skipped files
 /it – Include tweaked files (identical size/timestamp, but different attributes)
/purge – Delete destination files/directories that no longer exist in source
/copyall – Copy data, attributes, timestamps, security (ACLs), owner, auditing info

Eu executei este comando no Server 2012 R2 Server.

ROBOCOPY /e /xj /r:2 /w:5 /v /it /purge /copyall \Server2003FileServer\c$\Data c:\Data

Em seguida, você pode exportar as informações de compartilhamento de arquivos do servidor 2003 e, em seguida, importar as informações de compartilhamento para o servidor 2012 R2. Usei o artigo da KB aqui link para realizar minha exportação de compartilhamento.

    
por 14.12.2015 / 18:26
10

O comando que você mencionou está bem e quase atinge o objetivo que você definiu. Se você realmente gostaria de realizar a migração 1: 1, sugiro que considere as seguintes opções:

robocopy "\Source server\folder\" "\Target server\folder\" /MIR /COPY:DATSOU /ZB /R:1 /W:10 /TEE /log:<log path.txt>
  • / MIR - isto irá mirrar uma árvore de diretórios - o que quer que exista na fonte, será copiado para o alvo. O que quer que não exista na fonte, será removido (excluído) do alvo. Por esta opção, você terá certeza de que nenhum dado antigo (aqueles já removidos na origem) será migrado para o novo servidor. Esta opção é equivalente a / E mais / PURGE.

  • / ZB - Use o modo reinicializável; se o acesso for negado, use o modo Backup. Modo Reinicializável - Com essa opção, se a cópia for interrompida enquanto algum arquivo específico for parcialmente copiado, a próxima execução do robocopy poderá continuar de onde parou, em vez de copiar novamente o arquivo inteiro. Por exemplo, quando o robocopy funciona em um arquivo grande (2 GB) e é interrompido, após 10 segundos ( / W: 10 ) ele tentará copiá-lo novamente ( / R: 1 ), mas vai começar a cópia da parte onde terminou (não novamente desde o início). Modo de backup - tem a ver com o modo como o robocopy lê arquivos do sistema de origem. Ele permite a cópia de arquivos nos quais você pode obter um erro de acesso negado no próprio arquivo ou ao tentar copiar os atributos / permissões do arquivo. Você precisa estar executando em um contexto de administrador ou ter direitos de backup para usar esse sinalizador.

Você não precisa incluir a opção / XO em seu script final - o robocopy ignora arquivos antigos e não atualizados.

    
por 07.12.2015 / 15:21