Fat32 en Linux

Cómo montar particiones fat32 (vfat) de forma correcta, porque hay algunos problemas bastante comunes que la gente suele tener por no hacerlo correctamente.

Uno de estos problemas es que todos los archivos de la partición Windows FAT32 (vfat) se marquen como ejecutables, lo cual da lugar, por ejemplo, a que ls --colors no muestre los colores de los archivos como debería, o que mc o nautilus intenten ejecutar un archivo en lugar de abrirlo. Otro de esos problemas es que algunas aplicaciones intenten cambiar parámetros que no soporta el sistema de ficheros y muestren errores. Por último, se pueden haber aplicado permisos demasiado permisivos y constituir un riesgo de seguridad.

Montar particiones fat32

Tendremos que editar el archivo /etc/fstab

sudo gedit /etc/fstab


En este archivo cada una de las líneas que vemos se refiere a una partición montada. Las líneas que comienzan con # son comentarios.

Para cada línea el primer valor es la partición a montar, el segundo el directorio donde montarlo (debemos crearlo previamente), el tercero el tipo del sistema de ficheros (vfat para FAT32). A continuación tenemos una lista de opciones separadas por comas, y por último un par de valores que indican si queremos que dump, una utilidad de backup, haga copia de seguridad de esa partición (0 para no, 1 para si) y el orden en el que fsck comprobará las particiones (0 si no queremos que lo compruebe).

Para saber cuál es la partición que queremos montar escribiremos

sudo fdisk -l

de forma que se listen todas las particiones del disco, con su tamaño en bloques y su tipo.

Opciones

Los permisos para una partición se indican en la opción umask de /etc/fstab. Se trata de una máscara que indica qué permisos NO queremos. Por ejemplo un umask 022 indicaría permisos 755 (777 – 022).

Para los que no estén familiarizados con los permisos en Unix el primero de los números indica los permisos para el dueño (7), el segundo para el grupo (5) y el tercero para los demás usuarios (5). Cada uno de estos números es el valor decimal de un número binario de tres dígitos en el que el primero de los dígitos indica si tiene permisos de lectura (4), el segundo de escritura (2) y el tercero de ejecución (1). Luego un 7 (4 + 2 + 1) indicaría que tiene todos los permisos y un 5 (4 + 1) permisos de lectura y ejecución, pero no de escritura.

El problema de umask es que probablemente no queramos tener los mismos permisos para archivos y directorios, entre otras cosas porque los directorios deben poder ejecutarse para poder acceder a ellos, pero no queremos que todos los archivos estén marcados como ejecutables como comentábamos al principio. Antiguamente lo que se hacía era dar permisos de ejecución tanto a directorios como a archivos, pero utilizar la opción showexec, que sólo muestra como ejecutables archivos ejecutables de Windows (exe, bat o com).

Desde hace tiempo existe una mejor opción, que son fmask y dmask, que sustituyen a umask y permiten definir los permisos para archivos (fmask, file mask)) y directorios (dmask, directory mask) de forma separada.

Otras opciones interesantes con

  • auto: indica que la partición se montará de forma automática al iniciar.
  • quiet: para que no muestre errores cuando intentemos cambiar parámetros de un archivo que no soporte fat, como utime.
  • uid: id del usuario propietario (nuestro uid se puede ver en /etc/passwd)
  • gid: id del grupo propietario (nuestro gid se puede ver en /etc/passwd)

Esta es la línea que define mi partición FAT32:

/dev/sda3 /media/docs vfat auto,quiet,uid=1000,gid=1000,fmask=177,dmask=077,utf8=true 0 0

Comentarios
  1. [DoodoM]

    Vaya, lo del umask no lo sabía. O_o

    Gracias por la información. Siempre se aprende algo nuevo.

    Responder

  2. jesus

    Bien,colega,pero no aclaras como se monta una particion para que un neofito(yo) pueda montarla,de todas formas,gracias por lo que esplicas.

    Responder

  3. Si le tienes puesto auto la monta automáticamente, jesús.

    Responder

  4. mkcfernandez

    hola maigos yo tengo una duda que me tiene muy preocupado cuando ejecuto /etc/fstab desde el root el sistema me devuelme un mensaje diciendo que no tengo permiso yo uso CentOS-4.2 (final) quiero que me ayuden a resolver esto

    Responder

  5. k.tacho

    al montar las particiones fat32, veo que no muestra bien los nombres de carpetas o ficheros que llevan acentos. ¿Como se resuelve?

    Responder

  6. @k.tacho es debido a la codificación de caracteres. Añade una opción utf8 al fstab y deberían verse bien.

    Responder

  7. Buen post!!

    Sólo comentar que si quieres que varios usuarios puedan acceder a la partición tienes dos opciones:

    1.- No poner uid y gid sino sólo gid=xxx, donde xxx sea un grupo al que pertenezcan todos los usuarios que quieres que accedan (generalmente existe un grupo user con gid=100 al que puedes/deberías agregar todos los usuarios)

    2.- Poner fmask=111 y dmask=0. De este modo todos los usuarios tendrían permiso de lectura y escritura en la partición.

    Responder

  8. […] compartidas en red de Windows desde Ubuntu Linux Samba vs. Windows (Called name not present) Fat32 en Linux Posted by rubensa Filed in […]

    Responder

  9. Azul

    esta muy bien explicado tu pagina me sirvio de mucho. Grax!!!

    Responder

  10. […] El tener que introducir nuestra contraseña cada vez que queramos montar un disco o partición puede resultar muy pesado. Por eso, si sueles utilizarlo a menudo, es posible que quieras plantearte montarlo al inicio, añadiendo una nueva entrada al archivo /etc/fstab (ya explicamos cómo montar una partición FAT32 correctamente en FAT32 en Linux). […]

    Responder

  11. […]   El tener que introducir nuestra contraseña cada vez que queramos montar un disco o partición puede resultar muy pesado. Por eso, si sueles utilizarlo a menudo, es posible que quieras plantearte montarlo al inicio, añadiendo una nueva entrada al archivo /etc/fstab (ya explicamos cómo montar una partición FAT32 correctamente en FAT32 en Linux). […]

    Responder

  12. oscar garcia

    gracias por la informacion llevaba varios meses con el problema de montar un disco y que pudiera modificar con este post, ya pude y agradezco por la ayuda

    Responder

Deja un comentario