FAT的DOS属性无法很好地映射到UNIX文件系统模型,因此Linux的
vfat驱动程序无法反映它们。
不用挂载文件系统,而是使用mtools从用户空间读取文件系统。
编辑 我撒谎。显然,
vfat驱动程序能够处理这些DOS属性,至少从2.4.29版本开始(我认为;我的历史日志不会返回那么远)。
#include <inttypes.h>#include <sys/ioctl.h>#include <linux/msdos_fs.h>int fd = open("/mnt/fat/...", ...);__u32 attrs;ioctl(fd, FAT_IOCTL_GET_ATTRIBUTES, &attrs);attrs = ATTR_NONE; ioctl(fd, FAT_IOCTL_SET_ATTRIBUTES, &attrs);


