This article is part of a series dedicated to Debian, a Linux distribution. In it, you will find a thorough guide on how to install Debian on your computer from USB.
- The basics – Gathering your computer specs and Avoiding common pitfalls (YOU ARE HERE)
If you are already familiar with some of these steps, you can skip ahead to the part more suited to your needs. Otherwise, keep on reading!
Gathering your computer specs
With most Linux distros, knowing your computer specs before doing the installation is highly recommended. However, from personal experience, I can say that when it comes to Debian, it is not only recommended but necessary. After all, it is always better to be safe than sorry. If, after your Debian install, your touchpad or WiFi refuses to work, you’ll be glad to have the information gathered below on hand.
The Official Debian Installation manual suggests gathering information on your hard drives (how many, and their order in the system – this can reveal to be extremely important!). I’d add that knowing the name your machine uses to identify USB ports and your WiFi can also be useful.
Knowing your USB ports names and order is valuable if you ever need to access a specific pen drive from the command line (to format or burn it). As for the WiFi, knowing its identifier can get in handy if you ever need to do some peripheral-recognition troubleshooting.
In addition to the usual info generally required for any OS install such as the RAM, hard drive storage space and processor, Debian asks for a little more.
This table found in the official Debian manual gives you the additional specs you might find handy to know.
As you can see, Debian can require a steeper learning curve for new Linux users due to the nature of the knowledge required. The info in itself is not hard to find, but it involves more than what you need for Windows or macOS, where such a gathering process is not necessary.
Here’s the info you require before doing a fresh Debian install
You will find below a written recap of the system specs you will need to gather.
- Processor info (type and model)
- RAM (memory)
- Hard drives
- How many you have
- Their order on the system
- Their type (PATA, SATA, SCSI)
- If you have partitioned your hard drive
- If partitioned, whether or not you have dedicated a partition to another OS and if so, which one
- Network interfaces
- The type of network interfaces you have (ethernet, wireless) and its name
- Video card
- The type and name of the video card(s) you have
You can fetch your system’s hardware info in several ways. If you don’t have your computer’s manual readily available (who does so nowadays?!), first take a look at the “system info” or “about this computer.” However, looking at your OS overview page will not be enough! You will also have to use the command line or, at the very least, look at the system hardware tool provided by your OS.
Indeed, there exist different methods of identifying your specific hardware components, such as the use of the command line, of native OS tools, and, if you cannot access your OS, through the UEFI. The methodology will vary depending on your current operating system.
Elaborating on the command-line or GUI software procedures for Windows, macOS, and Linux would be too lengthy for this article. As such, I will refer you to this ITgirl.tech hardware-identifier guide if you use Windows, to this one if you own a macOS computer, and to that one if your system runs Linux.
As a final note, two things, in particular, can end up needing some troubleshooting on Debian stable: the video (graphics) card, and the network interface. As the official Debian Buster release is open-source, it does not recognize some models of graphics card or network interfaces due to their proprietary drivers. If that is the case with your hardware, having your system specs on hand makes finding a solution faster and easier. It might also mean that you will have to opt for an unofficial download file when you install Debian, but more on that later.
Now that you have gathered the necessary hardware specs, let’s take a look at the common pitfalls you might encounter when you install Debian.
Avoiding Common Pitfalls
Usually, when you install Debian, you will have little to no troubleshooting to do – especially if you opt for the “nonfree” version (but more on that later). However, if you prefer to err on the side of caution, I’d suggest first trying out Debian on a widely known computer model that has been on the market for a while.
Indeed, the more popular the computer model, and the longer it has been on the market, the higher the opportunity for users to have tried and tested Debian on it. In turn, this means that the devs have a higher chance of having been aware of any potential issues and had time to find a solution for it. Therefore, more information will be readily available online as to possible workarounds if you ever come across problems.
If your computer is a relatively obscure B market model, it is often more challenging to find information on how to resolve issues. For instance, I had a hard time finding info regarding problems I had when I did a Debian install on a South American Acer Nitro V model. Furthermore, there is a possibility of having hardware components which are a priori incompatible with Debian Buster (the stable release).
On the other hand, if your computer contains brand new technology, you might encounter similar issues while you install Debian stable. Because the stable version of this Linux distro is older than the unstable version, the hardware packages contained within the OS might not recognize the newer technology.
Indeed, to be stable, a version needs to have been tested time and time again for any potential bug and issues, thus making it more “bug-proof.” However, its technology will inherently be older as such a level of stability takes time to be implemented.
Know which release to choose before you install Debian
If your computer falls under one of the two situations mentioned above, then I’d recommend using Debian Bullseye, the “unstable” version. Even though named as such, the unstable version of Debian is still highly stable. However, its use is more recommended to experienced users. Indeed, its use inherently comes with the possibility of having to know how to troubleshoot issues and fix bugs through the Terminal. For more information regarding the different Debian releases, I suggest taking a look at this ITgirl.tech article dedicated to this subject.
One word of advice: whatever version you end up sticking to, beware of the Frankendebian.
Frankendebian is a portmanteau of the word “Frankenstein” and “Debian” and refers to a Debian version (often stable) to which the user has added way too many packages. More often than not, people do this when trying to patch up major incompatibility issues, or when they use too many programs requiring the addition of backports. You can find more on this subject, including what are backports and how to use them, by reading this ITgirl.tech post.
The dangers of doing mix-and-match with different Debian releases
While your computer might work perfectly fine at first, you will save yourself a lot of potential headaches by mostly or exclusively fetching the packages of a single Debian release. If you decide to add packages from another version, please do so by adding the appropriate backports. Try also to limit yourself to specific packages linked to applications you want to install. Playing with the kernel version, kernel headers, and other such core Debian components by fetching different versions can quickly become a nightmare.
If you don’t add backports and instead opt to install applications manually, you will have to upgrade every one of these “outsider” packages individually. Additionally, you will have to check for package dependencies and update them yourself. Trust me; you do not want to do that.
Backports in themselves are not a bad thing. However, they are not as extensively tested and, more importantly, can lead to incompatibility issues with the other packages found in Debian stable. That can lead to three adverse outcomes:
- A testing package that was initially compatible with your stable packages can become incompatible once you update your OS components. That can result in a domino effect where other packages relying on the now-incompatible packages will cease to work correctly. You then need to find a solution for each package incompatibility and manually fix the issue, which can be daunting. Furthermore, if the fix involves manually adding specific package components, you would then need to update each one of them manually.
- Often as a consequence of the consequence mentioned above, the computer stops working (i.e., you broke your Frankendebian).
- Having packages of different Debian releases can lead to the impossibility of smoothly upgrading your OS to the next version of your Debian release. You can spend hours trying to salvage and upgrade a Frankendebian, but the truth is that it will always be simpler to do a fresh install.