Test Your Storage Drive’s Read Speed

One of the most frequent things you’ll do is read data from disk, so why not test your storage drive’s read speed? In this article, we’ll use an application we’ve used before. This shouldn’t be a very complicated article.

We store data on drives, or disks if you prefer. Most of us don’t use disks as our main storage devices. We do use disks for backups or storing large amounts of data, but we largely use SSDs these days. Some of us even use NVMe M.2 SSDs to store our data. The latter is currently the quickest you’re likely to encounter as a consumer.

The old spinning platters we used (though we’ve used lots of forms of magnetic storage) are typically referred to as HDDs (Hard Disk Drives). The SSDs (Solid State Drives) have no moving parts and are much faster. The NVMe M.2 SSDs are faster still.

If you’re suffering from some bottleneck, you might want to diagnose that. You might just be curious. It is also possible that you just purchased new hardware and want to see if the storage device reaches the advertised speed.

The tool we’ll be using is hdparm. This works fine with USB thumb drives, HDDs, regular SSDs, and even NVMe SSDs. It’s a complex application with a lot of options. I’ve covered some features before.

How To: Show Your Hard Drive Specifications In The Terminal

So then, let’s learn about this hdparm…


It should be noted that this hdparm application should be installed by default. It should also be mentioned that hdparm is a terminal-based application. You can verify that hdparm is installed with the following command:

If you then check the man page (with man hdparm) you’ll see that hdparm is described quite nicely like this:

hdparm – get/set SATA/IDE device parameters

If hdparm is not installed, you can surely find it in your package manager. 

As you can see, hdparm is the right tool for the job assuming you want to test your storage drive’s read speed. It’s also the right tool for a bunch of other jobs, but we’ll just be covering the read speed today.

Test Your Storage Drive’s Read Speed:

As I mentioned above, this hdparm application is something you use in your terminal. I suspect my regular readers will have guessed that. If you’re new to the terminal, more often than not you can open your default terminal by pressing CTRL + ALT + T.

With your terminal open, let’s identify your storage drives with this command:

You’re interested in the bits that start with /dev/<drive_ID> as those are the drives you’ll be able to test. 

NOTE: You should run these tests several times and average them, and you should do so while the system is otherwise idle. That will give you the peak results.

We’re interested in two flags, as they represent two tests. The -t flag tests the read cached. The -T flag tests the drive’s buffered read timings. You’ll often find the first test is fairly similar throughout the different drives and that the cached test shows the most differences. If those two terms, cached and buffered, confuse you, here’s a link about the differences between cache and buffer as far as the hdparm application goes.

You’ll need elevated permissions for this, so the command looks like this:

Or, as an example for many of you, the command might look like this:

That command will test both the cached read speed and the buffered read speed. These tests are important because you’re using a smart operating system that puts things into the cache and buffer that are likely to be read from the drive. So, the command listed will test both. You can split them up of course.

I decided to get you some examples:

Some Quick Read Speed Tests:

This is the internal SSD on a desktop:

Next is a USB 2.0 device plugged into that desktop:

Then we have an external HDD plugged into a USB 2.0 port on that desktop:

For comparison, this is an NVMe M.2 SSD:

As you can see, the internal SSD is quite fast. The thumb drive is the next quickest. This is followed by the external drive that’s just a spinning platter drive. 

Then, of course, you can see that the NVMe M.2 SSD is so much faster. That’s not even the fastest SSD out there. There are faster NVMe M.2 SSDs that don’t cost a lot of money. The prices have come down these days. You can even get a PCIe card that lets you mount an NVMe M.2 SSD if your motherboard doesn’t already support it.


Should you want to get some drive benchmarks, you can certainly use hdparm to test your storage drive’s read speed. This isn’t something complicated and most anyone can figure it out. All you need to do is follow the directions carefully and in order. I do try to explain things as I go along.

There’s a lot more to the hdparm application. I encourage you to check the man page. There are probably another half-dozen articles that can be written about hdparm, so you’ll likely see this application again in the future. I doubt I’ll do another one too soon, as I like to space things out and not get too repetitive. 

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Linux Tips: A Comprehensive Guide for Optimizing Your System

Welcome to Linux Tips, your ultimate resource for unlocking the full potential of your Linux system. Whether you are a seasoned Linux user or a beginner exploring the world of open-source operating systems, this comprehensive guide will provide you with valuable insights and tips to optimize your Linux experience. From boosting performance to enhancing security, we’ve got you covered. Let’s dive in!

Just for fun, this article was written by an AI with the prompt being:

“Write an article for Linux-Tips.us that is optimized for Google’s search engine results.”

Enhance Performance:

Optimize Startup: Speed up your system boot time by disabling unnecessary services and applications that launch at startup. Use tools like systemd-analyze to identify bottlenecks and systemd commands to manage services effectively.

Monitor System Resources: Keep track of your system’s resource usage with tools like htop and top. Identify resource-intensive processes and consider optimizing or terminating them to free up valuable resources.

Utilize Swap Space: Configure and optimize your swap space to prevent system slowdowns. Tune the swappiness parameter to strike a balance between using RAM and swap effectively.

Improve Security:

Keep Software Up to Date: Regularly update your Linux distribution, applications, and packages to ensure you have the latest security patches and bug fixes. Utilize package managers like apt or dnf to simplify the update process.

Enable the Firewall: Activate the built-in firewall (e.g., iptables or nftables) to safeguard your system against unauthorized access. Configure firewall rules to allow only necessary incoming and outgoing connections.

Utilize SSH Key Authentication: Strengthen the security of your SSH connections by using key-based authentication instead of passwords. Generate SSH keys and disable password-based authentication to prevent brute-force attacks.

Boost Productivity:

Master the Command Line: Linux’s command-line interface is a powerful tool for executing tasks efficiently. Familiarize yourself with essential commands like ls, cd, grep, and find to navigate the file system, search for files, and perform various operations.

Utilize Shell Scripting: Automate repetitive tasks by writing shell scripts. Bash, the default Linux shell, allows you to create powerful scripts to streamline your workflow and save time.

Take Advantage of Package Managers: Leverage package managers like apt, dnf, or yum to install, update, and remove software effortlessly. Explore repositories and learn package management commands to manage your software ecosystem effectively.

Customize Your Environment:

Choose the Right Desktop Environment: Linux offers a variety of desktop environments, each with its own look and feel. Experiment with different options like GNOME, KDE, or Xfce to find the one that suits your preferences and maximizes your productivity.

Tweak Your Window Manager: Customize your window manager settings to enhance your workflow. Configure keyboard shortcuts, window behavior, and appearance options to create a personalized Linux experience.

Explore Themes and Icons: Customize the visual aesthetics of your Linux system by applying themes and icon packs. Tools like GNOME Tweaks or KDE System Settings allow you to easily switch between different themes and icons.


By implementing the Linux tips outlined in this comprehensive guide, you can optimize your system’s performance, enhance security, and boost productivity. Remember to keep your system up to date, monitor resource usage, and leverage the power of the command line. With Linux’s flexibility and customization options, you can create an environment that truly suits your needs. Embrace the open-source philosophy and unlock the full potential of your Linux-based machine today!

The Real Closure:

So, I just wanted to share this with you. We worry about AI, but do you think this is an appropriate article for this site? Better still, do you think this is optimized for Google? It’s none of those things. You can tell by the wording that it wasn’t written by a human. Even better, you can tell right away that it wasn’t written by me.

But, let’s see how well this article does in Google’s search results. I’ll report the results (if they’re worth reporting) and I suspect this article won’t rank all that well – if at all. I doubt it shows up in the top ten results for any keywords. If it does, I’ll let you know. I pay attention to that sort of stuff.

Of course, you could say that it’s contaminated by the actual real closure, but the whole article is failing the formula I’ve been using since my earliest articles. It is what it is and I’ll say that it’s ‘close enough for government work’ and we’ll see how well it ends up doing in Google’s search results. It barely qualifies as an article for this site. My articles are very different – and, well, I’d say they’re much better.

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Check Disk Speed In The Terminal

In today’s article, we’re going to learn how to check the disk speed in the terminal. When I say ‘disk’ I also mean drives, like SSDs. I could use ‘storage drive’, or perhaps just ‘drive’, but the word ‘disk’ is what I’m going with. So, if you have any questions about other devices – the answer is that it should work just fine if you want to speed test them. 

I should point out that we’ll only be checking disk read speeds. We won’t do any write tests today. We’re just going to see how fast we can read data from the disks we have installed.

There’s a number of ways to check the speed of your disks. You can do so with tools like Gnome Disks or HardInfo, for example. If you’d rather, you can do a full-blown benchmark of your Linux system with GeekBench. This article will explain how to check disk speed in the terminal, because why not? The GUI tools may provide more data, but you don’t always need more data.

The tool we’ll be using for this ‘hdparm’ and it’s available for any major distro out there. In fact, it may be installed by default. So, if you want to get a head start, check to see if you have it installed. If not, go ahead and install it – just like you’d install any other software.

Anyhow, the tool describes itself as:

hdparm – get/set hard disk parameters

Which sums it up nicely. If you check the man page with man hdparm, you’ll see it’s actually pretty complicated. Fortunately, we’ll just be using it to check the disk speed. It can be used to do all sorts of stuff, as you can see from the man page. Perhaps we’ll cover some of that in a future article?

Anyhow, there’s not a whole lot that goes into this. So, let’s jump right in.

Check The Disk Speed In The Terminal:

This article requires an open terminal, like many other articles on this site. If you don’t know how to open the terminal, you can do so with your keyboard – just press CTRL + ALT + T and your default terminal should open.

With the terminal open, you should first identify the disk you’re looking to test. You can list all your attached drives with:

Once you identify the drive you’re looking to check, you’ll almost certainly want to add a /dev/ in front of it – because that’s really where it’s mounted. So, if the disk you want to check is sda1, you’d use /dev/sda1. Even if it says something like /media/<user>/<drive_name>, you’ll still be using /dev/<disk>.

Now, to check the disk speed, you’ll use the following:

That gives you a good example result, including things like buffer and cache. If you want, you can actually check the direct disk speed as well. That just requires the --direct flag. It looks like this:

That’ll give you some results as though you were reading directly from the disk without a buffer involved. It’s an option to check, should you want to. But, you can get a good look at what your disk reads are going to be.


That’s actually all there is to it. ‘Snot very difficult. Sure, hdparm is this big complicated application – but you can still use it to check the disk speed in the terminal. You don’t actually have to master all the options of these complicated applications in order to use them. You can still use them, learning more and more options as you use their features as needed.

Thanks for reading! If you want to help, or if the site has helped you, you can donate, register to help, write an article, or buy inexpensive hosting to start your own site. If you scroll down, you can sign up for the newsletter, vote for the article, and comment.

Subscribe To Our Newsletter
Get notified when new articles are published! It's free and I won't send you any spam.
Linux Tips
Creative Commons License
This work is licensed under a Creative Commons Attribution 4.0 International License.