linux 中如何实现仅对指定的用户开放特定目录的读写执行的权限
001、背景
两个测试用户分别是:
user01
user02
目标:实现user01家目录下一共 有两个目录dir1和dir2; 实现user01家目录下的dir1对用户user02单独开放读写执行的权限。
002、测试未开放前user01下的dir1和dir2对用户user02是否有权限
[user01@pc1 ~]$ ls [user01@pc1 ~]$ whoami ## user01 user01 [user01@pc1 ~]$ pwd ## user01家目录 /home/user01 [user01@pc1 ~]$ mkdir dir1 dir2 ## 创建两个测试目录 [user01@pc1 ~]$ ls dir1 dir2
。
[user02@pc1 ~]$ ls [user02@pc1 ~]$ whoami ## 用户user02 user02 [user02@pc1 ~]$ cd /home/user01/dir1 ## 测试user01家目录下dir1对user02的权限 -bash: cd: /home/user01/dir1: Permission denied [user02@pc1 ~]$ cd /home/user01/dir2 ## 测试user01家目录下dir2对user02的权限 -bash: cd: /home/user01/dir2: Permission denied
003、用户user01修改user01家目录下dir1对usr02的权限
(注:一共要设置两次,1是user01家目录对user02的读和执行的权限; 2是usr01家目录下dir1对user02的权限)
a、首先是指usr01家目录对user02的读和执行的权限
[user01@pc1 ~]$ ls dir1 dir2 [user01@pc1 ~]$ whoami user01 [user01@pc1 ~]$ echo $HOME /home/user01 [user01@pc1 ~]$ setfacl -m u:user02:r-x /home/user01 ## 设置user01的家目录对user02的读和执行的权限
b、设置usr01家目录下的dir1对用户user02的读写执行权限
[user01@pc1 ~]$ ls dir1 dir2 [user01@pc1 ~]$ whoami ## 用户user01 user01 [user01@pc1 ~]$ echo $HOME /home/user01 [user01@pc1 ~]$ setfacl -m u:user02:rwx /home/user01/dir1/ ## user01家目录下的dir1设置对user02的读写执行权限
004、测试user01开放权限后,user02是否有权限
[user02@pc1 ~]$ ls [user02@pc1 ~]$ whoami user02 [user02@pc1 ~]$ cd /home/user01/dir1/ ## user02对user01家目录下的拥有访问权限,同时具有写入权限 [user02@pc1 dir1]$ echo "hollo world" > a.txt ## 写入文件 [user02@pc1 dir1]$ ls a.txt [user02@pc1 dir1]$ cd /home/user01/dir2/ ## usr01家目录下的dir2对user02也开放了读和执行的权限,但是无写的权限 [user02@pc1 dir2]$ echo "hollo world" > b.txt ## 无法写入文件 -bash: b.txt: Permission denied
005、关闭user01家目录dir2对user02的读和执行的权限并进行测试
a、关闭user01家目录下dir2对user02的读和执行的权限
[user01@pc1 ~]$ ls dir1 dir2 [user01@pc1 ~]$ whoami user01 [user01@pc1 ~]$ echo $HOME /home/user01 [user01@pc1 ~]$ setfacl -m u:user02:--- /home/user01/dir2/ ## 关闭权限,即设置为---
b、测试user01家目录下的dir2对user02的权限
[user02@pc1 dir2]$ whoami user02 [user02@pc1 dir2]$ cd /home/user01/dir2/ ## user02此时对user01家目录下的dir2读和执行的权限,说明设置成功 -bash: cd: /home/user01/dir2/: Permission denied
。
分类:
linux shell
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 单元测试从入门到精通
· 上周热点回顾(3.3-3.9)
· winform 绘制太阳,地球,月球 运作规律
2020-12-29 vmware虚拟机安装Ubuntu全过程
2020-12-29 物理机可以ping通centos虚拟机,虚拟机无法ping通物理机的解决办法