fstab y los discos USB

Escrito por Elrohir, el 03/02/2010 20:35.1 comentario.

fstab es un fichero de configuración bastante conocido para muchos de los que usamos linux. Allá en tiempos de ubuntu 6.04 me fué necesario configurar manualmente algunos tipos de archivo para que funcionaran ciertas particiones.
Por ejemplo, en su día linux no manejaba bien ntfs así que el driver por defecto sólo podía leer las particiones. Para poder escribir en ellas había que instalar el driver ntfs-3g y cambiar consecuentemente este fichero.

A día de hoy, todo esto está más o menos superado y el proceso de instalación configura automáticamente este fichero. Hablo de instalaciones automáticas AKA instalaciones siguiente->siguiente…. Por supuesto en linux podemos configurar manualmente el sistema desde cero si queremos optimizar hasta la última filigrana.

Lo mismo viene sucediendo con las unidades USB. Uno las conecta y hechan a andar tranquilamente gracias a la magia de udev.

El caso es que si uno usa un sistema más consolidado o se compra un disco duro que cumple con los estándares por los pelos… bueno, pues habrá que configurarlo al modo tradicional. Escribiríamos en fstab una línea como:

/dev/sdxi   /media/MiDisco   defaults    0    0

Donde /dev/sdxi identifica a la partición i (números de 1 en adelante) del disco x (letras de a en adelante). /media/MiDisco es el directorio de montaje y el resto es configuración que con man 8 mount puede ser deducida.
Esto no sería un problema en unidades fijas, pero en unidades USB se vuelve un poco más pesado: Cada vez que conectamos el disco USB su identificador puede cambiar.
Normalmente las letras se asignan en orden en que los discos son conectados o detectados al arrancar, aunque también puede depender del número de puerto USB que ocupen etc…

Los que tenéis algo de idea de esto ya os habréis dado cuenta del problema: esta configuración solo vale para un identificador concreto, si conectamos varios discos en órdenes distintos los datos se cruzarán.

La solución pasa por usar ciertos identificadores virtuales que están disponibles dentro de subdirectorios de la carpeta /dev. Así por ejemplo en /dev/disk/ podemos encontrar

/dev/disk/by-id/
/dev/disk/by-uuid/
/dev/disk/by-label/
/dev/disk/by-path/

Dentro de estos directorios podemos encontrar enlaces simbólicos a los dispositivos disponibles según su número de serie (by-id) el código alfanumérico que les corresponde (by-uuid) su posición hardware (by-path) o la etiqueta de la unidad (by-label).

Una vez sabido esto, es evidente que para que una partición de un disco USB sea montada siempre igual es necesario referenciar ésta bien por su etiqueta (más elegante) o bien por su número de serie (más engorroso, pero con una pequeña ventaja que veremos al final). Así la línea de fstab quedaría como una de las dos siguientes:

/dev/disk/by-label/EtiquetaDeMiDisco   /media/MiDisco   defaults    0    0
/dev/disk/by-lid/NumSerieMiDiscoASDFJKLWERTXCV·EWF6   /media/MiDisco   defaults    0    0


¿Que por qué es ventajoso referenciar a los discos por su serial a pesar de poder hacerlo por etiquetas?
Porque nada impide que alguien nos llegue a casa con un disco etiquetado igual que el nuestro y se nos monte un conflicto de nombres (especialmente si somos poco originales y lo etiquetamos DATOS o USBDISC).

¿Que por qué es elegante referenciar por etiqueta? pues hombre, ya deberías haberte dado cuenta: porque es mucho más sencillo de leer, entender y manipular

PostData: La primera vez que dí con los subdirectorios /dev/disk/by-_____ pensé “vaya puta bazofia” porque no les vi sentido ninguno. Ahora que he visto una utilidad para ellos me doy cuenta de mi error.




Sólo hay 1 comentario, deja alguno para que le haga compañía


  •  
  • gravatar Himliano
    03/02/2010 | 20:48

    La primera vez que dí con los subdirectorios /dev/disk/by-_____ pensé “vaya puta bazofia” porque no les vi sentido ninguno. Ahora que he visto una utilidad para ellos me doy cuenta de mi error.

    Pues ya somos dos xD

    ResponderResponder

Cada vez que comentas, mato a
96 HOYGANs y 40 EMOs

¡Comenta, insensato!

Y tú, ¿que opinas?

Datos de usuario

Texto del comentario



Enviando tu comentario aceptas la responsabilidad sobre tus palabras.
Los campos marcados con un asterisco (*) son obligatorios.
Puedes seguir los comentarios a través del feed RSS 2.0.