Ubuntu and Debian are two very popular Linux distributions that are almost identical but also have their differences. At times, things appear similar and some things may even be the exact same. Ubuntu is a derivative of Debian, it is actually forked from Debian early in its life cycle. They then add their own software and look. There are, however, various differences between Ubuntu and Debian beyond the look and feel.
One difference between Debian and Ubuntu is the way they are released. Debian has a model based on stability with three different release streams. Ubuntu has a more traditional two-stream release model.
The Debian Release Model
Debian is entirely supported by a community of almost a thousand developers and has three releases; stable, testing, and unstable. Debian’s stable stream is very stable with all (free) software in its repositories working flawlessly out of the box. When it comes to stability and reliability, there are very few distributions in the same league as Debian Stable. This is one of the biggest reasons I prefer Debian as the backbone when creating new apps.
The most stable of its release streams. With stability, however, there is a bit of a trade-off as well. The software available in Debian’s Stable release software repositories is usually a few versions behind. This is natural as it takes time to ensure all the pieces fit together properly and provide the reliability and stability promised. That’s not to say that you’re stuck with old versions of the software. You can get more up to date versions of the software you need through the other 2 release streams. Sometimes, developers maintain their own repositories and make them available as well. This makes Debian stable perfect for running servers as we don’t need the absolute latest and bug-prone software. When running a server to host our software on, we want to know that the OS will stay up and running.
Then there’s the second release stream of Debian. The Testing stream changes more often with newer versions of software and utilities. The Debian stable team actively engineers their next stable release from the testing branch. They’re not quite ready to give it their seal of approval yet to promote it to a stable release. That, however, doesn’t mean that the testing release stream is unstable by any means. In reality, using Debian Testing is like using a rolling release distribution like OpenSUSE Tumbleweed.
Finally, there are also Debian’s more frequent, but unstable releases. Code-named Sid, they’re named after the mean kid in the Toy Story movies who breaks all of his toys. Sid is where the Debian team tests out the absolute latest software packages. While you technically can run Sid, it’s usually not a good idea and not recommended. Unless you want the headache of constant troubleshooting.
The Ubuntu Release Model
Ubuntu relies heavily on a commercial backer and therefore has a much more traditional model of release. It is the first major OS to commit to scheduled regular releases. Regular releases come out every 6 months in April and October. They are supported for about 8 months. Every 4th release in April is a long-term support (LTS) release. These LTS releases are officially supported for hardware and maintenance updates for five years. They also offer an additional 5 years of extended security updates. Ubuntu’s LTS releases are geared toward large scale deployments such as servers and workstations. It’s regular releases, with only standard support, are geared more toward desktop users.
The Ubuntu Approach
Early in Ubuntu’s development process, the developers fork the latest unstable branch of Debian. As a result, a lot of the base of the OS is the same. Where the two operating systems vary wildly, is in their policies regarding software.
With its regular releases, Ubuntu is geared more toward desktop users. Ubuntu’s chief concern is usability and user-friendliness. Therefore, they include everything in their default repositories to make it as easily accessible as possible. With their commercial backer, they are less worried about keeping things free and open source. They just want it to work right away. Even if it means shipping software that the user may not even need.
The Debian Approach
In contrast, Debian has a strict stance on free software. To Debian, proprietary software is the last resort. You don’t find a single piece of proprietary software included in a default Debian installation. However, this doesn’t mean that proprietary software will not be possible nor supported. Debian does want to ensure compatibility with third-party software. For those purposes, the project has put all proprietary software into a separate repository. You will need to manually enable it after the install.
The same can be said about drivers and firmware. As you can expect, Debian will also have some trouble with drivers and firmware as the Debian kernel doesn’t contain any proprietary blobs by default. Like with other software though, you can enable the non-free repository yourself and install them manually.
Ubuntu will include as much firmware as possible and automatically install and configure drivers for you. Ubuntu will also work with hardware manufacturers to certify hardware to work with Ubuntu.
Check out this page where Debian explains that by free software they don’t just mean at no cost.
Debian is supported entirely by a community of about a thousand active developers around the world. It’s governed by a board of elected developers. It has its own internal structure and laws. Just about all of Debian’s developers are volunteers.
Ubuntu, on the other hand, is the product of Canonical, a for-profit corporation. Canonical maintains the development of the Ubuntu operating system along with several related projects. They have full control over it. All decisions have to go through them. The upside here is that Canonical works to promote Ubuntu. They make deals with hardware manufacturers for compatibility.
Canonical also sells support services for its OS. If you run Ubuntu and need support, Canonical has your back, in case of disaster, for a fee of course.
There you have it! Debian is the base operating system for both OSes. Ubuntu and Debian are very similar, but also have some major differences. Ubuntu is geared more towards desktops and user-friendliness with a bit more of a corporate feel. Debian, on the other hand, is more concerned with having a stable OS with free software that works well together. Debian is a non-profit project and has that sort of culture around it as well.