Back in October when I set up my new Ryzen PC, I thought it might be good to get an NVME SSD for the older desktop as well – I’d pinched all the drives from it for the new PC, and I didn’t want to be stuck using my old, slow HDD. NVME SSDs were quite cheap at the time, so I got myself a second hand 500GB Samsung OEM one commonly found in laptops.
However, there was a problem. The old PC (an Alienware X51 R2) didn’t have a M.2 slot to accommodate an NVME drive, which is common on systems of that age (circa late 2013). Fortunately, there is a way to get these super-fast storage devices working on older desktop PCs (unfortunately this won’t work on laptops).
This will work for booting both Windows and Linux, on systems with either BIOS or EFI/UEFI firmware.
M.2 and PCI Express
So first I should point out that some NVME drives actually use SATA, but I wasn’t interested in those as I could just connect a SATA SSD. I was really interested in the PCI Express/PCIe drives. Fortunately, any recent desktop will use PCIe for the graphics card, and my old PC was no exception. If you’re using a standard ATX motherboard, you may well have multiple PCIe slots, but in my case I had to ditch the graphics card, which was an acceptable compromise for me because I wasn’t using it anyway.
In order to connect an M.2 drive to a PCIe slot, there are various adaptors available. In the end, I went for this one because it was cheap and it looked like I could boot from it – some other adaptors have caused problems with this.
Installing the adaptor
Installing the adaptor is usually pretty easy. I don’t have detailed steps for your system, but I can show you how it worked on mine. The process varies depending on your case, but it’s usually as simple as taking the side panel off your case, removing a blanking plate, and then inserting and screwing the card in. Note that you’ll need to insert your NVME SSD into the card first.
Booting from the NVME SSD
If you want to boot from the drive, you’ll probably now encounter another problem: when you power on, your system won’t “see” the drive as a boot device.
There are a number of solutions to this problem, but the safest one (and the one I chose), is to install Refind to a USB stick, and have the PC use that as a boot menu. With the right driver, Refind can then detect your new SSD and boot from it. This sounds a bit complicated, but it’s easy to set up. You also only need a small USB stick – an old 512 MB or 1 GB stick will be just fine.
Refind can be downloaded from http://www.rodsbooks.com/refind/getting.html. You want the “USB flash drive image” option, which you can then write to the disk using a tool like GNOME Disks (Linux), Rufus (Windows), or Etcher (all OSes).
Once written to your USB stick, you’re almost done but first you need to download the NVME driver. You can search for “NvmExpressDxe.efi”, or you can download this one that I used, and have tested to work.
Once you’ve got your driver, navigate to your USB drive and place it in
EFI -> CLOVER -> drivers -> BIOS
EFI -> CLOVER -> drivers -> UEFI
Now you can safely eject your USB stick and boot the new machine from it. You may need to select the USB stick as a boot device in the firmware setup, or it may just boot from it automatically. You’ll be presented with a boot menu, and you should now install your operating system. Your installation media will appear in Refinds’s boot menu.
Installing the OS
This varies depending on your setup, whether you’re installing Linux or Windows, or whether you’re cloning an existing disk. As such, I won’t really cover this here, but as long as you start the installation media from Refind (especially if you’re installing Windows), it should all work as usual. Once installed, your OS will appear in Refind’s boot menu, where you can boot it.
This has been a slightly longer post, but I hope it is useful. The steps involved can take a while, but they are quite simple to follow. As always, if you need me to clarify anything, let me know in the comments.
That’s it for now, but stay tuned!