Storage

This is an incomplete specification for Ubuntu should handle data storage media and devices.

See also: EncryptedStorage, HardyFullDiskHandling, HandleNicelyLowDiskSpace, Degraded Hardware Notifications

Naming

On a phone with Ubuntu installed:

  • the root folder should be called “Internal Storage” (private bug 1383861)

  • any SD card should be called “SD Card”.

When another device tries to read your storage

(bug 1470853)

share-prompt.png

If you connect (or someone else connects) your locked phone to a device that tries to read its storage, it should be denied.

If you connect the phone while unlocked:

  • If the device (as identified by its USB Vendor, ProdID, Rev, and SerialNumber) is not one that you have previously granted/denied storage access to, a prompt should appear with title “Device Connected”, primary text “Make all your data accessible to this device?” and buttons “Share Data” and “Charge Only”.

  • If the device is one that you have previously granted/denied storage access to, it should silently be granted/denied again.

reset-storage-access.png

So that you can undo this decision, the “Security & Privacy” screen in System Settings should have a button for “Reset Storage Access…”. This should prompt you for your passcode/passphrase, then clear the choice for all previously connected devices.

Storage problems

disk-full-nearly.png

A storage warning or error condition should be presented in an alert box. (It is important enough that it should not disappear by itself, but it should still be possible to do other work while it is open. Compare with the “Battery Low” alert.)

Unless otherwise specified, the alert should appear whenever the warning state is in effect, and either:

  • the alert has not opened since the warning state began, and has not been dismissed in the past 5 minutes; or

  • the alert box has not been open in the past 30 minutes.

In particular, an alert should close by itself whenever the warning state is no longer in effect.

For example:

  • 3:00 p.m.: The startup disk becomes nearly full. The disk-nearly-full alert appears.
  • 3:01: The disk is no longer nearly full. The alert closes by itself.
  • 3:02: The disk becomes nearly full again. The disk-nearly-full alert appears.
  • 3:03: You dismiss the alert.
  • 3:04: The disk becomes no longer nearly full.
  • 3:05: The disk becomes nearly full again. The alert does not appear, because it hasn’t been five minutes yet.
  • 3:08: The alert appears again, because it’s been five minutes.
  • 3:09: You dismiss the alert.
  • 3:39: The alert appears again, because it’s been 30 minutes.

Disk low on space

This condition is when any non-removable, non-hotpluggable partition has both less than 1 percent and less than 50 MB free space:

PC

TBD: merge these two designs

this-computer.jpg partition.jpg

On the PC, the text of the alert should differ depending on whether there is more than one mounted partition usable for storing files on, and on whether the nearly-full partition has any items in the Trash.

Has nothing in the Trash

Has stuff in the Trash

No other usable partitions

This computer has only <X> disk space remaining.

You can free up disk space by removing unused programs or files, or by moving files to another disk.

You can free up disk space by emptying the Trash, removing unused programs or files, or moving files to another disk.

Other usable partitions

The volume “<name>” has only <X> disk space remaining.

You can free up disk space by removing unused programs or files, or by moving files to another disk or partition.

You can free up disk space by emptying the Trash, removing unused programs or files, or moving files to another disk or partition.

Title

Disk Full

Icon

The icon of the disk.

Primary text

This computer’s startup disk is full.

When you are logged in and your Trash contains items using at least 0.2 percent and at least 10 MB of the disk space, then:

Secondary text

You should immediately free up space by emptying the trash ({size}), deleting large files, or removing unneeded programs.

Buttons

“Empty Trash”, “OK”

Otherwise:

Secondary text

You should immediately free up space by deleting large unwwanted files or removing unneeded programs.

Buttons

“OK”

Otherwise, when the disk containing / has both less than 5 percent and less than 250 MB free space:

Title

Disk Nearly Full

Icon

The icon of the disk.

Primary text

This computer’s startup disk is nearly full. It has only {size} free space.

When you are logged in and your Trash contains items using at least 1 percent and at least 50 MB of the disk space, then:

Secondary text

Emptying the trash ({size}), deleting large files, or removing unneeded programs can free up space.

Buttons

“Empty Trash”, “OK”

  • Otherwise:

    Secondary text

    Deleting large files or removing unneeded programs can free up space.

    Buttons

    “OK”

The alert should switch between these two overall states, if appropriate, without closing and reopening.

Future work: Automatically free up disk space or inodes by deleting the contents of /var/cache/ ~/.cache/ or by actually calculating which folder/files use up a lot of inodes due to spamming the filesystem?

If Baobab is installed, an “Examine…” button should be to the left of the “OK” button. “Empty Trash”, when present, should always be the leftmost button.

Choosing “Examine…” should immediately close the alert and launch Baobab. Choosing “Empty Trash” should immediately close the alert and invoke the file manager’s usual Trash emptying function.

Phone

space-low.phone.png

On the phone, for now we have no general interface for deleting unwanted files. So the only help we can offer is, if you choose “Details”, to navigate to the “Storage” screen for more information.

Disk full or nearly full

Disk out of inodes

When no more inodes are available on a disk:

  • Title

    Disk Index Full

    Icon

    The icon of the disk.

    Primary text

    The disk “{name of disk}” can’t contain any more files, because the disk index is full.

    When you are logged in and the Trash contains any items from that disk:

    Secondary text

    You can free up index entries (inodes) by emptying the Trash or deleting unwanted files of any size.

    Buttons

    “Empty Trash”, “OK”

    Otherwise:

    Secondary text

    You can free up index entries (inodes) by deleting unwanted files of any size.

    Buttons

    “OK”

Should we also have a warning for when the disk is nearly out of inodes? If so, how nearly?

Smart errors

When a disk is reporting Smart errors:

  • Title

    Disk Error

    Icon

    The icon of the disk.

    Primary text

    The disk “{name of disk}” is reporting that it will fail soon. You should replace it as soon as possible.

    Buttons

    “Show Details”, “Eject”, “Continue”

“Eject” should be present only if it is not the startup disk.

Should we have intermediate steps towards “will fail soon”?

Future work: Offer a migration function that will copy all files from one disk to another, restarting before and after if necessary.

Raid errors

  • Title

    Raid Error

    Icon

    The standard error icon.

    Buttons

    “Show Details”, “Eject”, “Continue”

“Show Details” should open Disk Utility to display the Raid array.

“Eject” should be present only if the Raid array is not being used as the startup disk.

Usable with missing component

  • Primary text

    The disk “{name of disk}” is missing from the Raid array “{name of array}”.

    Secondary text

    To avoid data loss, reconnect or replace the disk as soon as possible.

Unusable with missing component

This alert should appear only once, not repeating.

  • Primary text

    The Raid array “{name of array}” can’t be used, because the disk “{name of disk}” is missing.

    Secondary text

    The array will become available if the disk is reconnected.

Non-damaging component failure

  • Primary text

    The disk “{name of disk}” has failed in the Raid array “{name of array}”.

    Secondary text

    To avoid data loss, replace the disk as soon as possible.

Damaging component failure

This alert should appear only once, not repeating.

  • Primary text

    Data on the Raid array “{name of array}” has been lost, because {number} of the disks failed.

    Secondary text

    (none)

Storage (last edited 2015-10-11 11:10:32 by mpt)