PDF de programación - Guia udev en Gentoo

Imágen de pdf Guia udev en Gentoo

Guia udev en Gentoográfica de visualizaciones

Publicado el 22 de Marzo del 2018
291 visualizaciones desde el 22 de Marzo del 2018
226,0 KB
8 paginas
Creado hace 14a (04/08/2009)
Documentación Gentoo Linux -- Guía udev en Gentoo

http://www.gentoo.org/doc/es/udev-guide.xml

Guía udev en Gentoo

Contenido: 1. ¿Qué es udev?

1. ¿Qué es udev?

El directorio /dev

Cuando los usuarios de Linux hablan acerca del hardware de sus
sistemas a gente que puede llegar a pensar que Linux es algún tipo de
virus o marca de café, el uso de términos como "barra dev barra algo"
provocará, sin dudas, miradas raras. Pero para el usuario afortunado
(incluyendo al lector) el usar /dev/hda1 es sólo una forma rápida de
explicar que nos referimos a la primera partición del disco IDE
maestro. ¿O no?

Todos sabemos lo que es un archivo de dispositivo. Algunos incluso
saben por qué cuando miramos un poco más de cerca la salida de ls
-l en /dev los archivos de dispositivo muestran unos números
especiales. Pero lo que siempre damos por sentado es que el primer
disco IDE se llama /dev/hda. Tal vez no lo vea así, pero ésta es un
fallo de diseño.

Piense en los dispositivos que se enchufan en caliente como los USB,
IEEE 1394, tarjetas PCI que se cambian en caliente ... ¿Cuál es el
primer dispositivo? ¿Y por cuánto tiempo? ¿Cómo se llamarán los
demás dispositivos cuando el primero desaparezca? ¿Cómo afectará
ésto a las transacciones en curso? ¿No sería gracioso que un trabajo de
impresión se cambiase de repente desde su flamante impresora láser
nueva a la moribunda impresora de matriz solo porque alguien decidió
desenchufar la impresora láser que era la primera impresora?

Entra en escena udev. Los objetivos del proyecto udev son a la vez
interesantes y necesarios:

Funciona en espacio de usuario
Crea/borra archivos de dispositivo dinámicamente
Proporciona nombres consistentes
Proporciona una API en espacio de usuario

Para proporcionar estas características, udev se desarrolla en tres
proyectos separados: namedev, libsysfs y por supuesto, udev.

Imprimir

Actualizado 5 de

agosto, 2009

Sumario: Este
documento explica
qué es udev y cómo
puede usarlo de
acuerdo a sus
necesidades.

Sven Vermeulen
Autor

Gregorio Guidi
Colaborador

Joshua Saddler
Editor

José Alberto Suárez
López
Traductor

John Christian
Stoddart
Traductor

José Luis Rivero
Traductor

Alberto F. Capel
Traductor

Manuel Peral
González
Traductor

José María Alonso
Traductor

Donate to support our
development efforts.

namedev

1 de 8

19/11/09 21:29

Documentación Gentoo Linux -- Guía udev en Gentoo

http://www.gentoo.org/doc/es/udev-guide.xml

Namedev permite definir nombres de dispositivos independientemente
del programa udev. Esto permite políticas y esquemas flexibles de
asignación de nombres desarrollados por entidades diferentes. Este
subsistema de asignación de nombres proporciona un interfaz estándar
que udev puede usar.

Actualmente se proporciona un solo esquema de asignación de nombres
con udev; de LANANA, usado por la mayoría de sistemas Linux
actuales y por tanto muy apropiado para la mayoría de usuarios de
Linux.

Namedev usa un procedimiento de cinco pasos para averiguar el
nombre de un determinado dispositivo. Si el nombre se encuentra en
uno de los pasos dados, se usa ese nombre. Estos pasos son:

etiqueta o número de serie
número del bus del dispositivo
topología del bus
nombre dado estáticamente
nombre proporcionado por el núcleo

El paso de etiqueta o número de serie comprueba si el dispositivo tiene
un identificador único. Por ejemplo, los dispositivos USB tienen un
número de serie USB único; los dispositivos SCSI tienen un único
UUID. Si namedev encuentra una correspondencia entre este número
único y un archivo de configuración dado, se usa el nombre
proporcionado por el archivo de configuración.

El paso del número del bus del dispositivo comprueba el número del
bus del dispositivo. Para dispositivos no enchufables en caliente este
procedimiento es suficiente para identificar un dispositivo de hardware.
Por ejemplo, los números de bus PCI rara vez cambian durante la vida
de un sistema. De nuevo, si namedev encuentra una correlación entre
esta posición y un archivo de configuración dado, se usa el nombre
proporcionado por el archivo de configuración.

Asimismo, la topología del bus es una forma algo estática de definir
dispositivos mientras el usuario no los cambie. Cuando la posición de
los dispositivos concuerda con la configuración proporcionada por el
usuario, se usa el nombre acompañante.

El cuarto paso nombres dados estáticamente, es simplemente una
sustitución de cadenas. Cuando un nombre del núcleo (el nombre por
defecto) concuerda con una cadena dada, se usa el nombre sustituto.

El paso final (nombre proporcionado por el núcleo) es una solución para
cuando no funcione ninguno de los anteriores: toma el nombre por
defecto proporcionado por el núcleo. En la mayoría de los casos, esto
es suficiente ya que concuerda con los nombres de dispositivo usados
en los sistemas actuales de Linux.

libsysfs

Udev interacciona con el núcleo a través de el pseudo-sistema de
archivos sysfs. El proyecto libsysfs proporciona una API común para

2 de 8

19/11/09 21:29

Documentación Gentoo Linux -- Guía udev en Gentoo

http://www.gentoo.org/doc/es/udev-guide.xml

acceder de forma genérica a la información dada por el sistema de
archivos sysfs. Esto permite consultar todo tipo de hardware sin tener
que hacer suposiciones acerca de su tipo.

udev

Cada vez que el núcleo detecta un evento en la estructura de
dispositivos, llama a udev para echarle un vistazo. udev sigue las
reglas dispuestas en el directorio /etc/udev/rules.d/ y luego usa la
información entregada por el núcleo para realizar las acciones
necesarias sobre la estructura de /dev (creando o eliminando archivos
de dispositivos).

2. Utilizar udev en Gentoo

Requisitos

Udev está pensado para ser utilizado en combinación con un núcleo 2.6
(como gentoo-sources) con el perfil por defecto 2007.0. Si está
usando alguno de estos núcleos, asegúrese de tener instalado una
versión reciente de sys-apps/baselayout. Es todo lo que hace falta.

Listado de Código 2.1: Instalar udev
# emerge udev

Al construir un núcleo, asegúrese de activar las siguientes opciones:

Listado de Código 2.2: Opciones requeridas en el núcleo
General setup --->
[*] Support for hot-pluggable devices
File systems --->
[*] Inotify file change notification support
[*] Inotify support for userspace
Pseudo filesystems --->
[*] /proc file system support
[*] Virtual memory file system support (former shm fs)

Si usa genkernel, no necesita hacer nada especial. Genkernel activa
udev por defecto.

Configuración

Si desea usar los ajustes que ofrece Gentoo para hacer su vida más
fácil, entonces no siga leyendo. Gentoo usará udev, pero mantendrá un
/dev estático, de forma que no le falten nodos de dispositivos. Los
guiones de inicio de Gentoo no ejecutarán al demonio devfsd y
desactivará devfs al arrancar.

Pero si es fanático y quiere tener un sistema sólo con udev, sin
modificaciones, tal y como se pretende en el desarrollo de udev
(incluyendo la dificultad generada por perder los nodos de los
dispositivos que udev no soporta todavía), por supuesto, siga adelante
:)

3 de 8

19/11/09 21:29

Documentación Gentoo Linux -- Guía udev en Gentoo

http://www.gentoo.org/doc/es/udev-guide.xml

Desactivaremos las reglas que guarden los nodos de archivo: modifique
la variable RC_DEVICE_TARBALL en /etc/conf.d/rc y cámbielo a no:

Listado de Código 2.3: /etc/conf.d/rc
RC_DEVICE_TARBALL="no"

Si ha incluido soporte para devfs en el núcleo, puede desactivarlo en el
archivo de configuración del gestor de arranque, agregando el
parámetro al núcleo: gentoo=nodevfs. Si desea usar devfs y
desactivar udev, agregue el parámetro gentoo=noudev.

3. Problemas conocidos

Nodos de dispositivos que faltan al arrancar
Si no logra arrancar por culpa de errores acerca de un /dev/null no
encontrado, o porque falta la consola inicial, el problema es que faltan
unos nodos de algunos dispositivos que deberían existir antes de
montar /dev para luego sea manejado por udev. Esto es común en
máquinas Gentoo que tienen instalaciones hechas con mucha
antigüedad.
Si tiene instalado sys-apps/baselayout-1.8.12 o más reciente, este
problema está paliado, ya que el proceso de arranque debe poder
completarse. Sin embargo, para deshacerse de esas advertencias
molestas, debe crear los nodos faltantes como describimos más
adelante.

Para determinar cuáles nodos están presentes antes de montar el
sistema de archivos /dev, ejecute los siguientes comandos:

Listado de Código 3.1: Listar los nodos de dispositivos disponibles al
arrancar
# mkdir test
# mount --bind / test
# cd test/dev
# ls

Los dispositivos necesarios para un arranque exitoso son /dev/null y
/dev/console. Si no aparecen en el listado previo, debe crearlos
manualmente. Escriba los siguientes comandos dentro del directorio
test/dev/:

Listado de Código 3.2: Crear los archivos de nodos de dispositivos
necesarios
# mknod -m 660 console c 5 1
# mknod -m 660 null c 1 3

Al terminar, no se olvide de desmontar el directorio test/:

Listado de Código 3.3: Desmontar el directorio test/

4 de 8

19/11/09 21:29

Documentación Gentoo Linux -- Guía udev en Gentoo

http://www.gentoo.org/doc/es/udev-guide.xml

# cd ../..
# umount test
# rmdir test

Udev y nvidia

Si usa el driver propietario de nvidia y el servidor X falla al iniciar en
un sistema puramente udev, asegúrese de tener:

el módulo nvidia listado en /etc/modules.autoload.d
/kernel-2.6
una versión de baselayout igual o mayor que
sys-apps/baselayout-1.8.12

Nombramiento inconsistente entre DevFS y udev

Aunque nuestra intención es tener un esquema de nombramiento
consistente para ambas soluciones dinámicas de manejo de
dispositivos, a veces ocurren diferencias en el nombramiento.

Un conflicto reportado ocurre con el controlador HP Smart Array 5i
(para ser más preciso, con el módulo del núcleo cciss). Con udev los
dispositivos son nombrados /dev/cciss/cXdYpZ con la X, Y y Z como
números enteros. Con devfs, los dispositivos son nombrados
/dev/h
  • Links de descarga
http://lwp-l.com/pdf9797

Comentarios de: Guia udev en Gentoo (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad