基本权限和归属
一、权限和归属
(一)文档访问概述
访问权限
读取:允许查看内容-Read
写入:允许修改内容-Write
可执行:允许运行和切换-eXcute
归属关系
所有者:拥有此文件/目录的用户-User
所属组:拥有此文件/目录的组-Group
其他用户:除所有者、所属组以外的用户-Other
所有用户:以上三类归属合称-All
(二)查看文件/目录权限
执行ls-l … … 命令查看
输出信息包括7个字段
权限位,硬连接数,属主,属组,大小,最后修改时间,文件/目录名称
[root@localhost ~]# ls -l /etc/passwd
// 开头为“-”表示这个参数为文本文件
-rw-r--r--. 1 root root 2307 7月 13 04:07 /etc/passwd
[root@localhost ~]# ls -ld /opt /dev/cdrom
// 开头为“d”表示这个参数为目录,“3”表示有3个子目录
drwxr-xr-x. 3 root root 16 7月 13 04:03 /opt
// 开头为“l”表示这个参数为快捷方式
lrwxrwxrwx. 1 root root 3 7月 13 04:18 /dev/cdrom -> sr0
(三)权限字串解析
权限字串解析
共10个字符,分为4组
类型 | User权限 | Group权限 | Other权限 | ||||||
---|---|---|---|---|---|---|---|---|---|
d | r | w | x | r | - | x | r | - | x |
- | r | w | - | r | - | - | r | - | - |
[root@localhost ~]# ls -ld /etc/passwd /boot
dr-xr-xr-x. 5 root root 4096 7月 13 04:08 /boot
-rw-r--r--. 1 root root 2307 7月 13 04:07 /etc/passwd
权限位的8进制数表示
r、w、x分别对应4、2、1,后3组分别求和
分组 | User权限 | Group权限 | Other权限 | ||||||
---|---|---|---|---|---|---|---|---|---|
字符 | r | w | x | r | - | x | r | - | x |
占位标记 | 1 | 1 | 1 | 1 | 0 | 1 | 1 | 0 | 1 |
位数值 | 4 | 2 | 1 | 4 | 0 | 1 | 4 | 0 | 1 |
求和 | 7 | 5 | 5 |
二、chmod权限控制
(一)基本用法
chmod命令
格式:chmod[ugoa] [±=][rwx] 文件…
chmod[nnn] 文件…
常用命令选项
-R:递归修改权限
--reference=模板文件
// 查看/root的权限
[root@localhost ~]# ls -ld /root
dr-xr-x---. 14 root root 4096 7月 22 10:29 /root
// 将test01的权限改为和root权限一样
[root@localhost ~]# chmod --reference=/root /opt/test01/
[root@localhost ~]# ls -ld /opt/test01/
dr-xr-x---. 2 root root 6 8月 5 11:35 /opt/test01/
(二)权限配置示例
使用字符权限形式
[root@localhost ~]# mkdir /opt/test01
[root@localhost ~]# ls -ld /opt/test01
drwxr-xr-x. 2 root root 6 8月 5 11:35 /opt/test01
// 所有者修改test01文件的去除权限,“-”是去除
[root@localhost ~]# chmod u-w /opt/test01
// 修改成功
[root@localhost ~]# ls -ld /opt/test01
dr-xr-xr-x. 2 root root 6 8月 5 11:35 /opt/test01
// 所属组添加写入权限,“+”是添加
[root@localhost ~]# chmod g+w /opt/test01/
[root@localhost ~]# ls -ld /opt/test01/
dr-xrwxr-x. 2 root root 6 8月 5 11:35 /opt/test01/
// 为其他用户赋予所有权限,“=”是赋值
[root@localhost ~]# chmod o=rwx /opt/test01/
[root@localhost ~]# ls -ld /opt/test01/
dr-xrwxrwx. 2 root root 6 8月 5 11:35 /opt/test01/
使用数字权限形式
// 将权限修改为原来
[root@localhost ~]# chmod 755 /opt/test01/
[root@localhost ~]# ls -ld /opt/test01/
drwxr-xr-x. 2 root root 6 8月 5 11:35 /opt/test01/
// 添加目录 /aa/bb/cc/dd
[root@localhost ~]# mkdir -p /opt/aa/bb/cc/dd
[root@localhost ~]# ls -ld /opt/aa/
drwxr-xr-x. 3 root root 16 8月 5 11:46 /opt/aa/
// 修改权限为750
[root@localhost ~]# chmod -R 750 /opt/aa/
// 修改成功
[root@localhost ~]# ls -ld /opt/aa/
drwxr-x---. 3 root root 16 8月 5 11:46 /opt/aa/
[root@localhost ~]# ls -ld /opt/aa/bb/cc/dd/
drwxr-x---. 2 root root 6 8月 5 11:46 /opt/aa/bb/cc/dd/
三、控制文档的默认权限
(一)默认权限概述
新建文件/目录的默认权限?
一般文件默认均不给x 执行权限
其他取决于umask设置
[root@localhost ~]# umask
0022
[root@localhost ~]# umask -S
u=rwx,g=rx,o=rx
(二)调整umask权限掩码
根据需要可调整umask设置,提高安全性
比如,去除默认的所有other权限
// 设置默认权限为057
[root@localhost ~]# umask 057
[root@localhost ~]# umask -S
u=rwx,g=w,o=
[root@localhost ~]# mkdir /opt/test10
[root@localhost ~]# ls -ld /opt/test10/
drwx-w----. 2 root root 6 8月 5 22:14 /opt/test10/
(三)新建目录时指定权限
创建新文件夹时,直接设置权限
利用mkdir的-m选项
// 创建权限为770的目录
[root@localhost ~]# mkdir -m 770 /opt/abc01
[root@localhost ~]# ls -ld /opt/abc01/
drwxrwx---. 2 root root 6 8月 5 22:19 /opt/abc01/
四、chown归属控制
(一)设置文档属主
基本用法
格式:chown [-R] 属主 文档 …
[root@localhost ~]# useradd wangwu
[root@localhost ~]# mkdir /opt/abc10
// 设置abc10的文档属于wangwu
[root@localhost ~]# chown wangwu /opt/abc10/
[root@localhost ~]# ls -ld /opt/abc10/
drwxr-xr-x. 2 wangwu root 6 8月 5 22:49 /opt/abc10/
(二)设置文档属组
基本用法
格式:chown [-R] :属组 文档…
// 新建用户
[root@localhost ~]# useradd lisi
// 新建组
[root@localhost ~]# groupadd student
// 设置abc01属于student组lisi用户
[root@localhost ~]# chown lisi:student /opt/abc01/
[root@localhost ~]# ls -ld /opt/abc01/
drwxrwx---. 2 lisi student 6 8月 5 22:19 /opt/abc01/
(三)同时设置属主和属组
基本用法
格式:chown [-R] 属主 :属组 文件…
[root@localhost ~]# mkdir /opt/abc20
[root@localhost ~]# ls -ld /opt/abc20/
drwxr-xr-x. 2 root root 6 8月 5 22:52 /opt/abc20/
// 设置abc20的属主不变,属组为users
[root@localhost ~]# chown :users /opt/abc20
[root@localhost ~]# ls -ld /opt/abc20/
drwxr-xr-x. 2 root users 6 8月 5 22:52 /opt/abc20/