Linux slogan
Visite também: Segurança Linux · BR-Linux.org · Dicas-L · Doode · NoticiasLinux · SoftwareLivre.org · UnderLinux



» Screenshot
» Login
Login:
Senha:

Se você ainda não possui uma conta, clique aqui.

Esqueci minha senha


Dica

Resolvendo o problema dos acentos nos compartilhamentos do Samba
Linux user
Publicado por Aldefax G. Kuhn em 09/10/2005

Login: agk, 282162 pontos
[ Hits: 10885 ]

Resolvendo o problema dos acentos nos compartilhamentos do Samba

É bastante simples resolver esse problema, apesar da grande confusão que muitos fazem quando se deparam com esse problema.

Lembrando que isso é uma dica, então não entrarei em detalhes de como baixar os fontes do kernel e recompilá-lo, como montar os compartilhamentos de rede do Samba, instalar os programas necessários e configurar o Samba, para isso temos vários artigos aqui no VOL que podem ser consultados. Se houver muita dificuldade para a realização dessa configuração, posso escrever um artigo completo ensinando detalhadamente como fazer cada passo.

Bem, vamos ao que interessa. Estou me baseando em testes realizados montando compartilhamentos de sistemas Windows NT4 (Inglês), 9x e W2k (Português Brasil), todos com sucesso total.

Para que o acentos sejam vistos corretamente é preciso recompilar o kernel. Como a maioria das distribuições ou 100% delas, o Debian também não vem configurado com o codepage de acordo com a nossa língua, portanto a acentuação não funciona corretamente, não é exibida corretamente quando montamos compartilhamentos de rede ou até em alguns casos nem é possível montar os compartilhamentos por causa dos acentos contidos neles.

Primeiro configure seu sistema GNU/Linux corretamente.

Reconfigurar os locales para iso8859-1. Para quem usa Debian:

# 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.

Reconfigurando o kernel:

Em File "Systems/Network File Systems", habilite a opção smbfs (smb file system Support).

Na opção que apareceu abaixo, "Default NLS Option", coloque o codepage do seu sistema Windows, geralmente é o cp850.

Agora vá em "File Systems/Native Language Support" e marque a opção "Default NLS Option" como "iso8859-1", marque também as opções "Codepage 850 (Europe)" e "NLS iso8859-1" como built-in.

Recompile e instale o novo kernel.

Configuração do Samba:

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

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

Prontinho, agora é só reiniciar o micro, testar seus compartilhamentos de rede Windows e ver que todos os acentos estão exatamente como deveriam estar.

Este procedimento foi realizado e descrito depois de inúmeras tentativas sem sucesso de configurar corretamente a exibição do acentos nos compartilhamentos do Samba. Utilizei o Debian Sarge como base de referência, kernel 2.6.8, gcc 3.3, samba 3.0x.

Se o sistema win está configurado para pt_BR, então o codepage é cp850 a princípio. O iocharset não precisa mexer. As versões mais novas dos kernel deixam você escolher o cp850 como padrão, mas as compilações distribuídas até mesmo no Brasil e em pt_BR vem compilado como padrão o cp437, acho que está na hora de mudar isso!

Se usa um kernel de uma distribuição, então na montagem use a opção codepage=cp850, mas se tem seu próprio kernel, tente recompilá-lo deixando como codepage padrão no sistema de arquivos smbfs o cp850, funciona legal.


Outras dicas deste autor

Leitura recomendada
   Dica Linux recomendada Libs C realmente alternativos
   Dica Linux recomendada Migrar Servidor Samba de Hardware
   Dica Linux recomendada Backup e restore das regras de ACLs
   Dica Linux recomendada Cadê o lilo!?
   Dica Linux recomendada Configurando opções avançadas do KDE

Comentários
[1] Comentário enviado por mluiz em 18/10/2005 - 16:07h:

opa...
bom eu tive esse tipo de problema ultimamente também, com relação a acentos nos compartilhamentos o que eu fiz foi mudar no servidor quanto a sua localidade, que como é mencionado no artigo acima o default do WinNT4.0 inglês é o 437 e quando é instalado o português brasileiro ele muda para 850 evitando assim futuros constrangimentos :-P.

espero que eu tenha ajudado também...


falow...

[2] Comentário enviado por napalm em 19/03/2007 - 12:56h:

Boas. andava aqui a tentar resolver esse problema...
Depois de ter posto LANG e LC_ALL em pt_PT tudo funcionava bem na consola, mas o share samba não,
nem precisei de recompilar o kernel... apesar de ja ter recompilado ha uns tempos este... mas acho que não alterei nada em relaçao ao samba... há maneira de confirmar?
De qualquer forma, bastou meter isto no smb.conf:
dos charset = cp850
unix charset = iso8859-1
display charset = LOCALE

que ficou tudo logo a funcionar bem. tanto pastas como ficheiros podem ser vistas e abertas sem problemas tanto em win98 como em winXP.

Obrigado


Contribuir com comentário


  
Para executar esta ação você precisa estar logado no site, caso contrário, tudo o que for digitado será perdido.
Responsável pelo site: Fábio Berbert de Paula - Conteúdo distribuído sob licença GNU FDL
Site hospedado por:

Viva o Linux

A maior comunidade Linux da América Latina! Artigos, dicas, tutoriais, fórum, scripts e muito mais. Ideal para quem busca auto-ajuda em Linux.