mount的文件系统中文件名显示乱码问题
在文章如何让虚拟机识别到宿主机的USB设备中,我们成功的挂载了USB磁盘上的文件系统。
但是,有中文字符的文件名显示乱码:
$ ls -l
total 98460
drwxr-xr-x. 3 root root 4096 Aug 23 13:46 ????
-rwxr-xr-x. 1 root root 37 Aug 23 13:45 1
-rwxr-xr-x. 1 root root 57769714 Mar 13 04:57 20240116 Oracle??????IT.pptx
-rwxr-xr-x. 1 root root 128 Dec 4 2023 autorun.inf
drwxr-xr-x. 5 root root 4096 Jan 30 2024 boot
-rwxr-xr-x. 1 root root 413738 Dec 4 2023 bootmgr
-rwxr-xr-x. 1 root root 1574256 Dec 4 2023 bootmgr.efi
drwxr-xr-x. 4 root root 4096 Jan 30 2024 efi
-rwxr-xr-x. 1 root root 32847218 Nov 14 2023 Oracle?????????IT.pptx
-rwxr-xr-x. 1 root root 8086988 May 31 22:22 Oracle?????????.pptx
-rwxr-xr-x. 1 root root 74184 Dec 4 2023 setup.exe
drwxr-xr-x. 12 root root 12288 Jan 30 2024 sources
drwxr-xr-x. 3 root root 4096 Jan 30 2024 support
drwxr-xr-x. 2 root root 4096 Jan 30 2024 System Volume Information
按照这篇文章,What do I do if the Chinese characters on a Linux ECS instance are garbled?,设置locale。简单来说:
# export LC_ALL=zh_CN.UTF-8# ls -l /mnt
总用量 98460
drwxr-xr-x. 3 root root 4096 8月 23 13:46 ????
-rwxr-xr-x. 1 root root 37 8月 23 13:45 1
-rwxr-xr-x. 1 root root 57769714 3月 13 04:57 20240116 Oracle??????IT.pptx
-rwxr-xr-x. 1 root root 128 12月 4 2023 autorun.inf
drwxr-xr-x. 5 root root 4096 1月 30 2024 boot
-rwxr-xr-x. 1 root root 413738 12月 4 2023 bootmgr
-rwxr-xr-x. 1 root root 1574256 12月 4 2023 bootmgr.efi
drwxr-xr-x. 4 root root 4096 1月 30 2024 efi
-rwxr-xr-x. 1 root root 32847218 11月 14 2023 Oracle?????????IT.pptx
-rwxr-xr-x. 1 root root 8086988 5月 31 22:22 Oracle?????????.pptx
-rwxr-xr-x. 1 root root 74184 12月 4 2023 setup.exe
drwxr-xr-x. 12 root root 12288 1月 30 2024 sources
drwxr-xr-x. 3 root root 4096 1月 30 2024 support
drwxr-xr-x. 2 root root 4096 1月 30 2024 System Volume Information
我们看到,提示信息确实有中文了,但文件名仍为乱码。
实际上,中文内容的文件是可以显示的:
# cat 1
正版化需求与数据安全方案# file 1
1: UTF-8 Unicode text
按照这篇和这篇文章,我们找到了答案。即在mount时的iocharset选项。
现在就正常了:
# mount -o iocharset=utf8 /dev/sdb1 /mnt# ls -l /mnt
total 98460
-rwxr-xr-x. 1 root root 37 Aug 23 13:45 1
-rwxr-xr-x. 1 root root 57769714 Mar 13 04:57 20240116 Oracle助力企业简化IT.pptx
-rwxr-xr-x. 1 root root 128 Dec 4 2023 autorun.inf
drwxr-xr-x. 5 root root 4096 Jan 30 2024 boot
-rwxr-xr-x. 1 root root 413738 Dec 4 2023 bootmgr
-rwxr-xr-x. 1 root root 1574256 Dec 4 2023 bootmgr.efi
drwxr-xr-x. 4 root root 4096 Jan 30 2024 efi
-rwxr-xr-x. 1 root root 32847218 Nov 14 2023 Oracle助力集团型企业简化IT.pptx
-rwxr-xr-x. 1 root root 8086988 May 31 22:22 Oracle数据库典型解决方案.pptx
-rwxr-xr-x. 1 root root 74184 Dec 4 2023 setup.exe
drwxr-xr-x. 12 root root 12288 Jan 30 2024 sources
drwxr-xr-x. 3 root root 4096 Jan 30 2024 support
drwxr-xr-x. 2 root root 4096 Jan 30 2024 System Volume Information
...