首页 Linux教程linux权限管理

linux用户管理

linux-文本处理-vim

运维派是国内成立最早的IT运维技术社区,欢迎关注公众号:yunweipai

文件权限管理

linux权限管理插图

文件所有者和属组属性操作

设置文件的所有者chown

chown 命令可以修改文件的属主,也可以修改文件属组

格式

用法说明:

范例:

范例:

设置文件的属组信息chgrp

chgrp 命令可以只修改文件的属组

格式

-R 递归

范例:

文件权限

文件权限说明

文件的权限主要针对三类对象进行定义

注意:用户的最终权限,是从左向右进行顺序匹配,即,所有者,所属组,其他人,一旦匹配权限立即生效,不再向右查看其权限

每个文件针对每类访问者都定义了三种常用权限

每个文件针对每类访问者都定义了三种权限

对文件的权限:

对目录的权限:

数学法的权限

linux权限管理插图(1)

八进制数字

例如:

修改文件权限chmod

格式

说明:

范例: 设置 X 权限

范例:

范例:面试题

新建文件和目录的默认权限

umask 的值可以用来保留在创建文件权限

实现方式:

  • 新建文件的默认权限: 666-umask,如果所得结果某位存在执行(奇数)权限,则将其权限+1,偶数不变
  • 新建目录的默认权限: 777-umask

非特权用户umask默认是 002

root的umask 默认是 022

查看umask

修改umask

范例:

持久保存umask

  • 全局设置: /etc/bashrc
  • 用户设置:~/.bashrc

范例:

范例:

Linux文件系统上的特殊权限

前面介绍了三种常见的权限:r, w, x 还有三种特殊权限:SUID, SGID, Sticky

特殊权限SUID

前提:进程有属主和属组;文件有属主和属组

  1. 任何一个可执行程序文件能不能启动为进程,取决发起者对程序文件是否拥有执行权限
  2. 启动为进程之后,其进程的属主为发起者,进程的属组为发起者所属的组
  3. 进程访问文件时的权限,取决于进程的发起者

​ (a) 进程的发起者,同文件的属主:则应用文件属主权限
​ (b) 进程的发起者,属于文件属组;则应用文件属组权限
​ (c) 应用文件“其它”权限

二进制的可执行文件上SUID权限功能:

  • 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限
  • 启动为进程之后,其进程的属主为原程序文件的属主
  • SUID只对二进制可执行程序有效
  • SUID设置在目录上无意义

SUID权限设定:

范例:

特殊权限SGID

二进制的可执行文件上SGID权限功能:

  • 任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限
  • 启动为进程之后,其进程的属组为原程序文件的属组

SGID权限设定:

目录上的SGID权限功能:

默认情况下,用户创建文件时,其属组为此用户所属的主组,一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组,通常用于创建一个协作目录

SGID权限设定:

特殊权限 Sticky 位

具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限或拥有权
在目录设置Sticky 位,只有文件的所有者或root可以删除该文件
sticky 设置在文件上无意义

Sticky权限设定:

范例:

特殊权限数字法

SUID SGID STICKY

范例:

权限位映射
SUID: user,占据属主的执行权限位
s:属主拥有x权限
S:属主没有x权限
SGID: group,占据属组的执行权限位
s: group拥有x权限
S:group没有x权限
Sticky: other,占据other的执行权限位
t:other拥有x权限
T:other没有x权限

设定文件特殊属性

设置文件的特殊属性,可以访问 root 用户误操作删除或修改文件

不能删除,改名,更改

只能追加内容,不能删除,改名

显示特定属性

范例:

访问控制列表

ACL权限功能

ACL:Access Control List,实现灵活的权限管理
除了文件的所有者,所属组和其它人,可以对更多的用户设置权限
CentOS7 默认创建的xfs和ext4文件系统具有ACL功能
CentOS7 之前版本,默认手工创建的ext4文件系统无ACL功能,需手动增加

ACL生效顺序:

所有者,自定义用户,所属组|自定义组,其他人

ACL相关命令

setfacl 可以设置ACL权限

getfacl 可查看设置的ACL权限

范例:

范例:

范例:

mask 权限

  • mask只影响除所有者和other的之外的人和组的最大权限
  • mask需要与用户的权限进行逻辑与运算后,才能变成有限的权限(Effective Permission)
  • 用户或组的设置必须存在于mask权限设定范围内才会生效

    范例:

范例:

--set选项会把原有的ACL项都删除,用新的替代,需要注意的是一定要包含UGO的设置,不能象-m一样只是添加ACL就可以

范例:

备份和还原ACL

主要的文件操作命令cp和mv都支持ACL,只是cp命令需要加上-p 参数。但是tar等常见的备份工具是不会保留目录和文件的ACL信息

范例:

范例:

本文链接:http://www.yunweipai.com/33871.html

linux用户管理

linux-文本处理-vim

网友评论comments

发表评论

电子邮件地址不会被公开。 必填项已用*标注

暂无评论

Copyright © 2012-2020 YUNWEIPAI.COM - 运维派
扫二维码
扫二维码
返回顶部