17 October 2008
Trying to debug why my init scripts weren't initing on EC2, I checked all the normal places.
chkconfig tool reported that my services should be on at runlevel 3:
jboss 0:off 1:off 2:off 3:on 4:off 5:on 6:off
My /etc/inittab says I was booting to runlevel 3:
Yet the console did not show my things to be spinning. A little googling around, I found the
runlevel command (I'm not a linux expert...) which explained to me I was in runlevel 4.
4? Really? 4? I wasn't expecting that.
Apparently this is just how EC2/Xen work. They force you up into runlevel 4.
What does 4 mean? Asking the Wikipedia, you'll see a pattern:
- Typical linux: unused
- Debian/Ubuntu: same as 2,3 and 5, weirdos
- RHEL/Fedora: unused/user-definable
- SUSE: unused/user-definable
- Slackware/Gentoo: Same as 3, which implies graphics, even
- Sys-V: seems to imply multi-user with graphics
I had no idea that runlevels were all over the map. I also had no idea that EC2 would disregard my inittab and make up their own ideas.
Thanks, guys. Another hour-long round of RPMing, kickstarting, and image-creation ahead of me...