What is Debian Linux?
Debian also known as Debian GNU/Linux, is a Linux distribution composed of free and open-source software, developed by the community-supported Debian Project, which was established by Ian Murdock on August 16, 1993. The first version of Debian (0.01) was released on September 15, 1993, and its first stable version (1.1) was released on June 17, 1996. The Debian Stable branch is the most popular edition for personal computers and servers. Debian is also the basis for many other distributions, most notably Ubuntu.
Debian is one of the oldest operating systems based on the Linux kernel. The project is coordinated over the Internet by a team of volunteers guided by the Debian Project Leader and three foundational documents: the Debian Social Contract, the Debian Constitution, and the Debian Free Software Guidelines. New distributions are updated continually, and the next candidate is released after a time-based freeze.
Since its founding, Debian has been developed openly and distributed freely according to the principles of the GNU Project. Because of this, the Free Software Foundation sponsored the project from November 1994 to November 1995. When the sponsorship ended, the Debian Project formed the nonprofit organization Software in the Public Interest to continue financially supporting development.
Download CD and DVD images or individual RPM packages.
Debian distribution codenames are based on the names of characters from the Toy Story films. Debian's unstable trunk is named after Sid, a character who regularly destroyed his toys.
Debian was first announced on August 16, 1993, by Ian Murdock, who initially called the system "the Debian Linux Release". The word "Debian" was formed as a portmanteau of the first name of his then-girlfriend (later ex-wife) Debra Lynn and his own first name. Before Debian's release, the Softlanding Linux System (SLS) had been a popular Linux distribution and the basis for Slackware. The perceived poor maintenance and prevalence of bugs in SLS motivated Murdock to launch a new distribution.
Debian 0.01, released on September 15, 1993, was the first of several internal releases. Version 0.90 was the first public release, providing support through mailing lists hosted at Pixar. The release included the Debian Linux Manifesto, outlining Murdock's view for the new operating system. In it he called for the creation of a distribution to be maintained openly, in the spirit of Linux and GNU.
The Debian project released the 0.9x versions in 1994 and 1995. During this time it was sponsored by the Free Software Foundation for one year. Ian Murdock delegated the base system, the core packages of Debian, to Bruce Perens and Murdock focused on the management of the growing project. The first ports to non-IA-32 architectures began in 1995, and Debian 1.1 was released in 1996. By that time and thanks to Ian Jackson, the dpkg package manager was already an essential part of Debian.
In 1996, Bruce Perens assumed the project leadership. Perens was a controversial leader, regarded as authoritarian and strongly attached to Debian. He drafted a social contract and edited suggestions from a month-long discussion into the Debian Social Contract and the Debian Free Software Guidelines. After the FSF withdrew their sponsorship in the midst of the free software vs. open source debate, Perens initiated the creation of the legal umbrella organization Software in the Public Interest instead of seeking renewed involvement with the FSF. He led the conversion of the project from a.out to ELF. He created the BusyBox program to make it possible to run a Debian installer on a single floppy, and wrote a new installer. By the time Debian 1.2 was released, the project had grown to nearly two hundred volunteers. Perens left the project in 1998.
Ian Jackson became the leader in 1998. Debian 2.0 introduced the second official port, m68k. During this time the first port to a non-Linux kernel, Debian GNU/Hurd, was started. On December 2, the first Debian Constitution was ratified.
Leader election (1999–2005)
From 1999, the project leader was elected yearly. The Advanced Packaging Tool was deployed with Debian 2.1. The number of applicants was overwhelming and the project established the new member process. The first Debian derivatives, namely Libranet, Corel Linux and Stormix's Storm Linux, were started in 1999. The 2.2 release in 2000 was dedicated to Joel Klecker, a developer who died of Duchenne muscular dystrophy.
In late 2000, the project reorganized the archive with new package "pools" and created the Testing distribution, made up of packages considered stable, to reduce the freeze for the next release. In the same year, developers began holding an annual conference called DebConf with talks and workshops for developers and technical users. In May 2001, Hewlett-Packard announced plans to base its Linux development on Debian.
In July 2002, the project released version 3.0, code-named Woody, the first release to include cryptographic software, a free licensed KDE and internationalization. During these last release cycles, the Debian project drew considerable criticism from the free software community because of the long time between stable releases.
Some events disturbed the project while working on Sarge, as Debian servers were attacked by fire and hackers. One of the most memorable was the Vancouver prospectus. After a meeting held in Vancouver, release manager Steve Langasek announced a plan to reduce the number of supported ports to four in order to shorten future release cycles. There was a large reaction because the proposal looked more like a decision and because such a drop would damage Debian's aim to be "the universal operating system".
The first version of the Debian-based Ubuntu, named "4.10 Warty Warthog", was released on October 20, 2004. Because it was distributed as a free download, it became one of the most popular and successful operating systems with more than "40 million users" according to Canonical Ltd. However, Murdock was critical of the differences between Ubuntu packages and Debian, stating that it leads to incompatibilities.
Sarge and later releases (2005–present)
In 2006, as a result of a much-publicized dispute, Mozilla software was rebranded in Debian, with Firefox forked as Iceweasel and Thunderbird as Icedove. The Mozilla Corporation stated that software with unapproved modifications could not be distributed under the Firefox trademark. Two reasons that Debian modifies the Firefox software are to change the non-free artwork and to provide security patches. In February 2016, it was announced that Mozilla and Debian had reached an agreement and Iceweasel would revert to the name Firefox; similar agreement was anticipated for Icedove/Thunderbird.
A fund-raising experiment, Dunc-Tank, was created to solve the release cycle problem and release managers were paid to work full-time; in response, unpaid developers slowed down their work and the release was delayed.
Debian 4.0 (Etch) was released in April 2007, featuring the x86-64 port and a graphical installer.
Debian 5.0 (Lenny) was released in February 2009, supporting Marvell's Orion platform and netbooks such as the Asus Eee PC. The release was dedicated to Thiemo Seufer, a developer who died in a car crash.
In July 2009, the policy of time-based development freezes on a two-year cycle was announced. Time-based freezes are intended to blend the predictability of time based releases with Debian's policy of feature based releases, and to reduce overall freeze time. The Squeeze cycle was going to be especially short; however, this initial schedule was abandoned. In September 2010, the backports service became official, providing more recent versions of some software for the stable release.
Debian 6.0 (Squeeze) was released in February 2011, introduced Debian GNU/kFreeBSD as a technology preview, featured a dependency-based boot system, and moved problematic firmware to the non-free area.
Debian 7.0 (Wheezy) was released in May 2013, featuring multiarch support
Debian 8.0 (Jessie) was released in April 2015, using systemd as the new init system.
Debian 9.0 (Stretch) was released in June 2017.
Debian 10.0 (Buster) was released in July 2019.
Debian 11.0 (Bullseye) was released in August 2021.
Debian is still in development and new packages are uploaded to unstable every day.
Debian used to be released as a very large set of CDs for each architecture, but with the release of Debian 9 (Stretch) in 2017, these have been dropped.
Throughout Debian's lifetime, both the Debian distribution and its website have won various awards from different organizations, including Server Distribution of the Year 2011, The best Linux distro of 2011, and a Best of the Net award for October 1998.
On December 2, 2015, Microsoft announced that they would offer Debian GNU/Linux as an endorsed distribution on the Azure cloud platform. Microsoft has also added a user environment to their Windows 10 desktop operating system called Windows Subsystem for Linux that offers a Debian subset.
Debian has access to online repositories that contain over 51,000 packages. Debian officially contains only free software, but non-free software can be downloaded and installed from the Debian repositories. Debian includes popular free programs such as LibreOffice, Firefox web browser, Evolution mail, K3b disc burner, VLC media player, GIMP image editor, and Evince document viewer. Debian is a popular choice for servers, for example as the operating system component of a LAMP stack.
Several flavors of the Linux kernel exist for each port. For example, the i386 port has flavors for IA-32 PCs supporting Physical Address Extension and real-time computing, for older PCs, and for x86-64 PCs. The Linux kernel does not officially contain firmware without sources, although such firmware is available in non-free packages and alternative installation media.
Debian offers CD and DVD images specifically built for XFCE, GNOME, KDE, MATE, Cinnamon, LXDE, and LXQT. MATE is officially supported, while Cinnamon support was added with Debian 8.0 Jessie. Less common window managers such as Enlightenment, Openbox, Fluxbox, IceWM, Window Maker and others are available.
The default desktop environment of version 7.0 Wheezy was temporarily switched to Xfce, because GNOME 3 did not fit on the first CD of the set. The default for the version 8.0 Jessie was changed again to Xfce in November 2013, and back to GNOME in September 2014.
Several parts of Debian are translated into languages other than American English, including package descriptions, configuration messages, documentation and the website. The level of software localization depends on the language, ranging from the highly supported German and French to the barely translated Creek and Samoan. The Debian 10 installer is available in 76 languages.
Multimedia support has been problematic in Debian regarding codecs threatened by possible patent infringements, without sources or under too restrictive licenses. Even though packages with problems related to their distribution could go into the non-free area, software such as libdvdcss is not hosted at Debian.
A notable third party repository exists, formerly named debian-multimedia.org, providing software not present in Debian such as Windows codecs, libdvdcss and the Adobe Flash Player. Even though this repository is maintained by Christian Marillat, a Debian developer, it is not part of the project and is not hosted on a Debian server. The repository provides packages already included in Debian, interfering with the official maintenance. Eventually, project leader Stefano Zacchiroli asked Marillat to either settle an agreement about the packaging or to stop using the "Debian" name. Marillat chose the latter and renamed the repository to deb-multimedia.org. The repository was so popular that the switchover was announced by the official blog of the Debian project.
Debian offers DVD and CD images for installation that can be downloaded using BitTorrent or jigdo. Physical discs can also be bought from retailers. The full sets are made up of several discs (the amd64 port consists of 13 DVDs or 84 CDs), but only the first disc is required for installation, as the installer can retrieve software not contained in the first disc image from online repositories.
Debian offers different network installation methods. A minimal install of Debian is available via the netinst CD, whereby Debian is installed with just a base and later added software can be downloaded from the Internet. Another option is to boot the installer from the network.
The default bootstrap loader is GNU GRUB version 2, though the package name is simply grub, while version 1 was renamed to grub-legacy. This conflicts with (e.g, Fedora), where grub version 2 is named grub2.
Debian releases live install images for CDs, DVDs and USB thumb drives, for IA-32 and x86-64 architectures, and with a choice of desktop environments. These Debian Live images allow users to boot from removable media and run Debian without affecting the contents of their computer. A full install of Debian to the computer's hard drive can be initiated from the live image environment. Personalized images can be built with the live-build tool for discs, USB drives and for network booting purposes. Installation images are hybrid on some architectures and can be used to create a bootable USB drive (Live USB).
Package management operations can be performed with different tools available on Debian, from the lowest level command dpkg to graphical front-ends like Synaptic. The recommended standard for administering packages on a Debian system is the apt toolset.
dpkg provides the low-level infrastructure for package management. The dpkg database contains the list of installed software on the current system. The dpkg command tool does not know about repositories. The command can work with local .deb package files, and information from the dpkg database
An Advanced Packaging Tool (APT) allows administering an installed Debian system to retrieve and resolve package dependencies from repositories. APT share dependency information and cached packages.
- The apt command itself is intended as an end user interface and enables some options better suited for interactive usage by default compared to more specialized APT like apt-get and apt-cache explained below.
- apt-get and apt-cache are command tools of the standard apt package. apt-get installs and removes packages, and apt-cache is used for searching packages and displaying package information.
- Aptitude is a command line tool that also offers a text-based user interface. The program comes with enhancements such as better search on package metadata.
The Debian Free Software Guidelines (DFSG) define the distinctive meaning of the word "free" as in "free and open-source software". Packages that comply with these guidelines, usually under the GNU General Public License, Modified BSD License or Artistic License, are included inside the main area; otherwise, they are included inside the non-free and contrib areas. These last two areas are not distributed within the official installation media, but they can be adopted manually.
Non-free includes packages that do not comply with the DFSG, such as documentation with invariant sections and proprietary software, and legally questionable packages. Contrib includes packages which do comply with the DFSG but fail other requirements. For example, they may depend on packages which are in non-free or requires such for building them.
Richard Stallman and the Free Software Foundation have criticized the Debian project for hosting the non-free repository and because the contrib and non-free areas are easily accessible, an opinion echoed by some in Debian including the former project leader Wichert Akkerman. The internal dissent in the Debian project regarding the non-free section has persisted, but the last time it came to a vote in 2004, the majority decided to keep it.
Three branches of Debian (also called releases, distributions or suites) are regularly maintained:
- Stable is the current release and targets stable and well-tested software needs. Stable is made by freezing Testing for a few months where bugs are fixed and packages with too many bugs are removed; then the resulting system is released as stable. It is updated only if major security or usability fixes are incorporated. This branch has an optional backports service that provides more recent versions of some software. Stable's CDs and DVDs can be found in the Debian website.
- Testing is the preview branch that will eventually become the next major release. The packages included in this branch have had some testing in unstable but they may not be fit for release yet. It contains newer packages than stable but older than unstable. This branch is updated continually until it is frozen. Testing's CDs and DVDs can be found on the Debian website.
- Unstable, always codenamed sid, is the trunk. Packages are accepted without checking the distribution as a whole. This branch is usually run by software developers who participate in a project and need the latest libraries available, and by those who prefer bleeding-edge software. Debian does not provide full Sid installation discs, but rather a minimal ISO that can be used to install over a network connection. Additionally, this branch can be installed through a system upgrade from stable or testing.
Other branches in Debian:
- Oldstable is the prior stable release. It is supported by the Debian Security Team until one year after a new stable is released, and since the release of Debian 6, for another 2 years through the Long Term Support project. Eventually, oldstable is moved to a repository for archived releases. Debian 10 is the current Oldstable release.
- Oldoldstable is the prior oldstable release. It is supported by the Long Term Support community. Eventually, oldoldstable is moved to a repository for archived releases. Debian 9 is the current Oldoldstable release.
- Experimental is a temporary staging area of highly experimental software that is likely to break the system. It is not a full distribution and missing dependencies are commonly found in unstable, where new software without the damage chance is normally uploaded.
The snapshot archive provides older versions of the branches. They may be used to install a specific older version of some software.
Stable and oldstable get minor updates, called point releases; as of August 2021, the stable release is version 11.0, released on August 14, 2021, and the oldstable release is version 10.10
The numbering scheme for the point releases up to Debian 4.0 was to include the letter r (for revision) after the main version number and then the number of the point release; for example, the latest point release of version 4.0 is 4.0r9. This scheme was chosen because a new dotted version would make the old one look obsolete and vendors would have trouble selling their CDs.
From Debian 5.0, the numbering scheme of point releases was changed, conforming to the GNU version numbering standard; the first point release of Debian 5.0 was 5.0.1 instead of 5.0r1. The numbering scheme was once again changed for the first Debian 7 update, which was version 7.1. The r scheme is no longer in use, but point release announcements include a note about not throwing away old CDs.
Debian is one of the most popular Linux distributions, and many other distributions have been created from the Debian codebase. As of 2021, DistroWatch lists 121 active Debian derivatives. The Debian project provides its derivatives with guidelines for best practices and encourages derivatives to merge their work back into Debian.
Debian Pure Blends are subsets of a Debian release configured out-of-the-box for users with particular skills and interests. For example, Debian Jr. is made for children, while Debian Science is for researchers and scientists. The complete Debian distribution includes all available Debian Pure Blends. "Debian Blend" (without "Pure") is a term for a Debian-based distribution that strives to become part of mainstream Debian, and have its extra features included in future releases.
Debian GNU/kFreeBSD is a discontinued Debian flavor. It used the FreeBSD kernel and GNU userland. The majority of software in Debian GNU/kFreeBSD was built from the same sources as Debian, with some kernel packages from FreeBSD. The k in kFreeBSD is an abbreviation for kernel, which refers to the FreeBSD kernel. Before discontinuing the project, Debian maintained i386 and amd64 ports. The last version of Debian kFreeBSD was Debian 8 (Jessie) RC3. Debian GNU/kFreeBSD was created in 2002. It was included in Debian 6.0 (Squeeze) as a technology preview, and in Debian 7.0 (Wheezy) as an official port. Debian GNU/kFreeBSD was discontinued as an officially supported platform as of Debian 8.0. Debian developers cited OSS, pf, jails, NDIS, and ZFS as reasons for being interested in the FreeBSD kernel. It has not been updated since Debian 8. As of July 2019, however, the operating system continues to be maintained unofficially.
Debian GNU/Hurd is a flavor based on the Hurd microkernel, instead of Linux. Debian GNU/Hurd has been in development since 1998, and made a formal release in May 2013, with 78% of the software packaged for Debian GNU/Linux ported to the GNU Hurd. Hurd is not yet an official Debian release, and is maintained and developed as an unofficial port. Debian GNU/Hurd is distributed as an installer CD (running the official Debian installer) or ready-to-run virtual disk image (Live CD, Live USB). The CD uses the IA-32 architecture, making it compatible with IA-32 and x86-64 PCs. The current version of Debian GNU/Hurd is 2021, published in August 2021.
Each version also corresponds to a set of named software repositories (at least one per CPU architecture).
A new stable branch of Debian gets released approximately every 2 years. It will receive official support for about 3 years with update for major security or usability fixes. Point releases will be available every several months as determined by Stable Release Managers (SRM).
Debian also launched its Long Term Support (LTS) project since Debian 6 (Debian Squeeze). For each Debian release, it will receive two years of extra security updates provided by LTS Team after its End Of Life (EOL). However, no point releases will be made. Now each Debian release can receive 5 years of security support in total.
Debian 11 (Bullseye)
Debian 10 (Buster)
Debian 9 (Stretch)
Debian 8 (Jessie)
As of the Stretch release, the official ports are:
- amd64: x86-64 architecture with 64-bit userland and supporting 32-bit software
- arm64: ARMv8-A architecture
- armel: Little-endian ARM architecture (ARMv4T instruction set) on various embedded systems (embedded application binary interface (EABI))
- armhf: ARM hard-float architecture (ARMv7 instruction set) requiring hardware with a floating-point unit
- i386: IA-32 architecture with 32-bit userland, compatible with x86-64 machines
- mips: Big-endian MIPS architecture
- mips64el: Little-endian 64 bit MIPS
- mipsel: Little-endian MIPS
- ppc64el: Little-endian PowerPC architecture supporting POWER7+ and POWER8 CPUs
- s390x: z/Architecture with 64-bit userland, intended to replace s390
Unofficial ports are available as part of the unstable distribution:
- alpha: DEC Alpha architecture
- hppa: HP PA-RISC architecture
- hurd-i386: GNU Hurd kernel on IA-32 architecture
- ia64: Intel Itanium
- kfreebsd-amd64: Kernel of FreeBSD on x86-64 architecture
- kfreebsd-i386: Kernel of FreeBSD on IA-32 architecture
- m68k: Motorola 68k architecture on Amiga, Atari, Macintosh and various embedded VME systems
- powerpc: 32-bit PowerPC
- powerpcspe: PowerPCSPE architecture, incompatible with PowerPC
- ppc64: PowerPC64 architecture supporting 64-bit PowerPC CPUs with VMX
- riscv64: 64-bit RISC-V
- sh4: Hitachi SuperH architecture
- sparc64: Sun SPARC architecture with 64-bit userland
- x32: x32 ABI userland for x86-64
Debian supports a variety of ARM-based NAS devices. The NSLU2 was supported by the installer in Debian 4.0 and 5.0, and Martin Michlmayr is providing installation tarballs since version 6.0. Other supported NAS devices are the Buffalo Kurobox Pro, GLAN Tank, Thecus N2100 and QNAP Turbo Stations.
Devices based on the Kirkwood system on a chip (SoC) are supported too, such as the SheevaPlug plug computer and OpenRD products. There are efforts to run Debian on mobile devices, but this is not a project goal yet since the Debian Linux kernel maintainers would not apply the needed patches. Nevertheless, there are packages for resource-limited systems.
There are efforts to support Debian on wireless access points. Debian is known to run on set-top boxes. Work is ongoing to support the AM335x processor, which is used in electronic point of service solutions. Debian may be customized to run on cash machines.
BeagleBoard, a low-power open-source hardware single-board computer (made by Texas Instruments) has switched to Debian Linux preloaded on its Beaglebone Black board's flash.
Roqos Core, manufactured by Roqos, is a x86-64 based IPS firewall router running Debian Linux.