MNT Pocket Reform SSD Upgrade
For the past couple of months I’ve been using the MNT Pocket Reform. That such a unique little device can exist is a testament to the open source community and the MNT Research team. Its main weakness is that the out-of-the-box Indiegogo configuration is underpowered—for it to be my main machine it needs more storage and a faster CPU.
Thankfully, both are within reach and, while I wait for an R3588 upgrade module, I decided to replace the NVMe SSD with something a little larger. Since the Pocket Reform setup scripts use LUKS-based encryption the migration process is a little more complex than simply imaging and resizing the disk, so I thought I’d write the process up here in case it’s of use to others.
These instructions are loosely based on PhasecoreX’s guide, tailored to the Pocket Reform’s particular off-the-shelf configuration.
These instructions assume you’ve got some way to mount your shiny new (larger) NVMe SSD on your Pocket Reform. I used a cheap USB-C to NVMe adapter.
First-up, download a suitable restore image for your Pocket Reform from https://mnt.re/system-image and write it to an SD card.
Insert the SD into your Pocket Reform and boot into the restore image.
Create a new LUKS partition on the new drive:
sudo cryptsetup luksFormat /dev/sda ```` This will prompt you to type in a new passphrase that will be used on your new drive.
sudo cryptsetup luksOpen /dev/nvme0n1 new_drive_crypt
sudo cryptsetup luksOpen /dev/sda old_drive_crypt
sudo dd if=/dev/mapper/old_drive_crypt of=/dev/mapper/new_drive_crypt bs=64k status=progress
Reboot
sudo cryptsetup luksOpen /dev/nvme0n1 new_drive_crypt
sudo cryptsetup resize /dev/mapper/new_drive_crypt
lsblk /dev/mapper/new_drive_crypt (verify size)
sudo vgscan
sudo vgchange -ay reformvg
(Check)
sudo lvdisplay
lsblk
sudo pvresize /dev/mapper/new_drive_crypt
(Not sure this is actually necessary)
sudo lvextend -l +100%FREE /dev/reformvg/root
sudo lvdisplay /dev/reformvg/root
sudo e2fsck -f /dev/mapper/reformvg-root
sudo blkid /dev/sda
sudo cryptsetup luksUUID /dev/nvme0n1 --uuid <old-uuid>