Run level, run!

17 October 2008

ec2 linux runlevels xen

Trying to debug why my init scripts weren't initing on EC2, I checked all the normal places.

The 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:

  
id:3:initdefault:

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.

  
N 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...