(Illustration by Gaich Muramatsu)
On Thu, Mar 30, 2006 at 12:57:35AM -0600, Jerry Amundson wrote: > Actually, /dev/cfs0 won't survive a reboot anyway. Figured out I need "cfs0 > c 67 0" in /etc/udev/static_devices.txt - and now /dev/cfs[0-4] are there. > Yippee. Yeah, udev is nice for devices that actually have some piece of hardware associated with them, but it isn't all clear how useful it is for virtual devices like Coda's character device. Putting a modprobe in the venus.init script doesn't work, because there is a non-deterministic amount of time between the loading of the kernel module and the appearance of the device. So the other options are to load the module at boot time and hope the machine is slow enough that the device has appeared by the time venus is started, or to add a static entry in the udev configuration and allow the kernel to autoload the kernel module when the device is opened. It also seems like every distro has their own local flavor of udev installed. My Debian box doesn't have a static_devices.txt file but has /etc/udev/links.conf where static device nodes for ppp, loop, and tun devices seem to be created and it has the comment, # This file does not exist. Please do not ask the debian maintainer about it. # You may use it to do strange and wonderful things, at your risk. Which doesn't really make it sound like it is a reliable place to put customizations by other packages. And even when the static entry is created we still need to add the "alias char-major-" to whatever the modprobe configuration file of the day is (/etc/modules.conf, /etc/conf.modules, /etc/modprobe.conf) Of course getting a module to load at boot time is not uniform either, Debian uses /etc/modules, Fedora Core 3 wants /etc/rc.modules, and I'm sure there are other variants floating around, but is seems like the simpler solution whenever udev is installed. JanReceived on 2006-03-31 13:10:32