Missing UX: Linux, flash drives and large files

Most flash drives come formatted as FAT32. It’s a common format that’s supported by Windows, OS X and most Linux distributions. Unfortunately, you can’t copy files bigger than 4GB on a FAT32 drive.

When I dropped the file in the folder, it started copying, then I got this error at the 4GB mark:

Linux FAT32 error message

If you do chose to expand the error dialog, it says the file couldn’t be spliced, and that it is too large for my 16GB flash drive. Spliced? Too large for my 16GB flash drive?

What could have been done?

First and foremost, a useful error message would have been nice. How about this:

The file you are trying to copy is too large for this file system.

The least you could do is to tell your users what’s happening. That’s exactly what Windows does, almost word for word:

Windows FAT32 file size error

We have a nice “Show more details” collapsible panel. Why no throw some useful advice in there? Here’s what it could say:

This drive is formatted as FAT32. This file system does not support files larger than 4GB. Formatting this drive to NTFS, ext4 or exFAT will allow you to store files larger than 4GB on this drive.

A useful error message is a good first step. It’s not a costly change, and it’s far more useful to the end user.

The next step would be to produce an error before copying half of the file on the drive, or at the very least not to leave the half-copied file on the drive with its original name, letting the user think it somehow copied correctly.

Leave a Reply

Your email address will not be published. Required fields are marked *

To create code blocks or other preformatted text, indent by four spaces:

    This will be displayed in a monospaced font. The first four 
    spaces will be stripped off, but all other whitespace
    will be preserved.
    
    Markdown is turned off in code blocks:
     [This is not a link](http://example.com)

To create not a block, but an inline code span, use backticks:

Here is some inline `code`.

For more help see http://daringfireball.net/projects/markdown/syntax