ntfs和vfat文件系统的权限必须使用dmask
、fmask
和umask
选项进行设置。dmask
控制目录的权限,fmask
控制文件的权限,umask
同时控制两者。由于这些选项设置了掩码,所以它们应该是您所需权限的补集。例如,所有者的rwx和其他用户的rx是022,而不是755。
要设置所有者,请分别使用uid
和gid
选项进行用户和组。您可以使用命令id -u
找到自己的UID。要找到您的GID,请使用id -g
。这些值通常都是1000。
用于ntfs的常见挂载选项是uid=1000,gid=1000,dmask=027,fmask=137
。这将把您设置为驱动器的所有者,并将权限设置为drwxr-x---
。
以下是一个有效的/etc/fstab示例:
UUID=EEA2B69CA2B668AB /WIN_C ntfs-3g defaults,nls=utf8,umask=000,dmask=027,fmask=137,uid=1000,gid=1000,windows_names 0 0
UUID=65AEC0E830EA0497 /WIN_D ntfs-3g rw 0 0
要获取分区的UUID,您可以使用
ls -l /dev/disk/by-uuid/
或
lsblk -f | grep -v loop
或
gnome-disks。
如果重新启动后没有出现明显的错误,并且分区仍然是只读的,或者出现类似的错误:
Error mounting /dev/sda6 at /media/WindowsDrive:
Command-line `mount -t "ntfs" -o "uhelper=udisks2,nodev,nosuid,uid=1000,gid=1000,dmask=0077,fmask=0177" "/dev/sda6" "/media/rolindroy/Media Center"' exited with non-zero exit status 14: The disk contains an unclean file system (0, 0).
Metadata kept in Windows cache, refused to mount.
Failed to mount '/dev/sda6': Operation not permitted The NTFS partition is in an unsafe state.
Please resume and shutdown Windows fully (no hibernation or fast restarting), or mount the volume read-only with the 'ro' mount option
这是因为Windows 8和10提供了一个依赖于“非完全”关机的“快速启动”选项。您可以按照“电源选项”下的这些
步骤来禁用快速启动。
UUID=01D9318DD8A39810 /run/media/$user/Win11 ntfs-3g uid=$user,gid=$user,umask=0022 0 0
UUID=01D9317B8D647610 /run/media/$user/Storage ntfs-3g uid=$user,gid=$user,umask=0022 0 2
在上面的例子中,win11将以只读方式挂载,而存储设备则以读写方式挂载。
它们将作为驱动器显示在文件管理器中,因为它们被挂载在文件夹/run/media/$user下。
同时,请不要忘记用您的用户名替换$user。