Skip to content

Support booting from devices exposed as non-removable

Originally created by @intrigeri on #6397 (Redmine)

Tails refuses to boot from devices that expose themselves as non-removable:

  • Some USB sticks (especially Sandisk) expose themselves as non-removable. Not the case anymore: #16926 (closed)
  • Some external USB hard drives and SSDs expose themselves as non-removable.
  • There’s recurring interest in installing Tails on internal hard disks (e.g. for performance reasons, or to dedicate a machine to Tails, or to avoid having a USB stick protruding outside of a laptop, or to install Tails on a tablet’s internal storage): see #8422 for use cases and what it would take to support it.

A plan could be to:

  1. pass the syslinux SYSAPPEND variable a bitmask that enables FSUUID= functionality (bit 0x40000): this feature appends, to the kernel command-line, the UUID of the partition the kernel is booted from (added in 6.03-pre9, see commit 386b59e1 in syslinux Git) DONE in d421f38e
  2. add support to live-boot to search the SquashFS only on the filesystem specified by the FSUUID kernel command-line parameter, when present; when present, FSUUID should override any live-media= found on the command-line, so that we would still pass live-media=removable, that would only be taken into account when booting from DVD.

Subtasks

Edited by intrigeri
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information