我使用外部硬盘作为媒体服务器。该硬盘格式化为 exFAT 和 GPT(来自 Windows)。
我注意到,将 HDD 安装在我的 Mac 上时从 OS X 创建的文件在将磁盘安装在 OpenWrt(路由器)上后不可见。
由于 du 和 ls -la 均返回文件夹的空内容,因此文件未被隐藏。我使用 xattr 检查过,文件上未设置 OS X 属性。HDD 上未启用日志功能。
我在 OpenWrt 上安装了具有 rw 权限的 HDD:
root@OpenWrt:/# mount | grep seagate
/dev/sda2 on /mnt/seagate type exfat (rw,relatime,fmask=0022,dmask=0022,namecase=1,errors=remount-ro)
fdisk 没有显示任何错误:
root@OpenWrt:/# fdisk -l /dev/sda
Disk /dev/sda: 2.7 TiB, 3000592981504 bytes, 5860533167 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disklabel type: gpt
Disk identifier: 52E20666-389A-4415-BE39-501CEFF51221
Device Start End Sectors Size Type
/dev/sda2 411648 5860532223 5860120576 2.7T Microsoft basic data
然后对其中一个文件夹执行 ls 和 du:
root@OpenWrt:/# du -h /mnt/seagate/Work
1.0M /mnt/seagate/Work
root@OpenWrt:/# ls -la /mnt/seagate/Work
drwxr-xr-x 2 root root 1048576 Mar 4 08:35 .
drwxr-xr-x 86 root root 1048576 Mar 7 21:43 ..
如果我将 HDD 重新连接到 Mac,则可以从 OS X 中看到里面的文件:
ninja:/ liana$ du -h /Volumes/Seagate\ 1/Work
8.4M /Volumes/Seagate 1/Work
Mac 上硬盘的 diskutil 列表输出:
ninja:/ liana$ diskutil list
/dev/disk2 (external, physical):
#: TYPE NAME SIZE IDENTIFIER
0: GUID_partition_scheme *3.0 TB disk2
1: Microsoft Basic Data Seagate 3.0 TB disk2s2
编辑:
以下是内核版本、OpenWrt 版本和 kmod-fs-exfat 版本:
root@OpenWrt:~# uname -a
Linux OpenWrt 3.18.20 #1 Fri Sep 4 21:55:57 CEST 2015 mips GNU/Linux
root@OpenWrt:~# cat /etc/*release*
DISTRIB_ID='OpenWrt'
DISTRIB_RELEASE='15.05'
DISTRIB_REVISION='r46767'
DISTRIB_CODENAME='chaos_calmer'
DISTRIB_TARGET='ar71xx/generic'
DISTRIB_DESCRIPTION='OpenWrt Chaos Calmer 15.05'
DISTRIB_TAINTS=''
root@OpenWrt:~# opkg list-installed | grep exfat
kmod-fs-exfat - 3.18.20+git-20150301-1
所有其他 kmod 软件包都是 3.18.20。
过去几天我一直在尝试展示它们,但我没有主意了。任何帮助都将不胜感激!