[eside-ghost] udev en kernel 2.6.0 :D (how-to)
Oinatz Aspiazu
oaspiazu en terra.es
Mie Dic 24 00:32:06 CET 2003
Parece que ya me casi todo me va sin devfs, q ilu jeje XDD . udev
todavía está un poco verde ya que hay dispositivos que seguramente
tendréis que crear a mano, aunque es más que estable y funciona muy muy
bien ;)
La verdad es k el problema que tenía antes es k me daba un poco de yuyu
tocar demasiados scripts y luego no acordarme de las cosas, pero en fin
que ni siquiera me ha hecho falta tocar nada, sólo tema de
dispositivos... También, que aunque no creo que tenga que ver, parece q
los módulos me cargan bien sin crear los enlaces. :)
Voy comentando para el que le interese(esto es para Gentoo 1.4, aunque
supongo q será parecido en todas):
Paquetes q me han hecho falta emerger:
sysfsutils-0.3.0 //en gentoo la 0.4.0 hacía que ninguna versión de udev
luego compilara
hotplug-20030805-r2 //como mínimo esta versión sino la tenéis ya. Luego
'rc-update add hotplug boot'
udev-009
baselayout-1.8.6.12-r2 //es importante que sea por lo menos esa versión,
os servirá para actualizar algunos scripts con el tema de udev
kbd //No lo he metido todavía pero comentan que la última versión
soluciona un pequeño warning ;)
Algunas opciones de mi kernel (editando /usr/src/linux/.config):
# Bus options (PCI, PCMCIA, EISA, MCA, ISA)
#
CONFIG_HOTPLUG=y
#
# File systems
#
# Pseudo filesystems
#
CONFIG_PROC_FS=y
CONFIG_PROC_KCORE=y
# CONFIG_DEVFS_FS is not set
CONFIG_DEVPTS_FS=y
# CONFIG_DEVPTS_FS_XATTR is not set
CONFIG_TMPFS=y
# CONFIG_HUGETLBFS is not set
# CONFIG_HUGETLB_PAGE is not set
CONFIG_RAMFS=y
Línea para /etc/fstab:
none /sys sysfs defaults 0 0
Ahora al reiniciar, en vez de la típica línea 'Starting devfsd' debería
salir esto ;) :
'mounting sysfs at /sys'
'mounting ramfs at /dev'
'configuring system to use udev'
'populating /dev with device nodes'
'using /sbin/hotplug for udev management'
Por último con udev quizás tengáis que crear algunos dispositivos. Yo
he hecho esto que ha colgao uno por los foros(alsa + nvidia) y ppp de
momento (parece que sólo me falta la tarjeta de la tele, creo)
(donde pone 'tu_usuario' os añadís ;) . Para cualquier dispositivo q
tengáis que crear, la documentación del kernel suele ser bastante buena
:)
#!/bin/bash
## Script to create some devices in /dev for udev that are
## not included yet.
echo "Creating Devices for Alsa for one audio card in /dev/snd"
mkdir /dev/snd
mknod -m 600 /dev/snd/controlC0 c 116 0
mknod -m 600 /dev/snd/hwC0D0 c 116 4
mknod -m 600 /dev/snd/hwC0D1 c 116 5
mknod -m 600 /dev/snd/hwC0D2 c 116 6
mknod -m 600 /dev/snd/hwC0D3 c 116 7
mknod -m 600 /dev/snd/midiC0D0 c 116 8
mknod -m 600 /dev/snd/midiC0D1 c 116 9
mknod -m 600 /dev/snd/midiC0D2 c 116 10
mknod -m 600 /dev/snd/midiC0D3 c 116 11
mknod -m 600 /dev/snd/midiC0D4 c 116 12
mknod -m 600 /dev/snd/midiC0D5 c 116 13
mknod -m 600 /dev/snd/midiC0D6 c 116 14
mknod -m 600 /dev/snd/midiC0D7 c 116 15
mknod -m 600 /dev/snd/pcmC0D0c c 116 24
mknod -m 600 /dev/snd/pcmC0D0p c 116 16
mknod -m 600 /dev/snd/pcmC0D1c c 116 25
mknod -m 600 /dev/snd/pcmC0D1p c 116 17
mknod -m 600 /dev/snd/pcmC0D2c c 116 26
mknod -m 600 /dev/snd/pcmC0D2p c 116 18
mknod -m 600 /dev/snd/pcmC0D3c c 116 27
mknod -m 600 /dev/snd/pcmC0D3p c 116 19
mknod -m 600 /dev/snd/pcmC0D4c c 116 28
mknod -m 600 /dev/snd/pcmC0D4p c 116 20
mknod -m 600 /dev/snd/pcmC0D5c c 116 29
mknod -m 600 /dev/snd/pcmC0D5p c 116 21
mknod -m 600 /dev/snd/pcmC0D6c c 116 30
mknod -m 600 /dev/snd/pcmC0D6p c 116 22
mknod -m 600 /dev/snd/pcmC0D7c c 116 31
mknod -m 600 /dev/snd/pcmC0D7p c 116 23
mknod -m 600 /dev/snd/seq c 116 1
mknod -m 600 /dev/snd/timer c 116 33
chgrp audio /dev/snd/*
echo "Done creating Alsa devices for one audio card in /dev/snd"
echo "Creating Devices for Alsa for one audio card in /dev"
mknod -m 600 /dev/admmidi0 c 14 14
mknod -m 600 /dev/admmidi1 c 14 30
mknod -m 600 /dev/admmidi2 c 14 46
mknod -m 600 /dev/admmidi3 c 14 62
chgrp audio /dev/admmidi*
mknod -m 600 /dev/adsp0 c 14 12
mknod -m 600 /dev/adsp1 c 14 28
mknod -m 600 /dev/adsp2 c 14 44
mknod -m 600 /dev/adsp3 c 14 60
chgrp audio /dev/adsp*
mknod -m 600 /dev/amidi0 c 14 13
mknod -m 600 /dev/amidi1 c 14 29
mknod -m 600 /dev/amidi2 c 14 45
mknod -m 600 /dev/amidi3 c 14 61
chgrp audio /dev/amidi*
mknod -m 660 /dev/amixer0 c 14 11
mknod -m 660 /dev/amixer1 c 14 27
mknod -m 660 /dev/amixer2 c 14 43
mknod -m 660 /dev/amixer3 c 14 59
chgrp audio /dev/amixer*
mknod -m 600 /dev/dmfm0 c 14 10
mknod -m 600 /dev/dmfm1 c 14 26
mknod -m 600 /dev/dmfm2 c 14 42
mknod -m 600 /dev/dmfm3 c 14 58
chgrp audio /dev/dmfm*
mknod -m 600 /dev/dmmidi0 c 14 9
mknod -m 600 /dev/dmmidi1 c 14 25
mknod -m 600 /dev/dmmidi2 c 14 41
mknod -m 600 /dev/dmmidi3 c 14 57
chgrp audio /dev/dmmidi*
mknod -m 600 /dev/mixer0 c 14 0
mknod -m 600 /dev/mixer1 c 14 16
mknod -m 600 /dev/mixer2 c 14 32
mknod -m 600 /dev/mixer3 c 14 48
chgrp audio /dev/mixer*
mknod -m 600 /dev/aloadC0 c 116 0
chgrp audio /dev/aloadC*
mknod -m 600 /dev/aloadSEQ c 116 1
chgrp audio /dev/aloadSEQ
mknod -m 600 /dev/music c 14 8
chgrp audio /dev/music
echo "Done creating Alsa devices for one audio card in /dev/snd"
echo "Creating symlinks for Alsa."
ln -s /dev/adsp0 /dev/adsp
ln -s /dev/amidi0 /dev/amidi
ln -s /dev/midi0 /dev/midi
ln -s /dev/music /dev/sequencer2
echo "Done creating symlinks for Alsa."
echo "Creating nvidia devices in /dev"
mknod -m 600 /dev/nvidia0 c 195 0
mknod -m 600 /dev/nvidia1 c 195 1
mknod -m 600 /dev/nvidia2 c 195 2
mknod -m 600 /dev/nvidia3 c 195 3
mknod -m 600 /dev/nvidia4 c 195 4
mknod -m 600 /dev/nvidia5 c 195 5
mknod -m 600 /dev/nvidia6 c 195 6
mknod -m 600 /dev/nvidia7 c 195 7
mknod -m 600 /dev/nvidiactl c 195 255
chown tu_usuario /dev/nvidia* #añade tu usuario
echo "Done creating nvidia devices in /dev"
echo "Creating misc items missing."
# remove this if you don't think need.
mknod -m 600 /dev/beep c 10 128
chgrp audio /dev/beep
mknod -m 660 /dev/pcaudio c 13 4
chgrp audio /dev/pcaudio
mknod -m 660 /dev/pcmixer c 13 0
chgrp audio /dev/pcmixer
mknod -m 660 /dev/pcsp c 13 3
chgrp audio /dev/pcsp
mknod -m 660 /dev/hfmodem c 10 145
echo "Done creating misc items missing."
exit 0
Haced también q '/dev/mouse' apunte a '/dev/input/mice' , sino lo hace
ya :)
Si necesitáis también ppp , haced :
mknod -m 600 /dev/ppp c 108 0
Pues nada más, a disfrutarlo. El nuevo kernel me parece que se sale
:DDDD
Leo también q los nuevos drivers IDE hacen q no sea ya necesaria la
emulación SCSI para las grabadoras. Habrá que probarlos, supongo :)
oinatz