我对 /etc/fstab 文件中文件系统类型字段中的“ntfs”和“ntfs-3g”之间的区别有疑问。我的 Linux 发行版是 Xubuntu;我想答案可能因发行版而异。
我的问题基本上是在哪种情况下最好使用哪种。似乎大多数网站都告诉您使用“ntfs-3g”,它是 Linux 下 NTFS 的 FUSE 驱动程序。从一些搜索来看,“ntfs”(不带 -3g 部分)似乎通常是指内核驱动程序,而不是 ntfs-3g 用户空间驱动程序。唯一的问题是,我在 fstabs 中使用“ntfs”而不是“ntfs-3g”,而检查 /proc/filesystems 并未显示任何 ntfs 列表。
有人能解释一下 'ntfs' 和 'ntfs-3g' 之间在语义上的具体区别(如果有的话)吗?是否可以安全地假设,如果 mount 看到 'ntfs',它将搜索支持该类型文件系统的驱动程序,并找到已安装的 ntfs-3g 驱动程序?
编辑:我忘了补充说,每次使用“ntfs”时它都能正常工作——我只是好奇答案,并且想确保我没有做一些不确定的事情。
答案1
它们是相同的 - 都在 (当前) Ubuntu 中使用 ntfs-3g;ntfs
实用程序只是符号链接到ntfs-3g
。
# which mount.ntfs
/sbin/mount.ntfs
# which mount.ntfs-3g
/sbin/mount.ntfs-3g
# ls /sbin/mount.ntfs* -l
lrwxrwxrwx 1 root root 13 2011-03-01 21:13 /sbin/mount.ntfs -> mount.ntfs-3g
lrwxrwxrwx 1 root root 12 2011-03-01 21:13 /sbin/mount.ntfs-3g -> /bin/ntfs-3g
答案2
传统的 NTFS 内核驱动程序是只读的。如果您ntfs
在 fstab 中使用,它将尝试使用该内核驱动程序,并将您的 NTFS 挂载为只读
这ntfs-3g
是较新的 FUSE 驱动程序(正如您所提到的),如果您在 NTFS 中使用它,它将以读写方式安装分区。
一些发行版已开始将它们视为同一种东西,但大约一年前,ntfs
在 Ubuntu 的 fstab 中使用会导致文件系统不可写入。我猜这可能取决于您安装的 Xubuntu 版本。