Estou interessado em fatos, ao usar o uníssono ( http://www.cis.upenn.edu/~bcpierce/unison/ ) arruinou seus dados? Eu quero descobrir sobre sua confiabilidade.
Estou interessado em fatos, ao usar o uníssono ( http://www.cis.upenn.edu/~bcpierce/unison/ ) arruinou seus dados? Eu quero descobrir sobre sua confiabilidade.
Respostas:
Parei de usar o Unison porque:
Eu uso o Unison dentro e fora desde algo como 2004. Em resposta a outra pergunta, acenei sobre o rsync como uma ferramenta para fazer backup / sincronizar seus dados entre máquinas.
Durante todo esse tempo, a Unison nunca arruinou meus dados no sentido de destruir o conteúdo do arquivo. No entanto, ele mostrou alguma sensibilidade às condições de borda, como arquivos em uso, permissões ou problemas de plataforma cruzada. Você precisará ter cuidado ao pesquisar isso se encontrar algum erro ao sincronizar seus arquivos com o Unison. Salve seus logs.
Há algumas semanas, decidi parar de usar o Unison e voltei ao rsync. Motivos principais:
Não o uso há tanto tempo quanto ttarchala, mas funciona muito bem para conjuntos de arquivos menores e não perdi nenhum dado.
Embora não esteja em desenvolvimento ativo, está sendo mantido até certo ponto. Houve atualizações / correções de erros confirmadas na árvore de origem nos últimos meses, e você pode obter os binários atuais aqui (por exemplo).
Observe também que você pode melhorar o desempenho definindo a verificação rápida / pretendwin, que detecta as alterações do arquivo por tamanho e data, em vez de somar o arquivo inteiro.
Eu o usei por um bom tempo (para sincronizar entre desktop e laptop). Enquanto os outros escrevem, é bastante cuidadoso durante a sincronização e nunca perdi nenhum arquivo. Em caso de problemas, pode exigir uma ressincronização (demorada), mas tudo se resolve no final.
Em operação regular, é rápido e seguro.
Eu uso o Unison nos meus Macs há pelo menos 8 anos. Eu nunca tive o Unison corrompido ou perdi um arquivo. No início, tive alguns problemas com o Unison ao não entender os garfos de recursos, o que levou a falhas na sincronização.
Comecei a usar o Unison depois de descobrir que o Finder no meu Mac B&W G3 estava corrompendo silenciosamente os arquivos copiados, alterando aleatoriamente um byte ou dois a cada megabyte. (Causado por um problema de hardware com o Firewire nas placas lógicas da versão 1.) Desde esse problema, fiquei realmente paranóico ao comparar cópias de backup, e o Unison faz isso bem por mim.
Estas são as falhas do Unison:
Ao sincronizar dois diretórios Cygwin no Windows, ele corrompe os links simbólicos usados pelo Cygwin e corrompe o conteúdo:
C:\Program Files\Unison>"Unison-2.40.102 Text.exe" c:\cygwin socket://xps:4321/c:\cygwin -path bin
UNISON 2.40.102 started propagating changes at 03:32:12.55 on 28 Feb 2013
[BGN] Updating file bin/X from C:/cygwin to //xps/C:/cygwin
$ ls -l /bin/X //xps/c/cygwin/bin/X
-rwxr-xr-x+ 1 Administrators ???????? 19 Feb 28 03:32 //xps/c/cygwin/bin/X
lrwxrwxrwx 1 Chloe None 8 Jan 28 18:35 /bin/X -> XWin.exe
$ stat /bin/X //xps/c/cygwin/bin/X
File: `/bin/X' -> `XWin.exe'
Size: 8 Blocks: 1 IO Block: 65536 symbolic link
Device: f8e5edb8h/4175818168d Inode: 1125899907027010 Links: 1
Access: (0777/lrwxrwxrwx) Uid: ( 1006/ Chloe) Gid: ( 513/ None)
Access: 2013-01-28 18:35:38.648870400 -0500
Modify: 2013-01-28 18:35:38.648870400 -0500
Change: 2013-01-28 18:35:38.648870400 -0500
Birth: 2013-01-28 18:35:38.648870400 -0500
File: `//xps/c/cygwin/bin/X'
Size: 19 Blocks: 1 IO Block: 65536 regular file
Device: 808a8f0bh/2156564235d Inode: 4222124650737757 Links: 1
Access: (0755/-rwxr-xr-x) Uid: ( 544/Administrators) Gid: (4294967295/????????)
Access: 2013-02-28 03:32:20.619899500 -0500
Modify: 2013-02-28 03:32:20.619899500 -0500
Change: 2013-02-28 03:32:20.629884400 -0500
Birth: 2013-02-26 13:21:32.963302500 -0500
Observe a alteração no tamanho e as permissões? Na máquina de destino, ao tentar executar o comando, ele falha:
Chloe@xps /usr/bin
$ X
bash: ./X: cannot execute binary file
Eu tenho que usar o rsync para copiar os links simbólicos corretamente.
$ rsync -arvz /cygdrive/c/cygwin/bin/ //xps/c/cygwin/bin
sending incremental file list
./
X -> XWin.exe
Outra falha é o Unison NÃO manter os horários modificados por padrão (no entanto, é possível usar a -times
opção para fazer o uníssono sincronizar os tempos de modificação do arquivo)! Se você sincronizar, os horários modificados serão definidos no horário de criação do arquivo no destino:
$ unison 'c:\Sites' '\\xps\c\Sites'
...
new file ----> ruby-env.sh
...
[BGN] Copying ruby-env.sh from c:/Sites to //xps/c/Sites
[END] Copying ruby-env.sh
$ ls -l ruby-env.sh //xps/c/sites/ruby-env.sh
----------+ 1 ???????? ???????? 188 Feb 28 02:48 //xps/c/sites/ruby-env.sh
-rw-r--r--+ 1 Chloe None 188 Feb 27 03:06 ruby-env.sh
Teoricamente, você poderia potencialmente perder dados se