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

umask都是000,这样权限都是777.  我查看了/etc/passwd文件,发现我的账户www.bkjia.com的号码是1000, 我的组的号码也是1000,因此做了上述改变。

重启系统后,NTFS分区的所有文件属主都是我。权限都是777。再解压文件就不会报错了。

PS:    fstab文件中mount硬盘时,尽量使用UUID,而不应该使用/dev/sdb4这样的驱动文件。  因为,每次重启时,驱动都会更新这个文件对应的硬盘分区。如果你使用/dev/sdb4这样的格式,那么在你的计算机上插入U盘,移动硬盘等重启时,有可能就会mount错误的分区,或者报错。

使用  ls -l /dev/disk/by-uuid/  命令,可以查看各个分区对应的uuid。

相关内容