Image of the glider from the Game of Life by John Conway
Skip to content

Debian - The Universal Operating System

The other day, I blogged about the Debian Installer, and I stated that I find it to be one of the most flexible and possibly most powerful operating system installers. Well, continuing with a series of posts on Debian, I want to mention how flexible the operating system is by itself, from installing to running. The claim from the Debian project that it is "The Universal Operating System" is spot on, and I hope this post shows you really how universal it truly is.

First off, let me start by saying that Debian isn't perfect. No operating system is. However, I find the flexibility of Debian extremely powerful. So powerful, in fact, that Debian can meet the needs of most individuals and situations. While it may not meet the needs of all individuals all the time, I'm confident that it can either meet the needs of all individuals some of the time, or some of the individuals all the time. Let's take a look.

First, as mentioned in my previous post, the Debian installer is fantastic. I won't cover everything here that I already covered in that post, but I will mention a few things. To start, you can download the entire 5-disk DVD set, in addition to a 1-disk DVD update to get you caught up to the latest stable release, and use this set as your software repository, keeping your system completely offline, should you so desire. You could also download 31 CDs, including 5 additional update CDs for the same thing, should you not have a DVD burner at your disposal.

Of course, not everyone is up do downloading 30GB of software, so, should you desire, you could download just the first DVD or CD to do a complete base "default" install. This way, you've only downloaded ~5GB if you grabbed the DVD, or ~700MB if you grabbed the CD. Much better than 30GB.

But, Debian doesn't stop there. Even 700MB might be too much. So, you can download "net installers" which are substantially smaller images. These installers come in two flavors- businesscard and netinst. The businesscard images are designed to be burned on business card CDs, which only hold 50MB total. As a result, these are great to carry in wallets (I do myself) should you be a Debian system administrator. The netinst image is a bit bigger, roughly ~170MB, give or take. The different with these from the business card images is they contain the base software on the ISO, where the business card relies on an external software repository for that.

Aside from ISOs, you can install Debian from a USB drive, PXE or from a local hard disk should you desire. Debian ships expansive documentation covering how to do each of these in detail, so you're not left stranded.

Part of what makes Debian GNU/Linux the universal operating system is the architecture itself. The developers of Debian want to reach as many people as possible with the widest array of hardware and software, while not compromising the philosophies in regards to software itself. As such, the developers of Debian have split the software repositories into 6 repositories:

  • oldstable: This is the release that was previously the "stable" release. This software is supported for one year by the security team after it has become "oldstable". If a new stable release happens within that year, then this release will become "oldoldstable" for the remainder of the year, with the new oldstable receiving a new full year of security updates. This is currently aliased to "etch".
  • stable: This is currently aliased to "lenny". The stable release is the officially supported release by the security team, meaning that security updates and bug fixes are applied in a timely manner.
  • testing: This release becomes the test bed for the next stable release. It has filed against it a number of "release critical" bugs. This count must reach as close to zero as humanly possible, while still keeping the idea of a close release at hand before becoming the next stable. Packages enter this release from the "unstable" branch only after a stringent testing criteria. The testing criteria is:
    • It must have been in unstable for 10, 5 or 2 days, depending on the urgency of the upload.
    • It must be compiled and up to date on all architectures it has previously been compiled for in unstable.
    • It must have fewer release-critical bugs than, or the same number as, the version currently in "testing".
    • All of its dependencies must either be satisfiable by packages already in "testing", or be satisfiable by the group of packages which are going to be installed at the same time.
    • The operation of installing the package into "testing" must not break any packages currently in "testing".

    A package which is said to pass 3 of the above criteria is said to be a "valid candidate". Packages in this release do not get security updates from the security team. This release is currently aliased to "squeeze". This release is also coined a "rolling release" as there are no release dates, but updates come in on a near daily basis, fixing bugs and preparing for the next stable release.

  • unstable: As the release name implies, packages here are not guaranteed to be stable. Packages could break other packages in this release, and regularly do. Security updates are not applied to packages in this release, however, due to the nature of the release, most packages here are bleeding edge with the latest versions. This release is permanently aliased to "sid". It is also considered a "rolling release" like testing.
  • experimental: This release is not indented for installs. It is solely suited for package building, testing and signing. Packages entering this release have just come through the package queue, and are brand new, usually upstream as well. Quite often, packages here are still in development, usually alpha quality. Packages should not be installed from here, as they can be potentially dangerous to your system, even for experienced users.
  • volatile: The packages in the stable release sometimes get old out outdated, as the time between releases could be great. This not only includes binaries, but configuration files, libraries, databases and other pieces of software. As such, the volatile release is aimed at keeping things, such as configuration files, more up-to-date. For example, spam blacklists for SMTP servers. It is important for administrators to keep on top of their spam, so keeping up-to-date spam definitions is critical. This release supplies these definitions. Generally, binaries are not included in this release. All package dependencies in this release are satisfiable in the stable release.

Aside from the 6 software releases, of which stable, testing and unstable are named after Toy Story characters from the Disney/Pixar movie, Debian GNU/Linux ships 4 kernels as well. This is part of the reason for the name "Debian GNU/Linux" as the name implies that Debian is an operating system that comprises of mostly GNU software with the Linux kernel. However, other kernels and software can be added. As such, the four kernels we have are:

  • Debian GNU/Linux
  • Debian GNU/kFreeBSD
  • Debian GNU/Hurd
  • Debian GNU/NetBSD

Debian GNU/kFreeBSD is the furthest developed of the three kernels outside of the Linux kernel mentioned above. Currently, the FreeBSD kernel has landed in the "testing" release, meaning it will be fully supported by the security team for the next "stable" release, codenamed "Squeeze". Advantages of this bring the ZFS filesystem to the Debian userland, and the PF firewall from OpenBSD. Debian GNU/kFreeBSD will only be supported on two architectures out the gate, namely i386 and amd64. Debian GNU/Hurd and Debian GNU/NetBSD are still under active and heavy development. In fact, the Debian project seems to be doing more for the Hurd kernel than the GNU project itself, as most Hurd developers are also Debian developers.

CPU Architectures
If this isn't enough, when the Linux kernel initially released, it only supported Intel 386 back in 1991. Fast forward nearly 20 years later, and the Linux kernel supports a massive array of CPU architectures. The Debian project has strived hard to reach as many of them as they can. As such, under the current stable release, Debian GNU/Linux supports 12 CPU architectures, namely:

  • Alpha
  • AMD64
  • ARM
  • Intel x86
  • Intel IA-64
  • MIPS (big endian)
  • MIPS (little endian ("MIPSEL"))
  • PowerPC
  • IBM S/390

There are three additional CPU architectures that are under development, and will probably find their way into a "stable" release. They are:

  • Armeb (big endian ARM processors)
  • Atmel's 32-bit RISC
  • Hitachi SuperH
  • PowerPC64
  • Renesas Technology's 32-bit RISC

Now granted, not all of the software that is available for the Debian operating system is available on every architecture. The Intel processors get the most attention obviously, as they hold the largest market share. But, package support for each architecture is growing, and the heavy hitters in the packages selection are likely already compiled for that architecture, such as Apache, NFS, OpenLDAP, GNOME, etc. NetBSD might be the only other operating system in the world with more hardware support than Debian.

Coupled with all this software and hardware that Debian GNU/Linux supports, you can choose your software based on your personal philosophies toward software freedom. The Debain project prides itself in being an operating system that ships Free Software as defined by the GNU project. As such, by default, a Debian operating system will only ship Free Software, leaving the proprietary software out. However, holding true to the universal operating system paradigm, they have made proprietary software available for installation, should you choose to use it. So, they've split out their software repositories as follows:

  • main: This repository holds the bulk of software installable from Debian. All software in this repository is deemed Free Software as defined by the Debian Free Software Guidelines (see Appendix). This is the only repository enabled by default on a new Debian GNU/Linux install.
  • contrib: This repository also contains Free Software, however, it might rely on proprietary counterparts, such as images or media codecs. This repository must be added by the user manually after install.
  • non-free: This repository contains only proprietary software, or software licensed such that it does not meet the Deian Free Software Guidelines. This repository must be added by the user manually after install.

Because the Debian project is a community-driven project run entirely by volunteers in many countries across the world, it also strives to provide package translation for as many languages as possible. Unlike Red Hat, who can say they support 19 languages out the box, Debian has provided package translation, mostly in part, for nearly 250 languages! However, most of these translations are works in progress, and are not considered complete. If you speak one of these languages, feel free to join in on translating packages to get Debian closer to complete in this area.

Outlining the vast array of software and hardware that Debian supports, coupled with the flexible installer, and package translation for hundreds of languages, truly makes Debian the universal operating system. Nevermind the fact that Debian also appeals to a large crowd of users. Everyone from complete "newbs" to the ultimate hardcore hacker can easily fit within the Debian ecosystem.

{ 18 } Comments

  1. Vadim P. | November 17, 2009 at 9:31 pm | Permalink

    Good to know... I guess... I only run OS's on my laptop, and Ubuntu works fine with it.

    Phone came with a pre-installed and supported one :/

  2. Vadim P. | November 17, 2009 at 9:32 pm | Permalink

    Oh yeah and I don't use Mac OS X. I'm on Google Chrome, Linux dev version provided by Google.

    So your OS/browser thing is completely wrong.

  3. Vadim P. | November 18, 2009 at 7:58 am | Permalink

    Ey thanks for fixing it 🙂

  4. Allen | November 18, 2009 at 10:09 am | Permalink

    Great article. Good overview. I am a new Debian convert. I'm using Debian lenny. Amazed at the stability. Coming from Ubuntu, I missed some things. First thing I did was set up sudo :}

    Even Flash inside Firefox is stable. Somethings I find frustrating, but I am able to get me work done and no freezes/crashes.

  5. poinck | November 18, 2009 at 1:09 pm | Permalink

    Hey, I am using Debian 5.0 . Hopefully more people get to know that Debian is very universal. (o:

  6. Allen | November 18, 2009 at 2:06 pm | Permalink

    Ok. So I don't use Linux at work.

    "Allen using Internet Explorer 7.0 Internet Explorer 7.0 on Windows XP Windows XP | November 18, 2009 at 10:09 am "

  7. Ali Gündüz | November 18, 2009 at 3:00 pm | Permalink

    "The Debain project prides itself in being an operating system that ships Free Software as defined by the GNU project."

    Regardless of your or anyone's view of software freedom, this seems to be scientifically wrong, since the GNU project site states even the Debian base installation contains nonfree software at

    I'm loving this series otherwise. It's nice and will be useful to have such concise introductory summaries about Debian GNU/Linux.

  8. Kumar Appaiah | November 18, 2009 at 5:01 pm | Permalink

    Lovely write up, and many thanks for explaining the several positives of Debian GNU/{Linux,kFreeBSD,NetBSD/Hurd}.

  9. Janoš Guljaš | November 18, 2009 at 5:35 pm | Permalink

    Really nice article. You have very well described haw wide is Debian in most of its aspects, witch is Debian's great advantage over all other OSs.

  10. Debianero Rumbero | November 18, 2009 at 7:14 pm | Permalink

    Nice article and full of truth.

    Debian is not just an OS, is THE OS.

  11. Arora Debito | November 18, 2009 at 7:17 pm | Permalink

    I agree, Debian rocks.

  12. degentd | November 20, 2009 at 11:44 am | Permalink

    Debian rulez. Great article!

  13. Peter | November 22, 2009 at 8:50 am | Permalink

    The easiest way to install Debian when you're coming from Windows is to use the unofficial installer from It is an EXE file that downloads a minimal Debian installer image, sets up GRUB to choose to boot into either the installer or back into Windows, and then prompts you to reboot. The Debian net-installer downloads just the packages you choose to install (i.e. not all of the 5 DVD set).

  14. jasd | November 28, 2009 at 4:47 pm | Permalink

    Gentoo, Debian and Arch are my favourite distributions since I dropped Slackware (since the abandon of GNOME + others issues). No one replace the others... they are complementary (source/binary-based, package mgnt...). Anyway good overview (it's good to know for beginners/windoers that there's other choices than the artificial/wrong Distrowatch's top 5).

  15. Aaron | November 29, 2009 at 7:52 am | Permalink

    @jasd Not sure what you mean by "the artificial/wrong Distrowatch's top 5". The ranking system on Distrowatch is merely the number of page hits for the listing of each of those distros. It shouldn't be taken as anything more. However, I think it's highly arguable that Ubuntu, Fedora and openSUSE are definitely the top distros among enthusiasts. But really, who cares? Somehow, people are threatened by the fact that their distro isn't in the Top 10 or something on Distrowatch, or elsewhere? Who honestly cares? Use what works for you. That's all that matters.

  16. Yes! | December 1, 2009 at 6:51 am | Permalink

    Yes! Debian's the best!

  17. Yes! | December 1, 2009 at 6:53 am | Permalink

    but I still tell people to try Mint as their first *nix for a headache-free experience (i.e., no need to set up Flash, etc.)

  18. lol | December 14, 2009 at 8:07 am | Permalink


{ 2 } Trackbacks

  1. [...] System” is spot on, and I hope this post shows you really how universal it truly is. More here First off, let me start by saying that Debian isn’t perfect. No operating system is. However, I [...]

  2. [...] Debian – The Universal Operating System The other day, I blogged about the Debian Installer, and I stated that I find it to be one of the most flexible and possibly most powerful operating system installers. Well, continuing with a series of posts on Debian, I want to mention how flexible the operating system is by itself, from installing to running. The claim from the Debian project that it is “The Universal Operating System” is spot on, and I hope this post shows you really how universal it truly is. [...]

Post a Comment

Your email is never published nor shared.