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
Linux banner
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts