linux案例7

文件/目录的权限和归属

访问权限
读取:允许查看文件内容、显示目录列表
写入:允许修改文件内容,允许在目录中新建、移动、删除文件或子目录
可执行:允许运行程序、切换目录
归属
(所有权)
属主:拥有该文件或目录的用户帐号
属组:拥有该文件或目录的组帐号
在这里插入图片描述
在这里插入图片描述

[root@localhost 桌面]# cd
[root@localhost ~]# ls –l 以长格式显示文件内容
总用量 28
-rw-r–r--. 1 root root 71 4月 3 18:24 aa.txt
-rw-r–r--. 1 root root 142 4月 8 18:27 abc.txt
-rw-------. 1 root root 1219 2月 28 08:43 anaconda-ks.cfg
-rw-r–r--. 1 root root 2930 4月 3 18:20 catetc
-rw-r–r--. 1 root root 1270 2月 28 00:44 initial-setup-ks.cfg
-rw-r–r--. 1 root root 104 3月 1 18:29 lshome.txt
drwxr-xr-x. 2 root root 6 2月 28 00:46 公共
drwxr-xr-x. 2 root root 6 2月 28 00:46 模板
drwxr-xr-x. 2 root root 6 2月 28 00:46 视频
drwxr-xr-x. 2 root root 6 2月 28 00:46 图片
drwxr-xr-x. 2 root root 6 2月 28 00:46 文档
drwxr-xr-x. 2 root root 6 2月 28 00:46 下载
drwxr-xr-x. 2 root root 6 2月 28 00:46 音乐
drwxr-xr-x. 4 root root 4096 4月 13 10:28 桌面
[root@localhost ~]# chmod u+x initial-setup-ks.cfg 为文件initial-setup-ks.cfg属主添加执行权限
[root@localhost ~]# ls –l 以长格式显示文件内容
总用量 28
-rw-r–r--. 1 root root 71 4月 3 18:24 aa.txt
-rw-r–r--. 1 root root 142 4月 8 18:27 abc.txt
-rw-------. 1 root root 1219 2月 28 08:43 anaconda-ks.cfg
-rw-r–r--. 1 root root 2930 4月 3 18:20 catetc
-rwxr–r--. 1 root root 1270 2月 28 00:44 initial-setup-ks.cfg initial-setup-ks.cfg属主已添加执行权限
-rw-r–r--. 1 root root 104 3月 1 18:29 lshome.txt
drwxr-xr-x. 2 root root 6 2月 28 00:46 公共
drwxr-xr-x. 2 root root 6 2月 28 00:46 模板
drwxr-xr-x. 2 root root 6 2月 28 00:46 视频
drwxr-xr-x. 2 root root 6 2月 28 00:46 图片
drwxr-xr-x. 2 root root 6 2月 28 00:46 文档
drwxr-xr-x. 2 root root 6 2月 28 00:46 下载
drwxr-xr-x. 2 root root 6 2月 28 00:46 音乐
drwxr-xr-x. 4 root root 4096 4月 13 10:28 桌面
[root@localhost ~]# chmod g=rw- initial-setup-ks.cfg 为文件initial-setup-ks.cfg属组赋予读写权限
[root@localhost ~]# ll initial-setup-ks.cfg 以长格式显示文件initial-setup-ks.cfg内容
-rwxrw-r–. 1 root root 1270 2月 28 00:44 initial-setup-ks.cfg
[root@localhost ~]# chmod o+x initial-setup-ks.cfg 为文件initial-setup-ks.cfg其他用户添加执行权限
[root@localhost ~]# ll initial-setup-ks.cfg 以长格式显示文件initial-setup-ks.cfg内容
-rwxrw-r-x. 1 root root 1270 2月 28 00:44 initial-setup-ks.cfg
[root@localhost ~]# chmod 644 initial-setup-ks.cfg 将initial-setup-ks.cfg属主权限设置为读写,属组权限设置为读,其他用户权限设置为读
[root@localhost ~]# ll
总用量 28
-rw-r–r--. 1 root root 71 4月 3 18:24 aa.txt
-rw-r–r--. 1 root root 142 4月 8 18:27 abc.txt
-rw-------. 1 root root 1219 2月 28 08:43 anaconda-ks.cfg
-rw-r–r--. 1 root root 2930 4月 3 18:20 catetc
-rw-r–r--. 1 root root 1270 2月 28 00:44 initial-setup-ks.cfg 用户权限还原
-rw-r–r--. 1 root root 104 3月 1 18:29 lshome.txt
drwxr-xr-x. 2 root root 6 2月 28 00:46 公共
drwxr-xr-x. 2 root root 6 2月 28 00:46 模板
drwxr-xr-x. 2 root root 6 2月 28 00:46 视频
drwxr-xr-x. 2 root root 6 2月 28 00:46 图片
drwxr-xr-x. 2 root root 6 2月 28 00:46 文档
drwxr-xr-x. 2 root root 6 2月 28 00:46 下载
drwxr-xr-x. 2 root root 6 2月 28 00:46 音乐
drwxr-xr-x. 4 root root 4096 4月 13 10:28 桌面
[root@localhost ~]# chmod 000 initial-setup-ks.cfg 将initial-setup-ks.cfg属主权限设置为无,属组权限设置为无,其他用户权限设置为无
[root@localhost ~]# ll initial-setup-ks.cfg 以长格式显示文件initial-setup-ks.cfg内容
----------. 1 root root 1270 2月 28 00:44 initial-setup-ks.cfg 无任何权限
[root@localhost ~]# vim initial-setup-ks.cfg 用vim打开initial-setup-ks.cfg文件
在这里插入图片描述
可以打开
在这里插入图片描述
可以删除空行
保存并退出
在这里插入图片描述
必须强制执行
在这里插入图片描述
在这里插入图片描述
注:root用户不受任何权限限制

[root@localhost ~]# ll /etc/shadow 以长格式显示文件/etc/shadow内容
----------. 1 root root 1138 4月 17 15:51 /etc/shadow 无任何权限,但是root用户可以随意修改
[root@localhost ~]#

umask命令
格式1:umask 【权限反掩码】
用途:全局设置权限
[root@localhost ~]# mkdir abc 在当前目录下新建abc目录
[root@localhost ~]# ll 以长格式显示文件内容
总用量 20
drwxr-xr-x. 2 root root 6 4月 17 21:40 abc abc权限为755
-rw-------. 1 root root 1219 2月 28 08:43 anaconda-ks.cfg
-rw-r–r--. 1 root root 2930 4月 3 18:20 catetc
----------. 1 root root 1269 4月 17 21:09 initial-setup-ks.cfg
-rw-r–r--. 1 root root 104 3月 1 18:29 lshome.txt
drwxr-xr-x. 2 root root 6 2月 28 00:46 公共
drwxr-xr-x. 2 root root 6 2月 28 00:46 模板
drwxr-xr-x. 2 root root 6 2月 28 00:46 视频
drwxr-xr-x. 2 root root 6 2月 28 00:46 图片
drwxr-xr-x. 2 root root 6 2月 28 00:46 文档
drwxr-xr-x. 2 root root 6 2月 28 00:46 下载
drwxr-xr-x. 2 root root 6 2月 28 00:46 音乐
drwxr-xr-x. 4 root root 4096 4月 13 10:28 桌面
[root@localhost ~]# umask 122 设置反掩码为122(创建文件或目录权限为655)
[root@localhost ~]# mkdir abc1 在当前目录下新建abc1目录
[root@localhost ~]# ll 以长格式显示文件内容
总用量 20
drwxr-xr-x. 2 root root 6 4月 17 21:40 abc
drw-r-xr-x. 2 root root 6 4月 17 21:43 abc1 abc1权限为655
-rw-------. 1 root root 1219 2月 28 08:43 anaconda-ks.cfg
-rw-r–r--. 1 root root 2930 4月 3 18:20 catetc
----------. 1 root root 1269 4月 17 21:09 initial-setup-ks.cfg
-rw-r–r--. 1 root root 104 3月 1 18:29 lshome.txt
drwxr-xr-x. 2 root root 6 2月 28 00:46 公共
drwxr-xr-x. 2 root root 6 2月 28 00:46 模板
drwxr-xr-x. 2 root root 6 2月 28 00:46 视频
drwxr-xr-x. 2 root root 6 2月 28 00:46 图片
drwxr-xr-x. 2 root root 6 2月 28 00:46 文档
drwxr-xr-x. 2 root root 6 2月 28 00:46 下载
drwxr-xr-x. 2 root root 6 2月 28 00:46 音乐
drwxr-xr-x. 4 root root 4096 4月 13 10:28 桌面
[root@localhost ~]# umask 133 设置反掩码为133(创建文件或目录权限为644)
[root@localhost ~]# mkdir abc2 在当前目录下新建abc2目录
[root@localhost ~]# ll 以长格式显示文件内容
总用量 20
drwxr-xr-x. 2 root root 6 4月 17 21:40 abc
drw-r-xr-x. 2 root root 6 4月 17 21:43 abc1
drw-r–r--. 2 root root 6 4月 17 21:44 abc2 abc2权限为644
-rw-------. 1 root root 1219 2月 28 08:43 anaconda-ks.cfg
-rw-r–r--. 1 root root 2930 4月 3 18:20 catetc
----------. 1 root root 1269 4月 17 21:09 initial-setup-ks.cfg
-rw-r–r--. 1 root root 104 3月 1 18:29 lshome.txt
drwxr-xr-x. 2 root root 6 2月 28 00:46 公共
drwxr-xr-x. 2 root root 6 2月 28 00:46 模板
drwxr-xr-x. 2 root root 6 2月 28 00:46 视频
drwxr-xr-x. 2 root root 6 2月 28 00:46 图片
drwxr-xr-x. 2 root root 6 2月 28 00:46 文档
drwxr-xr-x. 2 root root 6 2月 28 00:46 下载
drwxr-xr-x. 2 root root 6 2月 28 00:46 音乐
drwxr-xr-x. 4 root root 4096 4月 13 10:28 桌面
[root@localhost ~]# mkdir /opt/abc1 在/opt/目录下新建abc1目录
[root@localhost ~]# ll /opt/ 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 2 root root 6 4月 17 21:49 abc1 abc1权限为644
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost ~]#
[root@localhost ~]# umask 022 设置反掩码为022(创建文件或目录权限为755)默认权限不要随意更改

设置文件/目录的归属
chown命令
格式:chown 属主 文件或目录
chown :属组 文件或目录
chown 属主:属组 文件或目录
常用命令选项
-R:递归修改指定目录下所有文件、子目录的归属

[root@localhost ~]#
[root@localhost ~]# cd /opt/ 切换到/opt/目录
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 2 root root 6 4月 17 21:49 abc1
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# id student 查询student用户
uid=1000(student) gid=1000(student) 组=1000(student),10(wheel)
[root@localhost opt]# groupadd manager 创建manager组
[root@localhost opt]# chown student abc1 设置abc1目录属主为student
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 2 student root 6 4月 17 21:49 abc1 abc1目录属主设置为为student
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# chown :manager abc1 设置abc1目录属组为manager
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 2 student manager 6 4月 17 21:49 abc1 abc1目录属组设置为manager
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# chown root:root abc1 abc1目录属主和属组都设置为root
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 2 root root 6 4月 17 21:49 abc1 abc1目录属主和属组都设置为root
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# mkdir abc1/a.txt 在abc1目录下创建a.txt
[root@localhost opt]# ll abc1/ 以长格式显示abc1/下文件内容
总用量 0
drwxr-xr-x. 2 student manager 6 4月 23 14:04 a.txt
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 3 student manager 18 4月 23 14:04 abc1
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]#

设置文件属主和属组

根据以下要求完成对文件/目录权限的设置
1、添加组group,添加用户aa、bb并加入group组
2、新建文件/abc.txt
3、设置用户aa对文件拥有读、写和执行权限
4、设置组group内成员对文件拥有读和写权限
5、设置除属主和属组外其他人对文件没有任何权限
6、新建目录/abc
7、设置用户bb对目录拥有读、写执行权限
8、设置组group内成员对目录拥有读和执行权限
9、设置除属主和属组外其他人对目录没有任何权限

文件ACL权限

ACL是 Access Control List 的缩写,主要的目的是在提供传统的属主,属主,其他用户的读,写,执行权限之外的细部权限设定。
ACL可以针对单一使用者,单一文件或目录来进行r,w,x的权限规范,对于需要特殊权限的使用状况非常有帮助。
管理文件系统访问控制列表
1.设置 :
setfacl -m u:username:rw filename (-m添加规则链)
setfacl -m g:groupname:rw filename
2.查看:
getfacl filename
3.删除 :
setfacl -x u:username filename
案例:
[root@localhost opt]# useradd user1 创建user1账户
[root@localhost opt]# useradd -G manager user2 创建user2账户,并添加到组manager
[root@localhost opt]# useradd user3 创建user3账户
[root@localhost opt]# passwd user1 为user1账户设置密码
更改用户 user1 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost opt]# passwd user2 为user2账户设置密码
更改用户 user2 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost opt]# passwd user3 为user3账户设置密码
更改用户 user3 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 3 student manager 18 4月 23 14:04 abc1
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# chown user1:manager abc1 abc1目录属主设置为user1,属组设置为manager
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drw-r–r--. 3 user1 manager 18 4月 23 14:04 abc1 abc1目录属主设置为user1,属组设置为manager
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# chmod 764 abc1 将abc1属主权限设置为读写执行,属组权限设置为读写,其他用户权限设置为读
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 0
drwxr-xr-x. 4 root root 50 3月 2 17:00 abc
drwxrw-r–. 3 user1 manager 18 4月 23 14:04 abc1 已更改权限
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# setfacl -m u:user3:rwx abc1 为user3添加abc1目录的读写执行权限
[root@localhost opt]# ll 以长格式显示/opt/下文件内容
总用量 8
drwxr-xr-x+ 4 root root 50 3月 2 17:00 abc
drwxrwxr–+ 3 user1 manager 18 4月 23 14:04 abc1 前面变为+
drwxr-xr-x. 3 root root 20 2月 28 08:42 home
drwxr-xr-x. 7 root root 102 12月 12 06:34 openoffice4
drwxr-xr-x. 2 root root 6 1月 27 2014 rh
drwx------. 3 student student 74 2月 28 08:36 student
[root@localhost opt]# getfacl abc1 查询abc1权限

file: abc1

owner: user1

group: manager

user::rwx
user:user3:rwx user3有读写执行权限
group::rw-
mask::rwx
other::r–

[root@localhost opt]# setfacl -m g:student:r-x /opt/abc1 为student组添加abc1目录的读和执行权限
[root@localhost opt]# getfacl abc1 查询abc1权限

file: abc1

owner: user1

group: manager

user::rwx
user:user3:rwx
group::rw-
group:student:r-x student组有读和执行权限
mask::rwx
other::r–

[root@localhost opt]#

使用附加权限
SET位权限
为可执行(有 x 权限的)文件设置,权限字符为“s”
其他用户执行该文件时,将拥有属主属组的权限
SUID: 表示对属主用户增加SET位权限(当其他用户执行passwd命令时,会自动以文件所有者root用户的身份去执行。)
SGID:一般设置在目录上,用户在设置了SGID的目录下新建文件或子目录时,新建的文件或子目录自动继承父目录的属组。
权限(Sticky)
主要粘滞位用途:
为公共目录(例如,权限为777的)设置,权限字符为“t”
用户不能删除该目录中其他用户的文件
设置SET位、粘滞位权限
使用权限字符
chmod ug±s 可执行文件…
chmod o±t 目录名…
使用权限数字
chmod mnnn 可执行文件
m为4时,对应SUID;m为2时,对应SGID;m为1时,对应粘滞位。

发布了113 篇原创文章 · 获赞 3 · 访问量 4592

猜你喜欢

转载自blog.csdn.net/ghf183184/article/details/105209004