我目前正在使用/ etc / fstab中的以下行在启动时挂载NTFS分区:
/dev/sda3 /media/data ntfs nls=iso8859-1,umask=000
在我的Ubuntu 11.10安装中,似乎所有文件和文件夹都归root
- 所有,并且由于NTFS并不真正支持相同的权限管理系统,因此挂载完成后我无法更改它。无论我做什么,ls -l
NTFS分区上的任何地方都会列出所拥有的每个文件和文件夹root:root
。
但是,这给我带来了一些问题。最值得注意的是,一些在我的帐户下运行的应用程序(称为tomas
)抱怨访问权限。另外,每当我尝试将ext3分区之一的cp
(mv
)文件或移动()的文件移至NTFS分区时,都会收到错误消息,提示您
mv: preserving times for `[path to new file]`: Operation not permitted
或者,类似地
mv: preserving permissions for ...
是否将分区挂载为我的名字而不是root帮助?如果是这样,如何在fstab中完成该操作?
更新:
我现在根据建议更改了选项,并得出以下结论:
nls=iso8859-1,permissions,users,umask=000,uid=tomas,gid=tomas
ls -l
现在显示的是我拥有的所有文件,而不是root拥有的文件,看来我以前遇到的一些问题已解决。但是,并非全部。
当我启动Eclipse时,出现一个错误,提示无法运行与android-sdk相关的文件:权限被拒绝。ls -l
告诉我有关文件的以下信息:
-rwxrwxrwx 1 tomas tomas 159620 2011-11-29 14:50 adb*
这看起来就像我想要的那样。但是,如果我尝试./adb
在终端中运行它,还会收到权限被拒绝的错误。但是,如果我使用来运行它sudo
,它会起作用(我相信-至少它不会给我错误消息,但是它根本不会给我任何输出,我认为这不应该...)
为什么上面的文件对任何人都具有执行权限,但除此以外的任何人都不能执行root
?如何更改挂载文件系统的方式?
更新2:
好的,我现在要进一步介绍。通过使用这些选项进行安装
nls=iso8859-1,permissions,users,auto
我以我期望的方式设置了所有权限,chown
并chmod
实际上更改了文件的设置(至少根据ls -l
)= D
但是我的系统仍然表现异常。adb
脚本文件的权限如上所述,但是我和Eclipse都无法运行它而没有“权限被拒绝”错误。但据我所知,该文件已设置了所有必需的标志(o=rwx
应该足够了吧?)。为什么不起作用?
更新3
好的,我可以在Ubuntu端进行所有工作,并具有以下选项:
nls=iso8859-1,permissions,users,auto,exec
但是,当我尝试从Windows访问分区上的文件时,所有安全设置都搞砸了。在所有文件(我检查过的这几个文件中)中,一个名为的新帐户Account Unknown(long GUID)
已添加到用户列表中,并具有完整权限。其他大多数用户的需求减少了,因此我没有做我期望的事情的权利。值得注意的是,“每个人”似乎不再有权“遍历文件夹/执行”。
通过选择分区并允许每个人在根文件夹上执行任何操作,然后告诉它以递归方式进行操作,这可能是可解决的,但是我宁愿不要这样做,因为恐怕要花几天的时间才能完成...
users Allow every user to mount and unmount the filesystem. This option implies the options noexec, ... unless overridden by subsequent options, as in the option line users,exec,dev,suid)
。 因此,添加exec
到您的选项中,我认为应该解决执行权限被拒绝的问题。