dir1 和 dir2 chmod 700, dir3 chmod 777 但我得到权限被拒绝
Posted
技术标签:
【中文标题】dir1 和 dir2 chmod 700, dir3 chmod 777 但我得到权限被拒绝【英文标题】:dir1 and dir2 chmod 700, dir3 chmod 777 but I am getting Permission denied 【发布时间】:2017-02-20 23:29:19 【问题描述】:我正在学习 Linux 和权限。
我在dir3
中有以下文件夹dir1/dir2/dir3
和文件myfile.txt
。
我正在尝试将chmod 700
权限授予dir1
和dir2
对文件夹和文件,但对dir3
中的所有文件和文件夹我想授予chmod 777
权限。
根据this 的帖子,我做了以下操作:
将dir1
和dir1
中的所有目录的权限更改为chmod 700
find /home/user/dir1 -type d -exec chmod 700 \;
将dir1
中的所有文件更改为chmod 700
,包括子文件夹
find /home/user/dir1 -type f -exec chmod 700 \;
之后我做了以下操作:
将dir3
和dir3
中的所有目录的权限更改为chmod 777
find /home/user/dir1/dir2/dir3 -type d -exec chmod 777 \;
将dir3
中的所有文件的权限更改为chmod 700
find /home/user/dir1/dir2/dir3 -type f -exec chmod 777 \;
当我使用 ls -al
检查权限时,一切看起来都很好,但是当我更改用户并尝试访问 dir3
和 myfile.txt
时,我总是收到消息 "Permission denied" 。
做错了什么? 有没有我想要的更好的方法?
【问题讨论】:
【参考方案1】:700 表示只有 dir1 和 dir2 的所有者对 dir1 和 dir2 具有 rwx 访问权限。如果其他用户尝试访问 dir1 或 dir2 内部,则无论 dir3 内部的 777 为何,都将不允许他访问。所以请检查您的用户是否是所有者。 一种解决方案是将 770 分配给 dir1 和 dir2 这将允许组(您必须指定)具有 rwx 权限。然后您可以将您的用户添加到组中,以便只有该用户具有 rwx 访问权限,而不是其他用户。
【讨论】:
以上是关于dir1 和 dir2 chmod 700, dir3 chmod 777 但我得到权限被拒绝的主要内容,如果未能解决你的问题,请参考以下文章
如何从 Java 中的 Azure Blob 存储中读取文件夹结构为“dir1 / dir2 / dir3 / 20210301-20210331”的 csv 文件?