This is an old revision of the document!
Raspberry Pi 3 Boot to USB
This is taken from the following URL: https://www.raspberrypi.org/documentation/hardware/raspberrypi/bootmodes/msd.md
I have documented it here as I use this guide a lot, and I don't want to lose it :)
This tutorial explains how to boot your Raspberry Pi 3 from a USB mass storage device such as a flash drive or USB hard disk. Be warned that this feature is experimental and may not work with all USB mass storage devices. <color red>USB Hard Drives seem particularly fussy.</color>
Program USB Boot Mode
Before a Pi will network boot, it needs to be booted with a config option to enable USB boot mode.
Enabling this config option requires special start.elf and bootcode.bin files. These can be installed by using the “next” branch on rpi-update.
sudo mkdir /mnt/target
sudo mount /dev/sda2 /mnt/target/
sudo mkdir /mnt/target/boot
sudo mount /dev/sda1 /mnt/target/boot/
sudo apt-get update; sudo apt-get install rsync
sudo rsync -ax –progress / /boot /mnt/target
cd /mnt/target sudo mount –bind /dev dev sudo mount –bind /sys sys sudo mount –bind /proc proc sudo chroot /mnt/target rm /etc/ssh/ssh_host* dpkg-reconfigure openssh-server exit sudo umount dev sudo umount sys sudo umount proc
sudo sed -i “s,root=/dev/mmcblk0p2,root=/dev/sda2,” /mnt/target/boot/cmdline.txt sudo sed -i “s,/dev/mmcblk0p,/dev/sda,” /mnt/target/etc/fstab
cd ~ sudo umount /mnt/target/boot sudo umount /mnt/target # sudo poweroff