Meu "rsync" não sincroniza arquivos acentuados... O que fazer?

1. Meu "rsync" não sincroniza arquivos acentuados... O que fazer?

Fernando
fernandoborges

(usa Ubuntu)

Enviado em 08/10/2007 - 16:19h

Pessoal, boa tarde! Estou fazendo o backup dos arquivos do meu servidor num HD externo diariamente usando o rsync com um script bem simples mesmo, apenas definindo os valores padrão do comando. O problema que estou tendo é o seguinte: Deixei ele rodando esse fim de semana e hoje quando cheguei, fiz uma comparação entre as pastas origem e destino. Conclusão: As pastas/arquivos que tinham acentos não foram copiadas! Meu backup não está completo! Por favor, alguém teria como me ajudar a resolver isso? Pesquisei bastante e até agora não achei nada. Muito obrigado!


  


2. Re: Meu "rsync" não sincroniza arquivos acentuados... O que fazer?

Rodrigo Chaves
stilldre

(usa Funtoo)

Enviado em 08/10/2007 - 17:10h

verifique o locale do seu sistema


3. Detalhando...

Fernando
fernandoborges

(usa Ubuntu)

Enviado em 09/10/2007 - 08:39h

Vou tentar detalhar mais o problema, talvez ajude a encontrar a solução.
1 - Os arquivos (mais de 30Gb) estavam em uma máquina WinNT. Minha meta era migrar para um servidor de arquivos Linux. Numa máquina nova Debian, compartilhei uma pasta na rede e usei o Cobian Backup para copiar tudo para a nova máquina Linux. Até aí tudo bem, a cópia foi feita e passei a usar o novo servidor linux. Mas observei que alguns arquivos têm, no lugar dos acentos, uns quadrados ou caracteres especiais quando visualizo no linux. Mas eles estão lá.

2 - Agora minha meta é agendar backups diários com o rsync para gravação num HD externo. A parte do script e cron está tudo Ok. O problema é que o rsync não está copiando tudo. pastas/arquivos que contém aqueles caracteres especiais no lugar dos acentos não estão sendo sincronizados - então meu backup não está "falando", não está espelhado com o servidor.

Alguma ajuda, por favor? Agradeço!



4. Re: Meu "rsync" não sincroniza arquivos acentuados... O que fazer?

Rodrigo Chaves
stilldre

(usa Funtoo)

Enviado em 09/10/2007 - 13:28h

verifique o locale (charset) do seu sistema... talvez isso "refresque sua memória":
http://nixdoc.net/man-pages/Linux/charset.1.html
e
http://www.vivaolinux.com.br/dicas/verDica.php?codigo=7329



5. Resolvido! Agradeço ao amigo.

Fernando
fernandoborges

(usa Ubuntu)

Enviado em 09/10/2007 - 13:29h

Depois de ralar, consegui resolver. Segue:

Reconfigurar os locales para iso8859-1.

# dpkg-reconfigure locales

Na tela onde diz "Selecione os locales a serem gerados", selecione pt_BR ISO-8859-1 e depois na tela seguinte onde diz "Qual locale deverá ser o padrão do ambiente do seu sistema?", selecione PT-BR.


Inclua as seguintes linhas na Seção Global do Samba:


dos charset = cp850
unix charset = iso8859-1
display charset = LOCALE


A identificação da língua e do local é feita por dois códigos de duas letras, separados por um sinal ``_''. ``pt_BR'' significa Português do Brasil.

Colocar em /etc/profile:

LC_ALL="pt_BR"
export LC_ALL


6. Muito bom

Valter Rezende Júnior
valterrezendeeng

(usa Ubuntu)

Enviado em 11/10/2007 - 16:31h

Valeu o q vc postou ajudou-me




7. É isso aí!

Fernando
fernandoborges

(usa Ubuntu)

Enviado em 15/10/2007 - 20:22h

Pois é, aqui é um ajudando ao outro e... Bola pra frente!


8. Meu "rsync" não sincroniza arquivos acentuados... O que fazer?

Sérgio Luiz Araújo Silva
voyeg3r

(usa Kurumin)

Enviado em 10/10/2008 - 07:37h

Se estiver usando uma versão mais recente do rsync (acima de 3.0.0) há uma opção chamada --iconv que faz a conversão de caracteres da origem para o destino

rsync --iconv=utf8,iso88591 /origem /destino

Às vezes uso um liveCD sobre um windows bugado para salvar dados dos usuários da rede, em geral estou mandando para o ubuntu que usa utf8 e portando a codificação aparecerá errada

Outra possibilidade é montar à partir do liveCD assim:

mount -t ntfs /dev/hda1 /mnt/hda1 -o nls=utf8

em alguns sistemas a opção que indica a codificação do sistema a ser montado será --> iocharset ao invés de 'nls'

Neste caso basta fazer um rsync sem opção --iconv já que os dados de origem já sairão na codificação correta.






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts