Como posso transferir todo o conteúdo de duas unidades entre elas automaticamente?

2

Eu tenho dois discos rígidos externos, quase completos, de tamanho igual.

Eu quero transferir todo o conteúdo de um disco para o outro e vice-versa.

Existe uma maneira de fazer isso automaticamente, sem ter que transferir manualmente e sucessivamente os arquivos entre as duas unidades até que todo o conteúdo tenha sido alterado?

Ou seja, existe um programa, ou comando, que eu possa deixar rodando sozinho até que a unidade 1 contenha todo o conteúdo da unidade 2, e a unidade 2 contenha todo o conteúdo da unidade 1?

Eu tenho acesso ao Windows e ao Linux, mas não a um intermediário para armazenar temporariamente os dados de uma unidade.

    
por John Smith 26.07.2013 / 14:29

2 respostas

0

Como essa é uma pergunta duplicada , esta pequeno script de bytebuster pode ser útil. Ele simplesmente move os arquivos para trás e para frente entre as unidades X: e Y: em Y: \ fromX e X: \ fromY até ficar sem espaço livre na unidade de destino atual, depois alterna source / dest até que não haja diretórios exceto Y: \ fromX e X: \ fromY.

Naturalmente, isso só funcionará se nenhuma das unidades contiver arquivos maiores que a soma de espaços livres nas duas unidades, e pode não funcionar mesmo assim (devido à ordem dos arquivos e ao fato de ser um script realmente simples). Para trabalhar com segurança, é necessário que cada unidade tenha espaço livre maior que o maior arquivo transferido.

É muito simples e, se você preferir o Linux, pode facilmente reescrevê-lo usando o bash / rsync com rsync --remove-source-files --exclude=dir em vez de robocopy /MOVE /XD dir .

    
por 26.07.2013 / 17:51
0

Eu uso Unison para fazer esse tipo de sincronização. Ele é construído sobre o protocolo rsync . Entre outros usos, mantenho os diretórios dos meus documentos em sincronia entre o Windows e o Linux. Os conflitos de alterações precisam ser manipulados manualmente, mas as exclusões são tratadas de maneira inteligente.

A primeira execução demorará um pouco. Depois disso, apenas as alterações precisam ser manipuladas.

EDIT: Eu interpretei mal sua exigência original. Na minha opinião, esse é um requisito estranho, a menos que, por algum motivo, você tenha os arquivos que deseja portáteis em uma unidade maior e os arquivos que não deseja portáteis em outra unidade. Não ter espaço intermediário também é estranho.

Se os arquivos em qualquer disco forem compactáveis, criar um arquivo compactado (zip, tar, etc.) de uma unidade em seu sistema, mover arquivos entre unidades e depois restaurar o arquivo original na outra unidade funcionaria. Como alternativa, comprima o arquivo em ambos os discos com gzip. Mova os arquivos para frente e para trás e descompacte.

Se você quiser mover os arquivos para A, mover os arquivos para B, mover os arquivos para A ... então rsync com as regras de localização pode fazer o que você precisa. Um pequeno script de shell em torno dele para mudar as direções em cada passagem seria necessário. Os diretórios nos dois sistemas precisariam ser diferentes. Você pode ter que reorganizar / renomear diretórios para o movimento.

    
por 26.07.2013 / 14:49