How to Boot Raspberry Pi 5 from NVMe SSD (2024)

How to Boot Raspberry Pi 5 from NVMe SSD (1)

Looking to give your Raspberry Pi an SSD boost? The good news is that it is a lot easier to boot from NVMe SSD with Raspberry Pi 5.

Raspberry Pi OS has built-in tool that allow you to easily copy existing OS from the SD card on the SSD.

This way, you switch the existing operating system on to the SSD without changing anything. You have the same applications, same configuration, same everything.

In this tutorial, I'll share the steps I used to switch from SD card and boot from a NVMe SSD on my Raspberry Pi 5.

📋

Screenshots in this tutorial are a bit poor as I recorded the entire procedure and then took screenshots from the video recording. Perhaps when I repeat this process again, I can take better quality screenshots. For now, please ignore this minor inconvenience.

What do you need?

Here are the accessories that you are going to need to follow this tutorial with your Raspberry Pi 5.

  • The tutorial uses Raspberry Pi as a desktop, so you'll need the usual accessories like keyboard, mouse, monitor etc.
  • You should have Raspberry Pi OS installed on a micro SD card.
  • Raspberry Pi 5 doesn't have a built-in NVMe SSD slot. You need an external plugin or device that gives you access to NVMe. I am using the Pironman 5 case which comes with NVMe slot among many other stuff. You can use this or a HAT with NVMe support.

How to Boot Raspberry Pi 5 from NVMe SSD (2)

Pironman 5 Case With Tower Cooler and Fan

This dope Raspberry Pi 5 case has a tower cooler and dual RGB fans to keep the device cool. It also extends your Pi 5 with M.2 SSD slot and 2 standard HDMI ports.

Explore Pironman 5

The official Raspberry Pi M.2 HAT will be the cheaper option here.

Raspberry Pi M.2 HAT+ (for Raspberry Pi 5)RaspberryPiM.2HAT+isanofficialM.2connectoraccessoryfortheRaspberryPi5,supports the connection of M.2-format PCIe and NVMe devices to the PCIe FPC connector on Raspberry Pi 5.

🚧

Not all the NVMe SSDs will be compatible with M.2 HAT or case you are using. Please explore what brand and make of SSD is supported by the HAT/case before buying them.

Step 1: Format your SSD

First thing, plug in your SSD to the NVMe HAT and power on the Raspberry Pi.

Please ensure that Raspberry Pi can see the plugged-in SSD. Check it with the following command:

lsblk -f
How to Boot Raspberry Pi 5 from NVMe SSD (5)

As you can see, although my SSD is recognized, there are no details about it. That's because I have a brand new SSD and it didn't have any partitions on it.

If you are in the same situation, install Gparted first:

sudo apt install gparted

And then use it to create a new partition on the SSD.

Run Gparted. Make sure you have chosen the correct disk from the top right corner.

How to Boot Raspberry Pi 5 from NVMe SSD (6)

You can go with MSDOS when you see a screen like this:

How to Boot Raspberry Pi 5 from NVMe SSD (7)

Next, click on the + sign on the top left to create a new partition and create a single partition of the entire disk size. You can choose Ext4 filesystem although it should not matter as your SSD will be formatted again during SD card copying. Click Apply and then press on the ✔️ to confirm the changes.

How to Boot Raspberry Pi 5 from NVMe SSD (8)

You can verify the partitions by running the lsblk -f command again.

Step 2: Copy the SD Card to SSD

Raspberry Pi has a built-in tool for copying the content of the SD card to the USB/SSD.

This makes things much more convenient as it will just duplicate the SD Card onto the SSD. This means that your current configurations, applications, everything will remain the same even when you are booting from the SSD. Now that's super, isn't it?

Open up the menu and go to Accessories->SD Card Copier.

How to Boot Raspberry Pi 5 from NVMe SSD (9)

I found the SD Card Copy tool buggy. It was not showing the option to start the copying for almost a minute.

In the Copy From Device, choose SD Card and in the Copy To Device, choose the SSD.

How to Boot Raspberry Pi 5 from NVMe SSD (10)

Click start and wait for the process to finish. It will take some to finish copying the data on the SSD.

Once the data is copied on the SSD, move on to the last stage of this process and that is to change the boot order.

Step 3: Change the boot order

In the terminal, run the following command:

sudo raspi-config

You'll see a terminal user interface like the image below and you have to use the arrow keys to select Advanced Options here and press the enter key.

How to Boot Raspberry Pi 5 from NVMe SSD (11)

In the next screen, select Boot Order.

How to Boot Raspberry Pi 5 from NVMe SSD (12)

You'll see a few options here. Choose the middle one that says 'NVMe/USB Boot' and press enter key.

How to Boot Raspberry Pi 5 from NVMe SSD (13)

You'll see some output in the terminal and then the following screen notifying you that your boot order has been changed.

How to Boot Raspberry Pi 5 from NVMe SSD (14)

When you press enter key on the last step, it will ask you to reboot your system. You can do that or continue your work.

Step 4: Booting from the NVMe SSD

If you reboot in your Pi 5, you'll be booting from the SSD and your SD Card will be mounted as an external disk with two partitions on it.

Still, if you want to ensure that it is actually booting from the SSD and not from the SD card, power off the Pi and take out the Micro SD Card. Turn on the Pi again and see if it boots as before.

Conclusion

Does SSD provide a performance benefit over SD Card? I don't know. I didn't do any benchmarking. I didn't notice faster boot time. Perhaps if there are any programs that do a lot of read and write on the disk could benefit from the SSD.

I think there is another way to boot the Pi from SSD. If the SSD can be connected to the regular computer (there are UBS-based connectors) and then burn the Raspberry Pi OS image directly on the SSD. Not sure if the boot order needs to be changed or not. I'll try this method some other day and share my experience.

For now, enjoy the fact that you can easily switch to SSD from SD Card on your Raspberry Pi 5 device.

Please let me know if you have questions or suggestions on this topic.

About the author

Abhishek Prakash

Created It's FOSS 11 years ago to share my Linux adventures. Have a Master's degree in Engineering and years of IT industry experience. Huge fan of Agatha Christie detective mysteries 🕵️‍♂️

How to Boot Raspberry Pi 5 from NVMe SSD (2024)

FAQs

How to Boot Raspberry Pi 5 from NVMe SSD? ›

Flash the SSD with Raspberry Pi Imager

How to boot OS from NVMe SSD? ›

To do so, follow the steps below:
  1. Restart your computer and enter the BIOS by holding the F2, F10, or Delete keys. ...
  2. Now, navigate to the boot order settings in the BIOS panel.
  3. Set your NVMe SSD as the primary boot device and click "Save" to save the changes.
  4. Finally, exit the BIOS screen and reboot your PC.
Apr 22, 2024

How to use NVMe with Raspberry Pi? ›

This is done by using the Raspberry Pi Imager.
  1. On the Raspberry pi 5, open the Raspberry Pi Imager.
  2. Click the Choose Device button.
  3. Select the Raspberry Pi 5 option.
  4. Select the Raspberry Pi OS 64bit option.
  5. Click the Choose Storage button.
  6. Choose the NVMe drive.
  7. Click the Next button.
Jan 13, 2024

How do I boot my Raspberry Pi from SSD? ›

HOW TO: Boot Raspberry Pi 4 from USB SSD Drive
  1. Check current running version of bootloader EEPROM image. vcgencmd bootloader_version. ...
  2. Upgrade to the latest "stable" EEPROM version. ...
  3. Apply the update and reboot. ...
  4. Check BOOT ORDER configuration. ...
  5. Copy SD Card image to USB drive. ...
  6. Shutdown, Remove SD Card and reboot.

How to enable PCIe on Raspberry Pi 5? ›

Enabling PCIe
  1. To enable it you should open the /boot/firmware/config. txt file. sudo nano /boot/firmware/config.txt.
  2. Then add the following line to the file. # Enable the PCIe External connector. ...
  3. A more memorable alias for pciex1 exists, so you can alternatively add dtparam=nvme to the /boot/firmware/config. txt file.

Can Raspberry Pi 5 boot from NVMe? ›

Flash the SSD with Raspberry Pi Imager

Then pull the NVMe drive, attach it to your Pi 5, and it should boot off it (with or without a microSD card inserted)—assuming you have the bootloader up to date and set the BOOT_ORDER appropriately!

Is UEFI required for NVMe? ›

Booting from an NVMe PCIe SSD is only supported on systems that support UEFI. UEFI is a system firmware that endeavors to improve upon legacy BIOS and standardize system processes, such as booting, loading drivers, and more. It is important that the operating system installer is booted in UEFI mode.

Does Raspberry Pi run faster with SSD? ›

If you attach an external SSD to your Raspberry Pi 4 B, you will get significantly faster app opens and file transfers. One of the most important improvements in the Pi 4 is its USB 3.0 interface.

How do I boot from Raspberry Pi hard drive? ›

Here's how to set it up.
  1. Plug your drive into one of the Blue USB ports. ...
  2. Start up your RPI, if it's not already running.
  3. From the RPI desktop, click the start button, Accessories, SD Card Copier.
  4. The From Device will be your SD card (probably /dev/mmcblk0)
  5. The To Device will be your new drive (probably /dev/sda)
Apr 16, 2020

Can I connect SSD to Raspberry Pi? ›

You can just plug your SSD into your computer and install it with the Pi OS Imager like you would a micro SD card. For those of us who don't have one, we will have to follow another process, it's not difficult, it just has more steps. We will need to install Pi OS onto a micro SD card.

How do I enable boot from PCIe? ›

From the System Utilities screen, select System Configuration > BIOS/Platform Configuration (RBSU) > Network Options > Network Boot Options > PCIe Slot Network Boot. Select a PCIe slot entry. Select a setting. Enabled—Enables UEFI network boot for NIC cards in PCIe slots.

What is the m2 on Raspberry Pi 5? ›

Raspberry Pi M. 2 HAT+ for Pi 5 allows users to connect M. 2-format PCIe and NVMe devices to the PCIe FPC connector on Raspberry Pi 5. This HAT+ is an adapter board that supports 2230 and 2242 formats M.

How to set PCIe mode in BIOS? ›

Selecting advanced PCIe device settings
  1. From the System Utilities screen, select System Configuration > BIOS/Platform Configuration (RBSU) > PCIe Device Configuration > Advanced PCIe Configuration.
  2. Select settings. ...
  3. Save your settings.

Can I install OS on NVMe SSD? ›

Windows 11 includes native support for NVMe, and thus you do not need to install any special drivers to use an NVMe drive. However, there are a few things to keep in mind if you want to install Windows 11 on an NVMe drive.

How do I boot my old computer from NVMe? ›

Booting from the NVME SSD

There are a number of solutions to this problem, but the safest one (and the one I chose), is to install Clover to a USB stick, and have the PC use that as a boot menu. With the right driver, Clover can then detect your new SSD and boot from it.

Can you boot from external NVMe SSD? ›

Portable SSD, you may wonder, “Can I use an external SSD as a boot drive?” We have good news. Yes, you can boot from an external SSD on a PC or Mac. While there may be a list of reasons one might want to use an SSD as a boot drive, the speed that an external SSD offers is usually at the top.

Why won't Windows 11 boot on NVMe? ›

Windows 11

Secondly, NVMe requires that you use UEFI boot; you cannot use Legacy. Make sure you boot the Windows installer in UEFI mode and, during the Windows installation, make sure that you delete all existing partitions on the System drive (to ensure GPT partition table written to drive).

Top Articles
Latest Posts
Article information

Author: Reed Wilderman

Last Updated:

Views: 5882

Rating: 4.1 / 5 (72 voted)

Reviews: 95% of readers found this page helpful

Author information

Name: Reed Wilderman

Birthday: 1992-06-14

Address: 998 Estell Village, Lake Oscarberg, SD 48713-6877

Phone: +21813267449721

Job: Technology Engineer

Hobby: Swimming, Do it yourself, Beekeeping, Lapidary, Cosplaying, Hiking, Graffiti

Introduction: My name is Reed Wilderman, I am a faithful, bright, lucky, adventurous, lively, rich, vast person who loves writing and wants to share my knowledge and understanding with you.