The broken Ubuntu runlevel system.

Posted: January 18, 2012. At: 10:30 PM. This was 6 years ago. Post ID: 2465

The Ubuntu distribution is broken in one big way, the Red Hat Linux distribution has run levels properly configured, where you can type su -c “init 3” to shut down the graphical login manager and switch to a run-level that only has the seven TTY virtual consoles running. That needs to be brought back, there is a modification of the init scripts posted on the above link, but this is not guaranteed to work with a much more recent distribution like 11.10 or my 12.04 installation. OpenSuse, and Fedora Core Linux have the run-levels properly implemented but Canonical have neutered their distribution by dumbing it down at every level so to speak. That is a great shame. I can find no clear way to shut down the Lightdm login manager and just use the text console. I shut it down once and then the Unity greeter started up in its place. They do not expect that someone would want their machine to start up to a text console where they can type their username & password and then be placed at a bash shell prompt. But no, they have made Ubuntu more and more like Windows. This is due to the fact that you would not use a text login on a tablet computer and this is the target platform for the Ubuntu distribution after all.

In the old days, you used the text console a lot, you can use the text based Links browser to access websites with graphics on the text console. And you can use Mplayer to play movies on it as well. In the old days as well, you had to specify the console resolution e.g, vga=0x307 to gain a high-resolution text framebuffer console, but nowadays the Kernel Mode Setting code in the Linux kernel takes care of that without intervention. That is why you do not need a /etc/X11/xorg.conf file any more, KMS sets the appropriate display resolution to the native resolution of your large screen display. A UNIX distribution that lacks KMS like FreeBSD can not use this system and you need to recompile the kernel which is an easy operation on FreeBSD and you can enable a 1280*1024 high resolution frame-buffer console, but you should need to do this in 2012. As I said in my posting about the new PC-BSD 9.0 Live DVD, there needs to be more interoperability between developers for Linux and BSD alike, this would encourage both operating systems to grow rather than one stagnating whilst the other enjoys the fruits of a working GEM/KMS implementation and good hardware support. BSD invented the ports system that the Linux distribution Gentoo has adopted as the portage system that the distribution is built from.

I guess this is progress, but progress to what? There is the Nexenta operating system that combined Ubuntu Hardy and UNIX, but that is not really mainstream. And the Debian KFreeBSD that offers the BSD kernel on a Debian GNU/Linux machine. I have not tried it out, if it was available for the Ubuntu distribution then I might try it out, but it might not offer the same level of hardware support that the Linux kernel currently offers. Actually I just found a KFreeBSD package set for Ubuntu Lucid Lynx, but there are none for Precise Pangolin. This includes a version of gcc that will compile FreeBSD sources allowing FreeBSD packages to be built on Linux. But just about any package you would want is available in the repositories for Ubuntu anyway, but this would be an interesting system to experiment with and build a hybrid BSD/Linux system. Hopefully this package will become available for Ubuntu Precise Pangolin and I can try it out and let you know how I go. The freebsd-buildutils package and the freebsd-manpages packages are available for Ubuntu 12.04 just not the actual KFreeBSD package, so you would need to compile it manually.

I have included a video below, this shows the Debian KFreeBSD system in action. The only problem with the FreeBSD kernel and I have mentioned this before is the lack of KMS support, so if you are wanting to use this on a modern computer, expect extremely slow Xorg performance using the VESA driver. The FreeBSD 9.0 release though is a good release, the ports system works perfectly now and there are heaps of games, as many as Gentoo such as Unreal Tournament and Doom3 as well as many other cool applications. I would consider switching to FreeBSD over Linux if they would fix GEM/KMS support and better support for HDMI audio output. If they had that, then I would be very happy with it indeed. ZFS is an awesome file-system and would definitely be a must have if you switch to a BSD system.

5 responses to “The broken Ubuntu runlevel system.

F16 has moved to systemd for init but it still does include a text-only runlevel (

I find it hard to believe Ubuntu doesn’t include a text-only runlevel. How are you supposed to fix your broken xorg.conf?

That’s hilarious if it doesn’t though. The distro that used to be king, now gets more and more irrelevant with each release.

Yes, and for installing the binary Nvidia binary blob you still need to build a kernel driver and you need to shut down Xorg completely to finish the installation sucessfully using the Nvidia driver installer. I need to work this out, I love Ubuntu right now, everything else works except shutting down Xorg properly and getting to a plain TTY console. I guess if I ever purchase a PCI-E Nvidia card I would have to work this out.

I fixed the issue with suspend I had, I installed the xubuntu-desktop package and the system settings menu that offers allows me to remove the option of asking for a password on resume as it would not accept my password and mine is the only account!

chkconfig has been the service manager in Fedora/RHEL for years now.

Also that’s just how crap the binary video drivers are. I don’t know how the experience is on nVidia (because they are complete asshats and nobodu should buy their product) but radeon performance on Kernel 3.1 with my HD6870 is so good I’m not even bothering to install the proprietary driver in F16.

According to news on Phoronix, this should be even better by the time we get to Kernel 3.2 or 3.4.

Leave a Reply