On Sun, May 15, 2011 at 12:31 AM, Aaron Griffin <aaronmgriffin@gmail.com> wrote:
I was under the impression that some of these nodes are needed for udev to start working. At least, back in the day, I know that console, null, and zero needed to be created before udev started. If this is no longer true, then I see no issues with making them go away. Unless they're needed in early userspace before udev starts... but mkinitcpio could always create those nodes.
They used to be needed. However, with devtmpfs they are not. The essential ones (for early userspace) exist by default and the rest are created when udev is started. A quick test: delete /lib/udev/devices from your machine and notice that everything still works. A more thorough test: move /lib/udev/devices to /lib/udev/devcise.old (say) and reboot with init=/bin/bash (it would be best to do this with a self-compiled kernel that can boot without a initramfs to make sure nothing touches /dev at all). Now compare the contents of /dev with /lib/udev/devices.old. Cheers, Tom