1. /sbin/rc determines whether to mount sysfs simply by existence of /sys directory. Which sucks because after booting sysfs-less kernel it will try to mount sysfs anyway (with default parameters) and fail and init scripts will stop and ask for password to "fix" the situation. Constant mkdir and rm are annoying. 2. eth0 doesn't come up here if kernel is sysfs-less Setup: two wired NICs, let's call them eth0 and eth1. eth1 connected to the world, eth0 connected to laptop. eth0 netconsoles to laptop via kernel netconsole= boot option. Kernel forcefully ups eth0 during boot. config_eth0=( " 192.168.0.1 netmask 255.255.0.0 brd 192.168.0.255" ) config_eth1=( "10.0.3.154 netmask 255.255.254.0 brd 10.0.3.255" ) routes_eth1=( "default via 10.0.2.1" ) 70-persistent-net.rules: SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="MAC1", NAME="eth1" SUBSYSTEM=="net", DRIVERS=="?*", ATTR{address}=="MAC0", NAME="eth0" After booting sysfs-less kernel eth0 is not up, requires manual "net.eth0 up", after which works fine. Looking at init scripts output, net.eth0 isn't even called, not fails.
I don't think udev works without sysfs.
sysfs is considered required ... only in restricted embedded setups can you get by by disabling it, but it also requires a lot of changes elsewhere