Quão confiável é o Unison? Isso já estragou seus dados? [fechadas]

17

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.

Kazimieras Aliulis
fonte

Respostas:

4

Parei de usar o Unison porque:

  • ele não pode manipular caracteres especiais e internacionais em um nome de arquivo corretamente. Eu acho que esses arquivos não foram copiados (mas não tenho certeza disso).
  • Em um Mac, a GUI (opcional) travava com frequência, então tive que reiniciar o processo de sincronização após cada travamento.
Rabarberski
fonte
3
Eu nunca tive problemas com caracteres internacionais em nomes de arquivos com o Unison, no Windows, Linux ou Mac, ou mesmo na sincronização de plataforma cruzada via ssh. Na verdade, comecei a usá-lo inicialmente porque ele podia sincronizar corretamente os hosts Win e Linux, quando o rsync ainda não conseguia.
ttarchala 4/11/2009
3
Há um problema conhecido com nomes de arquivos Cygwin e não ASCII. Este não é um erro com uníssono.
911 JeffP
Eu uso o Unison com muitos arquivos japoneses. Não tenho nenhum problema, embora tenha tido problemas há muitos anos. Estou usando a 2.48.3, que já tem alguns anos e é totalmente compatível com Unicode.
Edwinbradford
23

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:

  • O Unison não é mais desenvolvido ativamente, enquanto o rsync é
  • O Unison é mais lento que o rsync no uso no mundo real, onde tenho centenas de milhares de arquivos totalizando mais de 150 GB no meu diretório pessoal; o backup de um dia de trabalho em uma unidade USB leva cerca de 10 minutos com o Unison, mas apenas 1-2 minutos com o rsync mais recente.
  • Os bancos de dados da Unison precisam ser reconstruídos a cada dois meses devido aos casos extremos mencionados, como desconexão repentina do sistema de arquivos receptor; quando eles estão corrompidos, seus arquivos NÃO serão destruídos, mas podem permanecer não sincronizados e fornecerão erros estranhos. Essa reconstrução do banco de dados, especialmente com volumes remotos, pode levar horas ou até dias.
ttarchala
fonte
14
Observe, aliás, que o Unison é realmente para casos de uso diferentes do rsync. O uníssono é para sincronização bidirecional , enquanto o rsync é para sincronização unidirecional. Isso o torna mais capaz, mas também necessariamente mais complexo que o rsync. Então, a ferramenta certa para o trabalho, etc.
sleske 17/05
Como você "reconstrói" os bancos de dados? Apenas limpe a pasta .unison?
russellpierce
Considere Crashplan.com em vez de rsync para backups.
Chloe
9

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.

JeffP
fonte
8

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.

sleske
fonte
7

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.

Pat McGee
fonte
3

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 -timesopçã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

  1. Possui 2 locais de arquivos sincronizados, Local1, Local2,
  2. Modifique uma cópia sincronizada de um arquivo no 2º local,
  3. Sincronizado com o Unison entre o 1º e o 3º local,
  4. criou um arquivo no terceiro destino com uma data de modificação mais recente devido ao Unison,
  5. usou uma ferramenta de sincronização diferente, como rsync ou SyncToy,
  6. sincronizou o terceiro destino novamente com o segundo local, que foi modificado posteriormente à primeira fonte, mas antes do terceiro tempo de criação do arquivo de destino,
  7. A outra ferramenta de sincronização notará que o tempo do terceiro local é mais recente e substituirá as alterações no segundo local,
  8. Assim, a perda de dados.
Chloe
fonte