我有一个外部 USB 驱动器,其格式为 NTFS,安装在 ~/tmp 上。我可以正常读取它,但无法写入,即使以 root 身份也无法写入(temp 是 USB 驱动器上的一个文件夹):
[root@Plugbox temp]# touch test
touch: cannot touch `test': Permission denied
[root@Plugbox temp]#
但是,如果我执行 cat /proc/mounts,看起来我确实有 NTFS 读/写支持:
[root@Plugbox temp]# grep /dev/sdb1 /proc/mounts
/dev/sdb1 /root/tmp ntfs rw,relatime,uid=0,gid=100,umask=02,nls=utf8,errors=continue,mft_zone_multiplier=1 0 0
[root@Plugbox temp]#
最后,如果我转到 temp 上方的文件夹,看起来我应该有足够的权限来写入该文件夹:
[root@Plugbox tmp]# ls -al
total 61500764
...
drwxrwxr-x 1 root users 0 Apr 19 2010 temp
...
[root@Plugbox tmp]#
我错过了什么?
答案1
试用NTFS-3g。它支持 NTFS 写入。您可能正在使用不支持 NTFS 写入的 NTFS 模块。
答案2
NTFS 写入支持不仅需要挂载选项,还需要具有写入功能的驱动程序。您使用的是哪种 NTFS 文件系统驱动程序,是内核自带的驱动程序还是从其他地方下载的模块?
答案3
就像其他人提到的那样,您可能想要安装 NTFS-3g。但是,完成此操作后,可能有用的是将条目添加到您的 /etc/fstab,例如我的以下条目:
# <file system> <mount point> <type> <options> <dump> <pass>
/dev/sdb2 /media/Windows ntfs-3g rw,auto,user,fmask=0111,dmask=0000 0 0
将“/dev/sdb2”替换为您尝试挂载的任何分区,将“/media/Windows”替换为您首选的挂载点。这样,分区将在启动时自动挂载,您将能够读取和写入磁盘上的文件。