There is a problem: the UNIX / Linux file system encodes agnostic. All file names are just a bunch of bytes.
So, if I do LANG = ja_JAP.EUC_JP, create a file with a Japanese name, then I will do LANG = ja_JP.UTF8, when I look at my file name, it will look like garbage, and this will be invalid UTF -8.
You could say: why? But imagine that you have a system used by hundreds of international users, each of which uses Russian / Chinese / Korean / Arabic files, and you need to write an application for backup: - (
The "solution" is to ask everyone to set the locale to something .UTF8, but this is just an agreement, the system itself does not provide anything.
source share