exfat icon indicating copy to clipboard operation
exfat copied to clipboard

Support shortname mount option like vfat

Open jflemer opened this issue 9 years ago • 6 comments

The linux vfat filesystem supports a mount option -o shortname=mode. From mount(8):

   shortname=mode
          Defines the behavior for  creation  and  display  of  filenames
          which  fit  into  8.3  characters.   If  a long name for a file
          exists, it will always be the preferred one for display.  There
          are four modes:

          lower  Force the short name to lower case upon display; store a
                 long name when the short name is not all upper case.

          win95  Force the short name to upper case upon display; store a
                 long name when the short name is not all upper case.

          winnt  Display the short name as is; store a long name when the
                 short name is not all lower case or all upper case.

          mixed  Display the short name as is; store a long name when the
                 short  name  is  not  all  upper case.  This mode is the
                 default since Linux 2.6.32.

It would be nice to support at least the lower option.

jflemer avatar Jul 01 '16 03:07 jflemer

exFAT does not support short names by design. What problem are you trying to solve?

relan avatar Jul 01 '16 04:07 relan

When I use exFAT-fuse to mount exFAT/SDXC cards from my canon cameras, I see all uppercase file names like DCIM/123_4567/IMG_1234.JPG. On FAT32/SD cards, using the vfat filesystem, (short) file names would be uppercase by default too, but the previously mentioned mount option could change that (mount -oshortname=lower ...).

I would like to mount exFAT/SDXC cards from cameras such that files show up as dcim/123_4567/img_1234.jpg (all lowercase).

jflemer avatar Jul 10 '16 15:07 jflemer

In FAT there is no information about filename letters case (unless LFN feature is used). That's why vfat driver has shortname option. Note that this option does not affect LFNs.

exFAT preserves filenames case. If you see them in the upper case—they were meant to be in the upper case. I think filename case translation is out of scope of exFAT driver.

If you ultimately need lower case filenames you can create a simple FUSE filesystem that would do this translation. Just a random idea. :)

relan avatar Jul 10 '16 18:07 relan

What about showexec? I find it very handy to avoid unwanted exec permissions.

https://www.mjmwired.net/kernel/Documentation/filesystems/vfat.txt#125

marcosfrm avatar Dec 07 '16 09:12 marcosfrm

What about showexec?

Sounds like a good idea. Will do that for the next version.

relan avatar Dec 07 '16 10:12 relan