How To: (More or Less) Learn if Your Hardware Will Work With Linux

One of the most frequently asked questions from new people is them wondering if their hardware will work with Linux. This article will help you find out if your hardware will work with Linux.

That’s right, this article aims to tackle a frequently asked question – but there’s some limitations and wiggle-room. That’s why the title of the article contains (More or Less). It’s not 100% accurate.

The usual, and most basic way to find out if your hardware will work with Linux is to simply download the .iso you intend to use, boot to it, and test it. If it works in a live environment, it probably will work when you install it. If you needed to add additional boot parameters (like nomodeset) to run the live instance, you’re probably going to need to do the same thing when you install Linux.

That works well enough, but it doesn’t tell you anything about long-term problems. It doesn’t tell you if there’s going to be an IRQ issue many hours after booting, it doesn’t tell you if there will be some obscure ACPI errors, and it doesn’t tell you exactly how well your hardware will work with Linux.

You can do better than that. With a little effort, you can learn all about your hardware and how well your hardware will work with Linux. It’s pretty painless and easy.

Learn If Your Hardware Work With Linux:

So, the first thing you need to do is download the .iso and write it to USB or to DVD. You can also do this after the fact, with an already-installed Linux. This article assumes you’ve got a running Linux and you’re connected to the Internet. 

It also assumes that you have a terminal window open. If you don’t have one open, you can probably open one by using your keyboard. Just press CTRL + ALT + T and up should open your default terminal emulator. Yes, this should work just fine even in a live environment.

The tool we want for this is ‘hw-probe’, put out by the good people behind linux-hardware.org. It is almost certainly in your default repositories and can be installed in the usual manner. For example, if you’re using a distro with apt, then it’d be installed with:

You’ll have to adjust the installation command for the distro you’re using. You may also need to use a root password, which will vary based on the distro.

You can also find it in Snap, AppImage, and Flatpak versions here.

Once you have it installed, you will want to run the following command (and know that you will be sharing this data with the linux-hardware.org project):

That will take a little while to run, but not terribly long. It will output some text similar to this:

The important bit is the “Probe URL”. For this particular run, you’ll see the URL is: https://linux-hardware.org/?probe=23182c745b

If you follow my example URL, you’ll see that everything more or less works – but that some of the hardware has some known problems. You can click through those to learn about what sort of problems you’ll have getting your hardware to work with Linux.

NOTE: Just because there are known problems doesn’t mean that the hardware doesn’t work. You need to click through and read the results to learn what sort of problems you’re potentially going to face. In some cases, the problems only exist with certain kernels (for example) and are resolved with newer kernels. Again, you’ll need to read through and verify the data. The data is pretty accurate, but the human element means it is not infallible. 

As you can now surmise, this isn’t 100% accurate. Quite often, there will be known problems but your hardware will work with Linux just fine – but maybe not at peak functionality due to an inferior driver. Be on the lookout for things like that.

What it does do is it gives you some more fine-grained information so that you can make a more informed decisions. It’s a guide, not a rule-book. At the end of the day, if Linux is up and working on your live instance, it’s probably going to work just fine when it has been installed.

Closure:

And there you have it. Another article in the books. This one helps you find out if your hardware works with Linux. If you have any ideas for articles, be sure to let me know. Don’t forget to share this article with your friends!

If you want, you can unblock ads, donate, sign up to contribute, write an article, or sign up for the newsletter below. (I should move that to the top. I’ll do that when I’ve given it enough time to see if folks respond.) Thanks for reading and there will be another article in a couple of days!

Smash a button!
[Total: 4 Average: 4.5]

How To: Generate a List of Installed Applications in Linux

Before making this site, I had a similar article that explained how to list installed applications in Linux, but it was only relevant to those that used distros with ‘dpkg’. This expanded article will explain how to generate a list of installed applications for multiple distros, in order to be more complete.

There are any number of reasons why you might want a list like this. Maybe it’s for compliance reasons, needing to know everything installed on the machine. Maybe it’s for making a manifest to establish a baseline for future installs. You could also just be curious, need a list for support questions, or want a list for backup purposes.

Whatever your reason, you can generate a list of installed applications fairly easily. You can also do a couple of other neat things that I’ll explain below.

Generate a List of Installed Applications:

For all of these commands, you’ll want a terminal. You can probably open your default terminal by using your keyboard to press CTRL + ALT + T. If that doesn’t work, you can just open it from a menu or whatever shortcut you’ve set up for yourself. (I’m looking at you, you people with strange window managers!)

The command you’ll use will vary depending on your distro. I’ve got a few of them covered below. In some cases, you may need elevated permissions, so a ‘sudo’ in the front of the commands should do the trick for you.

Debian (& dpkg using distros):

If you’re using Ubuntu, or a distro with snaps, you can list those with:

If you’re using flatpak applications with any distro:

Arch (& Mandriva, etc.):

RHEL (& Fedora, etc.):

OpenSUSE (& derivatives):

Those are the major distros. There are smaller distros, independent distros, and they’ll have their own package management systems and ways to make a list of installed applications.

Bonus:

You can actually do a few things with this listing. Two immediately come to mind and I’ll share them.

First, you can count them. At the end of each of these commands, you can pipe it and count the lines. It may not be a 100% accurate number, but it will be pretty close. (Some of the commands output more than just a list of installed applications.)

That’ll give you an output similar to:

You can also write the list of installed applications to a text file, to save for archiving or whatever. I like to make a list now and then and check against it when I do a new installation. Your reasons are your own, but here’s how:

The .txt isn’t mandatory and you can write the file to anywhere you want, assuming you have the correct permissions. It’s your list, you can do anything you want with it!

Closure:

And, there you have it. You can now make a list of all applications that you’ve installed. You can even count the list, and you can write the list to a file for storage. If you want, you can generate a list of installed applications on one computer, generate a list of all applications on a second computer, and then use ‘diff’ to see what the differences between them are. There’s all sorts of things you can do with this list.

As always, thanks for reading. Your reading and feedback help me stay motivated. My goal is to keep up this publication rate for a year, though we’ll see where we are when that year ends. I have enough notes for that, and more. 

If you’d like to contribute, you can unblock ads, you can sign up for the newsletter, you can write an article, you can donate, and you can register for the site to regularly contribute. You can also comment, vote for articles you do like, and share this site/page with others via social media! You can even buy inexpensive Linux hosting! Alternatively, you can even just enjoy the articles. It’s all good!

Smash a button!
[Total: 1 Average: 5]

When Did I Install Linux? (Expanded Edition!)

In the other site’s version of this article, I only had information for Ubuntu. This time, I’ll expand it to cover the major distros. It seems like a good a time as any to fix this. (I’d link to the original article, but that page will now direct here.)

I’m not sure why you’d want to know when you installed Linux. I suspect that reason mostly curiosity that people ask, “When did I install Linux?” The question pops up with some regularity.

It’s really not vital information, and as such, it’s not a generic command that you can run to retrieve the information. There isn’t a whole lot I can do with the answer, except maybe jar a few memories loose. “Oh, yeah… That’s when I installed, so I must have bought the computer around that time!”

Really, this isn’t all that important. Still, it’s a fairly often asked question. If you have found a real use for this information, please feel free to leave a comment and to let us know why you need this information.

Let’s get on with it, shall we!

When Did I Install Linux?

Like many exercises, this one starts with opening up your default terminal. You can use your keyboard, by just pressing CTRL + ALT + TOnce you have the terminal open, you can use the following commands to see when you installed Linux.

Ubuntu/Debian/Derivatives:

If that doesn’t work, you can also use:

NOTE: Change /sda1 to the disk where you installed Linux.

Fedora/RedHat/Derivatives:

Arch/Manjaro/Derivatives:

And, there you have it. You now know how to check to see when you installed Linux. If you use some obscure distro (or have other ways to get this information) please feel free to leave a comment.

This article was revamped due to a comment from Wiz at Linux.org. They mentioned that they’d used the previous article and that they wanted the information for other distros. So, that feedback does work – even if it may take months to happen. Seriously, leave feedback and I’ll do what I can.

Finally, and as always, thanks for reading. You may have not noticed, but the site is now running ads from Google. It’d be great if you whitelisted this domain, but it’s okay if you don’t. Don’t forget the newsletter, that you can donate, contribute an article, and that you can share this article with your friends. 

Smash a button!
[Total: 2 Average: 5]

How do I ‘Boot to USB’? (Or CD/DVD, if Such is Available)

In order to install Linux, you need to be able to boot to USB (or CD/DVD – with USB being more common these days and many devices not even having CD/DVD drives). The goal of this article is to help you boot to USB or to optical media, so that you can install or repair your Linux system.

To install Linux you pretty much have to boot to USB or to a CD or DVD. It’s true, you can actually install directly from your regular disk drive, but that’s a convoluted method that few people will ever need. I may cover that method at some point, but today is not that day!

You may also need to boot to a live Linux instance for other reasons. Maybe you need to repair your installation? Perhaps you need to grow your partition because you have run out of room? Or, just maybe, you need to recover your data so that you can do a fresh installation – or so that you can start the recovery from your backed up data?

It’d be rather pointless to enumerate the many reasons why you’d want to boot to USB. There are many reasons and it’s a skill you’re going to need. Trust me, you need to know this stuff.

I say USB because that’s the most common today, but you may also need to boot to CD or DVD. Your hardware may actually be so old that it won’t even let you boot to USB. So, for the sake of this article, let’s just assume you’re booting to some form of external media, be it USB, optical media, or even an SD card. No matter what you’re trying to boot as an alternative media, the process is pretty much the same.

Booting to USB

Booting to USB, what’s the purpose? The purpose is to install or repair an already running system. It means booting to something other than your default internal drive (under normal configurations) and using that booted media to effect change on your system.

As I said above, there are many reasons why you’d want to do this. It’s a pretty common thing, especially among Linux users. There are many questions asked about this process and I’ve decided to document the methods here.

However, there’s no way I can possibly make this article truly definitive. In fact, I’d appreciate it if you’d help. In the comments section, fill in the blanks for me. You have hardware that I may not have access to, so you can tell us what works for your hardware and the article will be a more complete source of information. It’s your time to shine!

How to Boot to USB

In order to boot to USB, you have to have fairly good timing – or a willingness to sit there and pound on the same key over and over again. In a traditional sense, you’re aiming for a boot selection menu that you can access after POST (Power On Self-Test) and that split-second before the OS starts its boot sequence.

You’re not trying to access the BIOS, you’re trying to access the boot selection menu and there’s a narrow window to get it right. The good news is that the key to access the BIOS is different than the key to access the alternative boot menu. So, a good working strategy is to press the right key on your keyboard over and over again during boot while hoping for the best.

The question is, which is the right key? You don’t want the BIOS menu, unless you plan on changing it permanently. You only want the temporary boot menu, which another animal entirely.

So, I have a bunch of hardware. I also have a search engine. I’ve made an attempt to find the temporary boot menu keys and to document them all in one place.

The list of keys!

     Acer: ESC, F2, or F12
     Apple/Mac: OPTION
     Asus: F8 or ESC
     Compaq: ESC or F9
     Dell: F12
     HP: ESC or F9
     Lenovo: F8, F10, or F12
     MSI: F11
     NEC: F5
     Packard Bell: F8
     Samsung: ESC, F2, or F12
     Sony: F1, F2, or F3
     Toshiba: F12

NOTE: This list isn’t exhaustive nor is it completely accurate. In some cases, you may need to actually enable this in your BIOS. Samsung, for example, will not show the temporary boot selection menu unless you’ve first disabled “Fast Boot”. Other OEMs may require similar changes.

The above keys should get you into the temporary boot menu, where you can choose to boot to USB, CD/DVD, an external drive, a microSD card, or whatever. It’s an essential step in both booting and repairing your Linux computer. It’s a good idea to memorize it once you know which one works for you.

As I mentioned above, you can help. If you have a device that’s not listed, please let me know in the comments. Some manufacturers have more than one way to access the screen, so be sure to let me know if your device is different. The more data we get, the more people we can help.

Thanks for reading! As always, feedback is fantastic, you can sign up for the newsletter, and you can donate. You don’t have to donate. The site will remain online regardless, but you can help cover the costs. If I keep this schedule up, we should have a new article in two more days – so stay tuned!

Smash a button!
[Total: 1 Average: 4]