![如何授予子文件夹权限,同时拒绝访问其上方的文件夹](https://linux22.com/image/131337/%E5%A6%82%E4%BD%95%E6%8E%88%E4%BA%88%E5%AD%90%E6%96%87%E4%BB%B6%E5%A4%B9%E6%9D%83%E9%99%90%EF%BC%8C%E5%90%8C%E6%97%B6%E6%8B%92%E7%BB%9D%E8%AE%BF%E9%97%AE%E5%85%B6%E4%B8%8A%E6%96%B9%E7%9A%84%E6%96%87%E4%BB%B6%E5%A4%B9.png)
我有这样的结构:
/home/the_user/folder/subfolder
我想对其进行读写访问,但我希望无法读取或写入上面的任何内容,即
/home/the_user/folder
那可能吗?
答案1
最好在家庭以外的位置执行此操作,例如在其中创建文件夹结构,/
但这里是:
将所有者设置subfolder
为您想要拥有读写权限的用户。
chown user /home/the_user/folder/subfolder
chmod u+rwx /home/the_user/folder/subfolder
将“execute for other”设置为“ /home
the_user
and”,folder
并确保该用户没有读写权限。
chmod +x
对于他们每个人和chmod -rw
用户。
这将允许用户遍历上述目录,但不能读取或写入它们,同时允许他读取和写入subfolder
.
我再次建议您不要这样做,/home
并建议您将该目录创建为根目录的子文件夹,例如:
mkdir /mnt/folder
....并在那里使用我的答案,而不是可能犯错误并向某人的主目录授予权限。
答案2
另一种方法是将文件夹安装到用户有权访问的文件夹。
/home/the_user/folder/subfolder
假设我们有您想要向用户显示的文件夹cat
,而不透露您家中的其他任何内容:
mkdir /home/cat/subfolder
chown cat /home/the_user/folder/subfolder
sudo mount -o bind /home/the_user/folder/subfolder /home/cat/subfolder
应该做到这一点。