[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: problema con udev



El sáb, 08-07-2006 a las 12:37 +0100, Jesus Roncero escribió:
> Buenas,
> 
> Tengo un problema con una configuración debian que me está dando muchos 
> dolores de cabeza y ya no se cómo seguir. El caso es que llevo con este tema 
> un par de días y ya estoy alcanzando el punto de ruptura mental.
> 
> Tengo un servidor dell poweredge 850 con dos discos duros Serial ATA de 80Gb
> una tarjeta SCSI LSI pci que funciona en linux y una máquina RAID externa 
> EonStore con 1.2 Tb conectada a la tarjeta SCSI.
> 
> En el dell tengo cargado una debian etch actualizada y con el último kernel, 
> el 2.6.17 de debian unstable (por tener los últimos drivers para la tarjeta 
> SCSI). Todo funciona bien durante la instalación y los dispositivos se 
> detectan de la siguiente manera:
> disco 1 del dell : /dev/sda
> disco 2 del dell : /dev/sdb
> RAID externo     : /dev/sdc
> 
> y todo se crea y se instala bien. 
> 
> El problema llega porque en el arranque, los dispositivos /dev/sd* se asignan 
> aleatoriamente. Al parecer esto es debido a udev (por lo que se), que se 
> ejecuta asincronamente (eso creo) y asigna los nombres de manera que algunas 
> veces el RAID está en /dev/sda y los sata en /dev/sdb y /dev/sdc, con lo que, 
> así, el linux no arranca. Otras veces, los nombres son asignados de la misma 
> manera que la instalación y así sí funciona.
> 
> Bien, básicamente ese es el tema. Pero no he sido capaz de solucionarlo. 
> Después de leer mucho, y de probar varias cosas sigo sin saber cómo alterar 
> el orden en el que quiero que se carguen los módulos (o se asigne los 
> dispositivos).
> 
> He probado a crear custom rules en /etc/udev/rules.d/ para que al dispositivo 
> scsi se le asigne otro nombre, pero de alguna manera, esto me ha estado 
> fallando.
> 
> He encontrado este enlace en archlinux que especifica lo siguiente: 
> http://wiki2.archlinux.org/index.php/UdevHowTo
> **********************************************************************
>  Mixed Up Devices, Sound/Network Cards Changing Order Each Boot 
> Because udev loads all modules at once, devices are sometimes initialized in a 
> different order. For example, with two network cards, you may notice they 
> switch designations between eth0 and eth1. 
> A general solution is to specify the module load order yourself by listing the 
> modules in the MODULES array in rc.conf. Modules in this array are loaded 
> before udev starts auto-loading stuff, so you have full control over the load 
> order. 
> # Always load 8139too before e100
> MODULES=(8139too e100)
> **********************************************************************
> 
> Pero, ¿Alguien sabría decirme cómo se puede especificar eso en debian?
> 
> 
> Por otro lado, tanto dato como mooch me han sugerido que pueda solucinarse con 
> el initrd. Ahora mismo estoy usando un kernel compilado por debian, que trae 
> una imagen initrd. No tengo apenas ni idea de cómo modificar el initrd ni si 
> eso es la causa de lo que me está pasando.
> 
> Cualquier sugerencia será bien recibida, :)
> 


Hola. modificar un initramfs es bastante sencillo (el initrd se dejó de
usar en el 2.6.14 aunque mantenga el nombre de archivo)

Primero tienes que tener bien claro que módulos del kernel necesitan los
discos y la controladora SCSI, si cargas primero el módulo de los discos
dejando que el SCSI se autodetecte ya no tendrás problemas.

Imaginemos que el módulo de los discos es xxxxx.ko, pues bien
editas /etc/initramfs-tools/modules [*] y añades la linea al final del
archivo:

xxxxx

Guarda una copia de /boot/initrd.img-2.6.17-xxxxx por si acaso se
estropea más el tema y reconfigura el kernel:

dpkg-reconfigure linux-image-2.6.17-xxxxx

Lo que conseguirás es que en la primera etapa de arranque estén
preparados los discos SATA pero no el raid SCSI que se montará en la
primera o segunda etapa pero siempre después de los SATA.

Otra opción muchísimo más sencilla es poner etiquetas (LABEL) en las
particiones y montar un fstab y la órden de arranque de grub con esas
etiquetas, en vez de dispositivos, tal como hace Fedora por ejemplo.

Saludos

[*] En versiones viejas de initramfs-tools el directorio
es /etc/mkinitramfs/

-- 
http://soleup.eup.uva.es/mariodebian

Attachment: signature.asc
Description: Esta parte del mensaje =?ISO-8859-1?Q?est=E1?= firmada digitalmente


Reply to: