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 权限授予dir1dir2 对文件夹和文件,但对dir3 中的所有文件和文件夹我想授予chmod 777 权限。

根据this 的帖子,我做了以下操作:

dir1dir1 中的所有目录的权限更改为chmod 700

find /home/user/dir1 -type d -exec chmod 700 \;

dir1 中的所有文件更改为chmod 700,包括子文件夹

find /home/user/dir1 -type f -exec chmod 700 \;

之后我做了以下操作:

dir3dir3中的所有目录的权限更改为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 检查权限时,一切看起来都很好,但是当我更改用户并尝试访问 dir3myfile.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 但我得到权限被拒绝的主要内容,如果未能解决你的问题,请参考以下文章

如何解压缩跳过目录结构开头的文件[关闭]

DOS常用命令集锦

cp scp rsync 拷贝目录文件的一些常识

Linux 创建目录的方法

Linux/Unix命令

如何从 Java 中的 Azure Blob 存储中读取文件夹结构为“dir1 / dir2 / dir3 / 20210301-20210331”的 csv 文件?