Although most devices needed by packages in BLFS and beyond are set
up properly by udev using the
default rules installed by LFS in /etc/udev/rules.d
, there are cases where the rules
must be modified or augmented.
User Notes: http://wiki.linuxfromscratch.org/blfs/wiki/aboutdevices
If there are multiple sound cards in a system, the "default" sound
card becomes random. The method to establish sound card order
depends on whether the drivers are modules or not. If the sound
card drivers are compiled into the kernel, control is via kernel
command line parameters in /boot/grub/menu.lst
. For example, if a system has
both an FM801 card and a SoundBlaster PCI card, the following can
be appended to the command line:
snd-fm801.index=0 snd-ens1371.index=1
If the sound card drivers are built as modules, the order can be
established in the /etc/modprobe.conf
file with:
options snd-fm801 index=0
options snd-ens1371 index=1
Fine-tuning of device attributes such as group name and permissions
is possible by creating extra udev
rules, matching on something like this (on one line). The vendor
and product can be found by searching the /sys/devices directory
entries or using udevinfo after the device has
been attached. See the documentation in the current udev directory of /usr/share/doc
for details.
SUBSYSTEM=="usb_device", SYSFS{idVendor}=="05d8",
SYSFS{idProduct}=="4002", GROUP:="scanner", MODE:="0640"
Some older applications, such as VMware, need the following deprecated entry in
the /etc/fstab
file. This is not
normally needed.
usbfs /proc/bus/usb usbfs devgid=14,devmode=0660 0 0
In some cases, it makes sense to disable udev completely and create static devices. Servers are one example of this situation. Does a server need the capability of handling dynamic devices? Only the system administrator can answer that question, but in many cases the answer will be no.
If dynamic devices are not desired, then static devices must be
created on the system. In the default configuration, the
/etc/rc.d/rcsysinit.d/S10udev
boot
script mounts a tmpfs
partition
over the /dev
directory. This problem
can be overcome by mounting the root partition temporarily:
If the instructions below are not followed carefully, your system could become unbootable.
mount --bind / /mnt cp -a /dev/* /mnt/dev rm /etc/rc.d/rcsysinit.d/{S10udev,S45udev_retry} umount /mnt
At this point, the system will use static devices upon the next reboot. Create any desired additional devices using mknod.
If you want to restore the dynamic devices, recreate the
/etc/rc.d/rcsysinit.d/{S10udev,S45udev_retry}
symbolic links and reboot again. Static devices do not need to be
removed (console and null are always needed) because they are
covered by the tmpfs
partition.
Disk usage for devices is negligible (about 20–30 bytes per
entry.)
Last updated on 2007-04-14 05:46:41 -0500