I issued the following command to rebuild the whole dev files: ( cd /etc/makedev.d/ ; for i in * ; do /dev/MAKEDEV -c /etc/makedev.d/ -d /tmp/n $i ; done ) However, afterwards some files which are in the dev RPM package are still missing. Eg. console, loop*, cui*, cua*
The filenames in /etc/makedev.d are not device names. (They contain information about device nodes that MAKEDEV can read and create, but they are not device names.)
Hm, never said that. The above command eg. expands to: /dev/MAKEDEV -c /etc/makedev.d/ -d /tmp/n ide This is, build all the ide devices (the ide file then contains config options which actually create hd[x]). Nothing wrong with that, I think. Looking at the syntax this is also okay: MAKEDEV [-c configdir] [-d devicedir] [-m maxdevices] [-v] [-n] device Just as in my example. With the only difference that I do not specify the devices directly but use the "device groups" (ie. the files in /etc/makedev.d which again do contain directives how to create the actual devices).
Actually, "MAKEDEV ide" shouldn't be creating a lot of those symlinks, just any that point to the IDE devices. Fixed in 3.0.5.
Sorry, but I do have to reopen this again ... Hope I can make clean what I do mean exactly this time. The problem is: when builing the dev files as described above, not all devices are created. That is, when I issue the following commands: /dev/MAKEDEV (...) cdrom /dev/MAKEDEV (...) dac960 (...) /dev/MAKEDEV (..) linux-2.2.x (...) /dev/MAKEDEV (...) usb /dev/MAKEDEV (...) v4l I did now have a closer look at it - especially linux-2.2.x does not do what I expected. The linux-2.2.x config file contains many entries. But only the symlinks for core, fd, sterr, stdin, stdout are created. Did I misunderstand this? Is MAKEDEV not expected to work this way (ie. should it be called explicitely for everything, eg. hda)?
Exactly. The name of the file is just a mnemonic for the maintainer. The %install in the .spec file just runs MAKEDEV multiple times to generate the contents of /dev. A name like "ide" only works because it's a partial match for ide0, ide1, and so on, and those are aliased to hda, hdb, hdc, hdd....