I decided to upgrade the SSD in my laptop from a 256gb NVMe to a 1TB NVMe that I inherited. This was one of those projects I kept putting off because it sounded complicated, but after completing it, that couldn't have been further from the truth. Here are the steps to clone an existing LUKS partition to a new drive and extending it.
These steps will require a USB drive with a live Linux distro with gparted installed (I used Manjaro, but I've yet to come across a distro that didn't include gparted). You'll also need an NVMe enclosure for the new drive. For this scenario, I had my old 256gb drive installed in the laptop and the new 1TB drive installed in the NVMe enclosure.
Note that these instructions will destroy all data on the new drive you're copying the data to, so be sure you verify the device names and re-read your command before executing. I also recommend disconnecting any other storage devices from your machine.
sudo umount /path/to/driveor using the graphical file manager.
lsblkin a terminal determine how your drives are identified. For example, my old drive if /dev/nvme0p1 and the new drive is /dev/sdb
time sudo dd if/dev/nvme0p1 of=/dev/sdb bs=64k conv=sync,noerror status=progress
gparted. At launch, gparted should immediately notify you about extending your existing partition to the unallocated space. Right click on the existing partition and check 'Resize', extent your partition in the following prompt, then click the green check mark to proceed.
Thanks for reading. Feel free to send comments, questions, or recommendations to email@example.com