我在 CIFS 网络共享上遇到了一些 Linux 生成的文件夹问题。此文件夹是在 Linux 中创建的,但我无法从 Windows 计算机的共享中删除它。在 Linux 中使用 chmod 777 设置权限。
我怎样才能授予 Windows 用户访问权限,而不必从 Windows 机器“获取所有权”,并通过 Windows 授予完全访问权限?
抱歉,我对 Linux 有点不熟悉。
答案1
/etc/fstab
好吧,我使用安装了 CIFS 共享UID=1000
。GID=1000
现在它似乎可以正常工作了。说实话,我不知道。只是做了很多尝试和错误。
答案2
Windows 使用 ACL 来表示文件权限。GNU/Linux 仅部分支持这些权限。尝试使用该acl
实用程序找出分配给网络共享上其他文件的权限,并尝试为您的文件设置相同的权限。
这是一种有根据的猜测,因为我自己从来没有处理过这个问题。
答案3
这个问题已被浏览超过 3,000 次,所以我想我应该提供有关在 fstab 中使用 uid 和 gid 以及安装共享/驱动器的更多详细信息。
当您添加 UID=,GID= 时,挂载的共享将具有 uid 用户和组 gid 应用于文件的权限。因此,如果在挂载的网络共享中有一个权限为 750 的文件夹,则所有者将被列为具有完全权限的 uid 用户,具有 gid 的组将是组所有者并具有读取和执行权限,其他任何人都没有权限。
如果您在 Active Directory 中设置了 unix 映射,或者共享是 Windows nfs 共享,并且设置了权限,则应设置 uid 和 gid 以避免权限问题。
如果你需要找出用户的 uid/gid,你可以运行:
grep <user> /etc/passwd
输出类似于:
www-data:x:33:83:Full Name of user:/var/www:/usr/sbin/nologin
www-data 是用户,33 是 uid,83 是 gid。