martes, diciembre 19, 2006

Puntos de Montaje Con Todos Los Permisos

Con la siguiente guia poremos montar una particion y olvidarnos de los permisos de escritura, por ejemplo si tenemos una fat32 en la que tenemos toda la musica que ademas compartimos con una instalacion de linux.

Suponiendo que la partición /dev/hdb1 es la correcta, creamos un "punto de montaje" y la montamos.
Los puntos de montaje deben pertenecer a root así que usamos "sudo":
Abre una consola y en la shell tipea:

$/ sudo mkdir -vp -m 777 /media/DISCOFAT

Ahora vemos los permisos del directorio (carpeta) DISCOFAT:

$/ ls -l /media

y en una de las lineas nos deberia salir algo asi:

drwxrwxrwx 10 root root 4096 1969-12-31 21:00 DISCOFAT

Y sí, tiene permisos 777 lectura-escritura-ejecución para todos.
Montamos la partición:

$/ sudo mount -t vfat /dev/hdb1 /media/DISCOFAT
Y vemos los permisos del directorio DISCOFAT:

$/ ls -l /media
drwxr-xr-x 10 root root 4096 1969-12-31 21:00 DISCOFAT

Weno, "mount" nos sacó los permisos 777 y los cambió por 755, esto es así porque la fat no maneja permisos a bajo nivel como los sistemas de archivos nativos en GNU/Linux, lo solucionamos con la "máscara de modo de creación de filas del usuario" .
Existen 3 mascaras que por orden gerarquico:
umask: unit mask
dmask: directory mask
fmask: file mask

Nosotros utilizaremos "umask" desmontamos la partición:

$/ sudo umount /media/DISCOFAT

Y la montamos con opciones:

$/ sudo mount -t vfat -o umask=0000 /dev/hdb1 /media/DISCOFAT

Otra vez vemos los permisos del directorio:

$/ ls -l /media
drwxrwxrwx 10 root root 4096 1969-12-31 21:00 DISCOFAT

Si queremos que la particion se monte automaticamente cuando booteamos deberemos modificar el fstab
Abre una consola y en la shell tipea:

$/ echo $UID
Que nos devolvera el numero o ID de nuestro usuario
1000 (puede ser otro)

$/ echo $GROUPS
Que nos devolvera el numero o ID de grupo al que pertenecemos
1000 (puede ser otro)

Anotar ambos ID ya que los utilizaremos para que cuando se monte la particion nuestro usuario ó grupo sea el dueño de la misma

$/ sudo umount /media/DISCOFAT
$/sudo gedit /etc/fstab

y agregamos la siguiente linea:

/dev/hdb1 /media/DISCOFAT vfat auto,users,rw,utf8,gid=1000,uid=1000,umask=0000 0 0

Guardamos los cambios salimos y hacemos:

$/sudo mount -a

Con lo que la particion se debera montar automaticamente.

2 comentarios:

Julio dijo...

Muchas Gracias por el tutorial... Muy util... casi creia que habia dañado mi disco xDDD

SotiJoe dijo...

Muchas gracias.
Me he llevado un buen rato buscando información y todo lo que he encontrado esta hecho a modo de: pon esto esto y esto, sin explicar que es nada.

Un saludo y de nuevo gracias