in the standard kernel code "single" is not an option. In 'linux/init/main.c' you will see that init= is the option used to change init, and that it defaults to /sbin/init, then /etc/init, then /bin/init, then /bin/sh as a failsafe, in case you haven't installed init yet. So this is a standard redhatism, that isn't incorperated in every distribution.