Linux Mount NTFS分区造成的权限问题的解决方案
我的Linux自动mount NTFS分区时,在我解压文件夹时总用一些文件报错。 我用ls -lia命令查看了一下权限,发现自动mount的NTFS分区的所有人是root,属于plugdev这个组。 虽然我仍然可以自由copy、remove、edit文件, 但是解压总是报错。
我试图使用chmod和chown对整个NTFS分区的文件和文件夹修改属主为我,修改权限为777。虽然程序提示执行成功,但是执行ls -lia命令发现这两个命令根本没起作用。
使用sudo vim /etc/fstab,发现配置是这样的。
UUID=58D03D91D03D767A /mounts/workdisk ntfs defaults,nls=utf8,umask=022,gid=46 0 0
我查看了/etc/group后发现,gid=46是plugdev这个组。 而umask是777减去的值,因此权限最后编程了都是755.
我做了如下修改:
UUID=58D03D91D03D767A /mounts/workdisk ntfs defaults,nls=utf8,umask=000,uid=1000,gid=1000 0 0
重启系统后,NTFS分区的所有文件属主都是我。权限都是777。再解压文件就不会报错了。
PS: fstab文件中mount硬盘时,尽量使用UUID,而不应该使用/dev/sdb4这样的驱动文件。 因为,每次重启时,驱动都会更新这个文件对应的硬盘分区。如果你使用/dev/sdb4这样的格式,那么在你的计算机上插入U盘,移动硬盘等重启时,有可能就会mount错误的分区,或者报错。
使用 ls -l /dev/disk/by-uuid/ 命令,可以查看各个分区对应的uuid。