Ubuntu – cannot change runlevel from 5 to 3

initrunlevel

i'm trying to change from runlevel 5 to runlevel 3 by running sudo init 3 command.
for some reason it doesn't do anything anymore.
the weird thing is that if i run the command runlevel it shows me that i'm at level 3.
tried to run init 5 and then init 3 and still nothing.

does anybody knows how to fix it?

Best Answer

From the manpages:

   Runlevels are a concept from UNIX(R)  System  V  used  by  the  init(8)
   daemon  or other system initialisation system to define modes of system
   operation.
   The Upstart init(8) daemon has no  native  concepts  of  runlevel,  and
   unlike  the  System  V  daemon,  makes  no attempt to keep track of the
   current runlevel.

Ubuntu and other modern Linux distributions have replaced System V init with Upstart:

Upstart is an event-based replacement for the /sbin/init daemon which handles starting of tasks and services during boot, stopping them during shutdown and supervising them while the system is running.

If you must switch to what is now closest to runlevel 3 do it by stopping your gdm or lightdm service.