I have a Pi 3 that is a DNS, web, email etc server and it's gone through a few SD cards and gets bogged down in high wait % in top sometimes. It has a USB drive for storage for Storj etc and I was reading how you can boot a Pi 3 with a hard drive to speed things up and hopefully be a bit more reliable than the SD cards have been.
So I found this article
https://thepi.io/how-to-boot-your-raspberry-pi-from-a-usb-mass-storage-device/
Now a bunch of gotchas came up.
Firstly the boot USB option is a OTP setting. This means once it's set, it for good on your device. Read up on this before doing it!
https://github.com/raspberrypi/documentation/blob/master/hardware/raspberrypi/bootmodes/bootflow.md
I had a spare drive so I restored a Jessie image to the drive and plugged it in after setting the option
program_usb_boot_mode=1
and it seem to boot (it's headless) but the drive was accessing, the network was flashing etc. Seems pretty easy.
Ok lets try and migrate the current SD card and drive to a new drive.
So some points to note here. I tried the SDCard again to get DNS etc back up while I moved data around and it would not boot. Seems you need to remove the line we added earlier
program_usb_boot_mode=1
from /boot/config.txt or the SD card won't boot again. That's a bit annoying.
So I imaged the SDCard and restored this to the drive and tried to boot this and it started but then did not complete booting. OK silly move, need to modify the /etc/fstab on the root partition and the /boot/cmdline to say sda rather than the mmc device that is the SDCard.
Once that was done it booted OK. We're getting there. Tried to use raspi-config to exapnd the root partition but that doesn't know what the drive is and only works on SDCards. Doh. Back to the PC and expand with GParted and finish copying the data over and we're in business.
So in short to move you RaPi3 to a harddrive:
Image your SDCard and restore this to the new harddrive.
Expand the harddrive root partiion with GParted or similar.
Modify the /etc/fstab and /boot/cmdline on the new drive to use sda rather than the mmc device ( I had 3 entries)
On the PI, set the "program_usb_boot_mode=1" option in /boot/config.txt and reboot.
Shut the Pi down and remove the SDCard and plug in the USB drive and it should boot.
Hope that saves some frustration :-)
Saturday, 17 March 2018
Subscribe to:
Posts (Atom)
Gentoo grub-probe not working
I have a bunch of history commands I run when I d a new kernel etc and one stopped working. grub-mkconfig would fail with grub-probe for /....
-
We still see this one occasionally. Had one case where we needed to get a policy on but couldn't reboot the firewall. So, tried a few ...
-
I gave Windows 10 another try tonight and after some pretty hefty updates I still have the same issues as before. Same hardware on Windows ...
-
I couldn't find a simple guide for this so here it is... I have Ubuntu 12.04 with btrfs as my main FS. Once Windows was install Ubunt...