19 enero 2010

Asignación de dispositivos con udev I

Estos días estoy "luchando" un poco contra el driver multipath de rdac, en lugar de utilizar el driver multipath que viene con las distribuciones de Red Hat.

Se puede decir que el driver rdac no tiene un exceso de documentación, pero aunque la instalación no se sale de lo corriente en Linux, el problema con el que nos estamos encontrando es que los dispositivos cambian de nombre en el reinicio del sistema, por lo cual no nos vale la configuración que tenemos en el "fstab".

En el "readme.txt" que tiene el driver podemos encontrar un punto en el que nos dice:

2.5 Persistent Naming
Linux SCSI device names have the possibility of changing when the host system reboots. We recommend using a utility such as devlabel to create user-defined device names that will map devices based on a unique identifier, called a UUID.

En sistemas modernos la herramienta que se utiliza para la asignación de dispositivos en el sistema es udev. Voy a tratar de dar una explicación concisa de cómo trabajar con udev, a través de varios posts.
¿Qué es udev?
En versiones antiguas de Linux el directorio /dev estaba lleno de dispositivos, es decir, el sistema tenía preparado ya los ficheros correspondientes a los dispositivos, por si se daba el caso de que tuviéramos que conectar otro disco duro, un disco externo, un floppy, etc, etc (es una explicación vaga, pero simplemente se trata de dar una noción). Esto era un poco ineficiente. Entre otras cosas nos encontrabamos con miles de ficheros que no tenían ningún uso.
Según la definición de kernel.org, udev provee de un directorio /dev dinámico y engancha el espacio de usuario con los eventos del kernel. ¿Qué quiere decir esto?, que ahora los dispositivos se añaden en el espacio de usuario, independientemente del reconocimiento que haga el kernel del dispositivo, mientras que antes eso era un trabajo casi exclusivo del kernel.
En el siguiente post nos pondremos manos a la obra con udev.

Asignación de dispositivos con udev: Parte I, Parte 2

No hay comentarios: