Acentuação FAT32 no Linux

Você já deve ter percebido que não é apresentado corretamente na maioria dos casos os caracteres especiais dos nomes de arquivos usando o Fat32 (vFat) no Linux, isto ocorre porque as páginas de códigos, charsets ou ambos
devem ser configuradas manualmente sendo que o foco principal, claro, é o inglês. Reparei que é escassa alguma documentação sobre o assunto, o que me levou a dar uma lida nos documentos do vFat do kernel, afim de achar opções de montagem, e vou passar a
receita do bolo para vocês 🙂

Basicamente para montagem do Fat32 deve se adicionar as opções “iocharset” e/ou “codepage” ao que parece isto depende por onde a formatação foi feita, se através de um sistema operacional em português da familia Microsoft a
opção a ser adicionada deve ser “codepage=850”, se inglês “iocharset=iso8859-1”. É uma deficiência do vFat do Linux não extrair esta informação automaticamente da partição, porém, isto não desmerece este módulo já bem desenvolvido.

Exemplos

Importante: Desmonte primeiro a partição usando o comando “umount /dev/hda1” (sendo /dev/hda1 sua partição)

Se sua partição foi formata através de um SO em inglês

$ mount -t vfat /dev/hda1 /mnt/win -o codepage=850
Se sua partição foi formata através de um SO em português

$ mount -t vfat /dev/hda1 /mnt/win -o iocharset=iso8859-1

Naturalmente o /dev/hda1 é uma partição Fat32 (que deve estar desmontada) e o /mnt/win é o diretório destino. Basicamente é isto, se você esquecer por onde foi formatado, ou os caracteres ainda aparecerem errados você deve ir testando mesmo, primeiramente
usando os exemplos acima, depois apelando para os abaixo :-), alternando as opções ou ainda as combinando. Lembre que para verificar se esta tudo correto recomendo usar uma aplicação gráfica como o Konqueror, Nautilus ou qualquer outro Filemanager.

Mais exemplos:

Usando charset iso8859-1 com codepage 850

$ mount -t vfat /dev/hda1 /mnt/win -o iocharset=iso8859-1,codepage=850

Usando charset UTF8

$ mount -t vfat /dev/hda1 /mnt/win -o iocharset=utf8

Usando charset UTF8 com codepage 850

$ mount -t vfat /dev/hda1 /mnt/win -o iocharset=utf8,codepage=850

Se o seu SO for inglês ou português só esta codepage/charset devem ser usandos se for outra língua procure saber qual é seu charset e o codepage e os use como os do exemplo. Não se esqueça que tem que estar compilado no kernel como nativo ou módulo o
charset e o codepage que forem ser usados.

Automatizando o Processo:

Para automatizar o processo de montagem das partições Fat32 deve ser adicionada no /etc/fstab (se existir altere apenas).

# Partição Destino Tipo Opçoes

/dev/hda3 /mnt/dados vfat iocharset=iso8859-1 1 0

Divirta-se com seus caracteres especiais :-).

Sobre o Autor

Redes Sociais:

Deixe seu comentário

X