Project

General

Profile

Feature #17394

adjustable persistence size

Added by numbat 3 months ago. Updated 30 days ago.

Status:
New
Priority:
Low
Assignee:
-
Category:
-
Target version:
-
Start date:
Due date:
% Done:

0%

Feature Branch:
Type of work:
User interface design
Blueprint:
Starter:
Affected tool:

Description

There could be at least 2 reasons to want to allow the user to chose the size:

  1. USB disks are getting huge, some people may want a 3rd (or more) partitions for other things
  2. A user reported having an issue with a 1TB. They received errors so they had to reduce the size of the remaining free space (#17393).

Related issues

Related to Tails - Bug #17393: Failed to meet partition size error during persistent volume creation Confirmed

History

#1 Updated by intrigeri about 2 months ago

  • Related to Bug #17393: Failed to meet partition size error during persistent volume creation added

#2 Updated by intrigeri about 2 months ago

Hi!

There could be at least 2 reasons to want to allow the user to chose the size:

IIRC we haven't discussed this since the initial work we did when we introduce the persistence feature, so IMO it's good to revisit this decision and see if what's implemented still matches what we want ⇒ thank you for suggesting this!

  1. USB disks are getting huge, some people may want a 3rd (or more) partitions for other things

I understand someone may want to (re)use for Tails + other things a large USB stick they've already purchased, initially without having in mind to use it for Tails. Or, one may have bought a huge USB stick primarily for Tails, but believing they would be able to use it for other things too.

  1. A user reported having an issue with a 1TB. They received errors so they had to reduce the size of the remaining free space (#17393).

I suspect that fixing the underlying bug for #17393 would be much cheaper than making persistence size configurable. Additionally, it would make things work out-of-the-box, as opposed to users having to learn/guess that they need to do something non-standard to workaround that bug.

The main reasons I can see in favor of not adding this option are:

  • Presumably, the vast majority of our users are fine with the defaults. Giving more choices has a UX cost.
  • Leaving unused space free for other things encourages users to plug their Tails USB stick into other, untrusted operating systems, that may corrupt the Tails system (e.g. changing partition types automatically to "repair" stuff, break EFI / boot loader config, not even speaking about security concerns). If we de facto encourage users to do that, then we need to find the right place & way to explain the risks, which has a cost for us and for all users who won't benefit from this added flexibility.
  • While it's true that huge USB sticks can be purchased these days, a stick whose size fits most common Tails use cases is pretty cheap, so presumably most users can afford buying a dedicated one (especially if they could afford a huge USB stick already).
  • Any additional complexity to the partition table layouts we support may make future changes to that layout harder for us to implement, and harder for users to migrate to. IOW, flexibility has a cost vs. homogeneity.

I'd love to know what sajolida thinks about this!

#3 Updated by permezel about 2 months ago

On 2020-Feb-08, at 00:12, wrote:

Issue #17394 has been updated by intrigeri.

Hi!

There could be at least 2 reasons to want to allow the user to chose the size:

IIRC we haven't discussed this since the initial work we did when we introduce the persistence feature, so IMO it's good to revisit this decision and see if what's implemented still matches what we want ⇒ thank you for suggesting this!

  1. USB disks are getting huge, some people may want a 3rd (or more) partitions for other things

I understand someone may want to (re)use for Tails + other things a large USB stick they've already purchased, initially without having in mind to use it for Tails. Or, one may have bought a huge USB stick primarily for Tails, but believing they would be able to use it for other things too.

  1. A user reported having an issue with a 1TB. They received errors so they had to reduce the size of the remaining free space (#17393).

I suspect that fixing the underlying bug for #17393 would be much cheaper than making persistence size configurable. Additionally, it would make things work out-of-the-box, as opposed to users having to learn/guess that they need to do something non-standard to workaround that bug.

The main reasons I can see in favor of not adding this option are:

  • Presumably, the vast majority of our users are fine with the defaults. Giving more choices has a UX cost.
  • Leaving unused space free for other things encourages users to plug their Tails USB stick into other, untrusted operating systems, that may corrupt the Tails system (e.g. changing partition types automatically to "repair" stuff, break EFI / boot loader config, not even speaking about security concerns). If we de facto encourage users to do that, then we need to find the right place & way to explain the risks, which has a cost for us and for all users who won't benefit from this added flexibility.

That is a risk, but what about other use cases where the other partitions are accessed solely from Tails? Encrypted Borg backups? There are various reasons I do not wish to keep them in the persistent volume. Yes, a separate SSD drive works, but then I need to make sure I grab two SSD drives when the house is burning down around me, rather than one.

#4 Updated by sajolida about 1 month ago

I fully agree with what intrigeri said and I don't have much to add:

  • We have some protection in place for a Tails USB stick to not appear
    by default in Windows and macOS, isn't it? Would another partition on
    the stick be able to bypass this protection? If not, then people might
    get different results on different OSes and that's not good either.
  • When I tested running Tails from an external hard disk in #15742 I
    couldn't make it work. I understand that the reporter of #17393 did
    make it work from a SSD 1TB somehow. Unless we decide to support
    running from external hard disks in most cases, I think that we should
    discard such user support requests. Then the argument about have other
    partition on the drive gets pretty weak from an economical point-of-
    view as intrigeri pointed out.

On the other hand, I myself store my Persistent Storage on a hard disk
to have more space, better performance, less physical clutter, and
more reliable storage. So I totally understand the people who want to
do this too :)

#5 Updated by intrigeri 30 days ago

Hi,

sajolida wrote:

  • We have some protection in place for a Tails USB stick to not appear by default in Windows and macOS, isn't it?

Almost! This protection is set on a per-partition basis. We currently set it for the Tails system partition, but not for the persistent volume.

Would another partition on the stick be able to bypass this protection?

Yes, it would bypass this protection.

  • When I tested running Tails from an external hard disk in #15742 I couldn't make it work. I understand that the reporter of #17393 did make it work from a SSD 1TB somehow.

My understanding is that whether it'll work or not entirely depends on how the external USB drive enclosure exposes the disk to Tails, i.e. the good ol' "removable" bit, i.e. #6397 (related to #8422, next step is probably #15989).

Unless we decide to support running from external hard disks in most cases, I think that we should discard such user support requests.

Agreed. We can reconsider once #6397 and friends are solved.

numbat, what do you think? If you agree, could you please relay this to your team?

Then the argument about have other partition on the drive gets pretty weak from an economical point-of-view as intrigeri pointed out.

Yep. Note that 256GB-1TB USB drives do exist, but they're way more expensive than external hard drives of the same capacity.

Also available in: Atom PDF