Tails, an acronym for The Amnesic Incognito Live System, is a useful operating system for preserving privacy and anonymity. It’s a security focused Linux distribution that’s based on Debian, and is meant to be run on a USB flash drive. While large flash drives are available, modern external SSDs, such as the Samsung T3 series, are much faster. This is important for applications that read and write a lot of data, such as a Bitcoin full node. Running a Bitcoin full node using Tails and a USB flash drive can take weeks to sync the blockchain, but this can be done in a few days using an external SSD. This guide is also applicable to external HDDs, but they won’t be as fast as external SSDs.
How to Set it Up
Install Tails to the desired external drive using the same process that would be used with a USB flash drive. Installation instructions can be found here. As of version 2.11, Tails doesn’t run from an external drive by default, so you’ll have to make some modifications after you’ve installed Tails to your drive. If you try to boot it at this point, you’ll likely see a “modprobe: module microcode not found in modules.dep” error message. This can also happen after upgrading to a new version of Tails, in which case you’ll need to redo the steps in this tutorial.
You’ll need to edit your boot parameters using the following steps.
Make sure your external drive is plugged in and turn your computer on.
Press the tab key until you see the Tails boot screen. There should be lines of text at the bottom of the screen.
Press the left arrow key until the cursor indicator is at the part “live-media=removable” and then use the backspace key to erase all of that part.
Press the enter key to boot Tails.
This will successfully boot Tails on your external drive, but it’s desirable to make it permanent so you don’t have to repeat these steps every time you boot Tails.
Making the Changes Permanent
Select “Yes” on the Tails Greeter screen for more options and then press the “Forward” button.
Set an administration password and press the “Login” button.
Start a command line terminal by going to Applications, Favorites, and Terminal.
In the terminal window, type the following command:
Enter the administration password that you selected at the Tails Greeter and press the enter key. For security, your password won’t show up on the screen while you’re typing it.
Enter the following command:
mount -o remount -w /lib/live/mount/medium
Currently in Tails, there are two sets of three configuration files that control the Tails boot options. One of these files will take effect at boot, depending on your computer’s hardware architecture.
The following steps will modify all of the configuration files so your external drive should boot on any computer. Future versions of Tails could move these files or the directories they’re in, in which case you would need to try searching for them.
Enter the following command to enter the first directory, to modify the first set of three configuration files:
Use a text editor, such as nano, to edit the first configuration file:
Edit the file to change the “append initrd=” line to remove “live-media=removable” on each line where it appears. You can do this easily by using the find and replace feature in nano. Press Ctrl + \ to begin, then enter “live-media=removable” without the quotes, and finally, enter to use an empty string as the replacement, and press the “A” key to replace all instances.
The append line should now look like something like this:
append initrd=/live/initrd2.img boot=live config apparmor=1 security=apparmor nopersistent noprompt timezone=Etc/UTC block.events_dfl_poll_msecs=1000 splash noautologin module=Tails quiet
Repeat the editing steps for the remaining two files, “live486.cfg”, and “liveamd64.cfg”.
After you’ve finished editing the first set of three files, enter the following command to enter the second directory, to modify the second set of three configuration files:
Repeat the editing process that you performed in the /lib/live/mount/medium/syslinux/ directory to edit the second set of three configuration files.
Once you’re finished, enter this command to restart Tails:
Your external drive should now be set up with the correct boot parameters and should boot Tails automatically!