允许其他用户访问 HOME 目录内的特定文件夹

允许其他用户访问 HOME 目录内的特定文件夹

我在“tempuser”主文件夹(“/home/tempuser/downloads”)中有一个“downloads”文件夹,我想为另一个用户(比如“testuser”)授予“rwx”权限。除了“downloads”文件夹外,testuser 不应具有 /home/tempuser 中任何其他文件或文件夹的权限。

我该怎么做 ?

答案1

要遍历文件夹,需要执行权限。执行将授予“执行”(即遍历)文件夹的权限,但无权读取其中的文件。

假设您的主文件夹中有以下目录树:

jvehent@laptop:~$ tree -d Downloads
├── linux-2.6.38
│   ├── arch
│   │   ├── alpha
│   │   │   ├── boot
│   │   │   │   └── tools
│   │   │   ├── include
│   │   │   │   └── asm

您可以授予任何人访问“asm”文件夹的权限,但不授予他们访问其他任何内容的权限,方法是在完整层次结构中为每个人设置执行权限,然后为 asm 文件夹设置写入权限:

chmod o+x /home/jvehent
chmod o+x /home/jvehent/Downloads
chmod o+x /home/jvehent/linux-2.6.38/
chmod o+x /home/jvehent/linux-2.6.38/arch
chmod o+x /home/jvehent/linux-2.6.38/arch/alpha
chmod o+x /home/jvehent/linux-2.6.38/arch/alpha/include
chmod -R o+wx /home/jvehent/linux-2.6.38/arch/alpha/include/asm

按照相同的逻辑,您可以将“testuser”和“tempuser”放在单独的组“testgroup”中,并仅授予“tempgroup”访问权限

chgrp -R tempgroup /home/jvehent/linux-2.6.38/arch/alpha/include/asm
chmod -R g+wx /home/jvehent/linux-2.6.38/arch/alpha/include/asm

答案2

tempusertestuser添加到一个组中,并使之/home/tempuser/downloads可由该组写入:

# groupadd temptest
# usermod -a -G temptest tempuser
# usermod -a -G temptest testuser
# chgrp -R temptest /home/tempuser/downloads
# chmod -R g+w /home/tempuser/downloads

相关内容