I want to upgrade my system drive that ubuntu is installed on to a SSD.

It is currently installed on a 1TB SATA Drive, which is also the boot drive, all my data is on other drives (except a few things in the documents, downloads, etc folders, which i know i can backup. There is no windows or other systems installed on this desktop, it's all Ubuntu.

I will be upgrading to an 1TB NVMe M.2 2280 SSD utilizing a PCIe Port (rather than the onboard SATA M.2 option for my own personal reasons).

My question is, can i just clone the SATA HDD to the SSD, then "swap" them out, booting to the SSD? (I would create the same partitions to match the current system drive exactly) Or do i have to install fresh and new on the SSD (which i really don't want to, because i have a lot of customizations and programs installed and it will take forever to get it all working back to normal)?

so the tl;dr: can i clone (or just copy) the partitions on the installation drive from 1TB SATA HDD to a 1TB NVMe SSD, or am i forced to reinstall Ubuntu from scratch and spend forever installing all my customizations.

I use Ubuntu 18.04 LTS, oh, and if cloning/copying would work, are there any recommended programs i should use for it. There is NO windows installed on the system, it's 100% Ubuntu.

Edit: technically i think I'm looking for both ideas about answering the questions, but also reading any subtext the implies some things won't work

  • @Juan Jimenez i didn't mention either CloneZilla or FileZilla in my question. – SPooKYiNeSS Dec 29 '18 at 16:45


1TB drives are not always the same identical size, especially if you cross from HDD to SDD. Do a fdisk -l and verify that the SSD is the same size or larger than the HDD.

If you are good, go ahead and do a "dd if= of= bs=1M conv=noerror" and let it run till complete (around 3 hours).

If for your if and of, you choose the entire device (for example sda instead of sda1) it will copy boot sectors and partition tables also.

If you SSD is smaller, it still can work, but you must use gparted to resize partitions so the last partition ends within the SSD capacity. (Do backups of important data before resizing).

Make sure your Bios/uefi is set to boot off the new device on reboot.

| improve this answer | |
  • First, let me thank you for a succinct and informative answer. I'm fairly confident the ssd is ever so slightly bigger, so i would just make the partitions the exact size the just extend one after the fact. So I'm guessing using this message i can just unplug the old sata drive and make the system boot to the ssd and pesto, I'm happy. If course I'll make a backup first, I'm one of those people that learnt that rule through experience lol. I'll post you as the correct answer if all goes well (the drive is at my bro's and i won't get it til the weekend. (Unless sum1 else posts a better answer) – SPooKYiNeSS Jul 29 '18 at 5:07

Forgot I'd asked this. Anyway, for the record, and just in case someone else wants to try it in the future (or the past, time machines are real); my existing SATA drives were 1TB, which as we all know it really isn't, it's 1,000,000,000,000 bytes. (assuming I gor the number of zeroes correct; confidence is high.

However, the three SSD drives I purchased (one for each machine to be the booting system drive) were slightly bigger. One was an m.2 SATA 2280 SSD (mounted directly on a laptop motherboard), and two were an m.2 NVMe 2280 (mounted on a PCIe card on two very differently setup desktops), and all three were 1,024,000,000,000. And all three SSD's were relatively cheap, not the cheapest, but not the "best quality" by any stretch, they were somewhere in the lower end of the pricing scale.

So using all the normal methods of cloning the SATA to the SSD, for each case

GParted: Failed (making an image, then restoring it to the new drive).

DD: Failed (and i have no idea why, but it failed on all three devices).

Zilla Live: Worked, yay, on all three drives.

For all three tries, I made sure that the only two drives plugged in were the new SSD and the old SATA (to ensure no collateral damage, from or to, the other drives). It happily sat there for an hour or so (which was quite long thinking about it), then I plugged everything else back in, unplugged the old 1TB and made the Bios boot to the PCIe SSD (or just SSD on the laptop) and all three machines happily booted up with everything intact.

(and yes, I did change the bios each time when trying the other methods)

So, in summary, it appears (based on the three i've seen) that SSDs are ever so slightly bigger than SATA drives, which allows for Zilla Live to clone and just leave the end of the drive unused (which I fixed with Gparted once I was back up and running, to make the whole drive usable).

There seems to be no reason why the other methods would fail, but they did, on three machines that are all very different in setup.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.