Solaris Run level change

by on March 3, 2006 · 8 comments· LAST UPDATED March 3, 2006


Well finally, I have started to use Solaris. Whenever I get different version of UNIX; I need to find out runlevel related information, as you may need to change runlevel for following causes:

  1. Halt/reboot system when shutdown command don’t work
  2. Troubleshooting or repairing system

The first thing I noticed was /etc/inittab file is different from the Linux version. However, runlevel are quite identical

Default Solaris Run Level

  • S : Single user state (useful for recovery)
  • 0 : Access Sun Firmware ( ok> prompt)
  • 1 : System administrator mode
  • 2 : Multi-user w/o NFS
  • 3 : Multi-user with NFS
  • 4 : Unused
  • 5 : Completely shutdown the host (like performing a power-off @ OBP) [ thanks to Marco ]
  • 6 : Reboot but depend upon initdefault entry in /etc/inittab

Solaris Find out runlevel
To find out current runlevel use who command:

$ who -r


  .       run-level 3  Mar  3 14:04     3      0  S

Solaris changing runlevels after bootup
You need to use init command, for example change runlevel to 2.

# /sbin/init 2

Solaris changing the default runlevel
An entry with initdefault (in /etc/inittab file) is scanned only when init is initially invoked. init uses this entry to determine which run level to enter initially.

Open /etc/inittab file:

# vi /etc/inittab

Find out this entry:


Change is:3 to number you want, don't use S, 0, 6 ;). Save file.

See also

  • Read man page of inittab and init for more information.
  • There is also a nice program called runlevel for Solaris.

(Check out all of our posts on Solaris)

TwitterFacebookGoogle+PDF versionFound an error/typo on this page? Help us!

{ 8 comments… read them below or add one }

1 Anonymous March 3, 2006 at 4:57 pm

The run level 5 completely shutdown the host (like performing a power-off @ OBP)
I like your blog!


2 LinuxTitli March 3, 2006 at 6:01 pm

I was just wondering about run level 5, under Linux it is for X window.

Thanks Marco!


3 Anonymous October 11, 2006 at 6:38 pm


I’d like to know about the previos run-level when doing “who -r”

Why previous run=level is S
Why not 2? since we’re currently on 3.


4 Nate Duehr May 1, 2007 at 10:46 pm

Some SysV implementations jump straight from S to their final runlevel… others work their way up from the lower ones. Never assume anything in a lower runlevel is EVER started in any other… always create all the symlinks for everything you want running at each level.


5 priyaraj June 13, 2007 at 4:02 am

can i have my oown run levels?


6 Sriram December 14, 2007 at 1:57 pm

Are runlevel S and 1 not same ???


7 Jai Arun August 9, 2011 at 12:32 pm

Yes, Run levels S and 1 are not same… because 1 is a numeric number and S is alphabet.


8 Modiby September 23, 2011 at 2:17 am

Way to answer a 3 and a half year old question


Leave a Comment

Previous post:

Next post: