步骤
实现此案例需要按照如下步骤进行。
步骤一:新建/nsddir1/目录,在该目录下新建文件readme.txt
命令操作如下所示:
[root@localhost ~]# mkdir /nsddir1
[root@localhost ~]# ls -ld /nsddir1/ //查看是否创建成功
drwxr-xr-x. 2 root root 4096 2月 26 09:55 /nsddir1/
[root@localhost ~]# touch /nsddir1/readme.txt
[root@localhost ~]# ls -l /nsddir1/readme.txt //查看是否创建成功
-rw-r--r--. 1 root root 0 2月 26 09:56 /nsddir1/readme.txt
[root@localhost ~]#
步骤二:使用户zhangsan能够在/nsddir1/目录下创建/删除子目录(此题考查对目录w权限的理解)
命令操作如下所示:
[root@localhost ~]# id zhangsan //查看zhangsan用户是否存在
id: zhangsan:无此用户
[root@localhost ~]# useradd zhangsan //创建zhangsan用户
[root@localhost ~]# ls -ld /nsddir1/ //查看nsddir1目录的权限
drwxr-xr-x. 2 root root 4096 2月 26 09:56 /nsddir1/
分析: 首先看zhangsan对于此目录具备有什么权限,zhangsan很明显属于其他人,权限对应为rx,要想让其能够创建、删除子目录,必须让其具备w权限
[root@localhost ~]# su – zhangsan //切换zhangsan用户测试
[zhangsan@localhost ~]$ mkdir /nsddir1/zhangdir //测试是否有权限创建
mkdir: 无法创建目录"/nsddir1/zhangdir": 权限不够
[zhangsan@localhost ~]$exit
[root@localhost ~]# chmod o+w /nsddir1/ //为其他人添加W权限
[root@localhost ~]# ls -ld /nsddir1/ //查看是否添加成功
drwxr-xrwx. 2 root root 4096 2月 26 09:56 /nsddir1/
[root@localhost ~]# su – zhangsan //再次切换到zhangsan用户测试
[zhangsan@localhost ~]$ mkdir /nsddir1/zhangdir //测试是否有权限创建
[zhangsan@localhost ~]$ ls /nsddir1/ //查看是否创建成功
readme.txt zhangdir
[zhangsan@localhost ~]$
步骤三:使用户zhangsan不能够在/nsddir1/目录下创建/删除子目录(此题考查对目录w权限的理解)
[root@localhost ~]# chmod o-w /nsddir1/ //为其他人去掉W权限
[root@localhost ~]# ls -ld /nsddir1/ //查看是否成功
drwxr-xr-x. 2 root root 4096 2月 26 09:56 /nsddir1/
[root@localhost ~]# su – zhangsan //切换zhangsan用户测试
[zhangsan@localhost ~]$ mkdir /nsddir1/zhangdir //测试是否有权限创建
mkdir: 无法创建目录"/nsddir1/zhangdir": 权限不够
步骤四:使用户zhangsan能够修改/nsddir1/readme.txt文件,调整/nsddir1/目录的权限,使任何用户都不能进入该目录,测试用户zhangsan是否还能修/nsddir1/readme.txt文件的内容。
分析: 首先要解决zhangsan用户能够修改readme.txt内容
命令操作如下所示:
[root@localhost ~]# ls -ld /nsddir1/readme.txt //查看readme.txt文件的权限
-rw-r--r--. 1 root root 0 2月 26 09:56 /nsddir1/readme.txt
分析: 首先看zhangsan对于此目录具备有什么权限,zhangsan很明显是其他人的权限是r权限,在想如何实现让zhangsan修改其内容,需加w权限
[root@localhost ~]# su – zhangsan //切换zhangsan用户测试
[zhangsan@localhost ~]$ echo 123 > /nsddir1/readme.txt //测试是否有权限写入
-bash: /nsddir1/readme.txt: 权限不够
[zhangsan@localhost ~]$ exit
logout
[root@localhost ~]# chmod o+w /nsddir1/readme.txt //添加w权限
[root@localhost ~]# ls -l /nsddir1/readme.txt //查看是否添加成功
-rw-r--rw-. 1 root root 0 2月 26 09:56 /nsddir1/readme.txt
[root@localhost ~]# su – zhangsan //切换zhangsan用户测试
[zhangsan@localhost ~]$ echo 123 > /nsddir1/readme.txt //测试是否有权限写入
[zhangsan@localhost ~]$ cat /nsddir1/readme.txt //查看写入成功
123
分析: zhangsan能够修改readme.txt内容了。现在设置/nsddir1权限是任何人都不能进入该目录,只需将所有人的x执行权限去掉即可。
命令操作如下所示:
[root@localhost ~]# ls -ld /nsddir1/
drwxr-xr-x. 2 root root 4096 3月 31 11:38 /nsddir1/
[root@localhost ~]# chmod a-x /nsddir1/
[root@localhost ~]# ls -ld /nsddir1/
drw-r--r--. 2 root root 4096 3月 31 11:38 /nsddir1/
[root@localhost ~]# su - zhangsan
[zhangsan@localhost ~]$ cd /nsddir1/
-bash: cd: /nsddir1/: 权限不够
[zhangsan@localhost ~]$ echo 123 > /nsddir1/readme.txt //zhangsan用户无权限修改
-bash: /nsddir1/readme.txt: 权限不够
步骤五:将/nsddir1/目录及其下所有内容的权限都设置为 rwxr-x—(本题主要考察选项-R,依然是利用chmod来完成)
命令操作如下所示:
[root@localhost ~]# chmod -R 750 /nsddir1/ //-R为递归修改
[root@localhost ~]# ls -ld /nsddir1/ //查看目录本身权限是否修改
drwxr-x---. 3 root root 4096 2月 26 16:00 /nsddir1/
[root@localhost ~]# ls -l /nsddir1/ //查看子目录子文件权限是否修改
总用量 8
-rwxr-x---. 1 root root 4 2月 26 16:14 readme.txt
drwxr-x---. 2 zhangsan zhangsan 4096 2月 26 16:00 zhangdir