Correcting a typo pointed out in the earlier post today. This revision makes 2 changes...
A) The removal of udev is now standard instead of optional. udev-181 and higher will be pulling in kmod, and anything else that kmod depends on. Removing udev will avoid unnecessary cruft on your machine. B) Splitting up step 3) into 3a) and 3b) for greater clarity as requested in user feedback. The usual warnings apply... * this is a beta * use a spare test machine * if you don't follow the instructions correctly, the result might be an unbootable linux * even if you do follow instructions, the result might be an unbootable linux 1) Set up your kernel to support and automount a devtmpfs filesystem at /dev * If you prefer to edit .config directly, set CONFIG_DEVTMPFS=y and CONFIG_DEVTMPFS_MOUNT=y * If you prefer "make menuconfig", the route is as shown below. Note that the "Autount devtmpfs..." option won't appear until you enable "Maintain a devtmpf..." option. make menuconfig Device Drivers ---> Generic Driver Options ---> [*] Maintain a devtmpfs filesystem to mount at /dev [*] Automount devtmpfs at /dev, after the kernel mounted the rootfs Once you've made the changes, rebuild the kernel. 2) Set up for emerging busybox. busybox requires the "mdev" flag in this situation. The "static" flag is probably also a good idea. In file /etc/portage/package.use add the line sys-apps/busybox static mdev Now, "emerge busybox" 3 a) Create /sbin/linuxrc containing at least #!/bin/busybox ash mount -t proc proc /proc mount -t sysfs sysfs /sys exec /sbin/init This should be enough for most users. If you have an unusual setup, you may need additional stuff in there. Remember to "chmod 744 /sbin/linuxrc" to make it executable. In the bootloader "append" line, include "init=/sbin/linuxrc". If you're using lilo remember to re-run lilo to implement the changes. If you're using another bootloader, make the equivalant initialization. 4) Remove udev from the services list, and replace it with mdev. Type the following 2 commands at the command line rc-update del udev sysinit rc-update add mdev sysinit 5) reboot to your new kernel. You're now running without using udev. 6) Remove udev as per the following instructions... * execute the following command at the commandline emerge --unmerge sys-fs/udev * In file /etc/portage/package.mask, append the line sys-fs/udev Create the file if it doesn't already exist. You now have a totally udev-free machine -- Walter Dnes <waltd...@waltdnes.org>