[Linux] Linux权限管理

时间:2021-09-24 16:45:03
Linux权限管理

1、文件访问权限&文件访问者的分类

a)、文件和文件目录的所有者:                         

        u---User

b)、文件和文件目录的所有者所在的组的用户:

        g---Group

c)、其它用户:                                                   

        o---Others


2、文件访问权限的种类

a)、基本权限

i.读      (r/4) :read        对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限

ii.写     (w/2):write        对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限

iii.执行 (x/1):execute    对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限

iv.“—”表示不具有该项权限


b)、特殊权限
i.suid      (s/4)     只能应用在可执行文件上,允许任意用户在执行文件 时以文件拥有者的身份执行
ii.sgid     (s/2)     只能应用在可执行文件上,使任意用户在执行可 文件时,将以拥有组成员的身份执行
iii.粘着位(t /1)只能应用在目录文件上,将使用户在目录中执行 删除时,只能删除自己拥有的对象


3、文件权限值的表示方法

a)字符表示方法

r--:     只读              -w-:  写         

--x:    执行               rw-: 读写        

-wx:  写和执行        r-x : 读和执行

rwx : 读写执行        ---:   无权限

b)8进制数值表示方法

r:4

w:2

x:1   

rw:6

rx:5

wx:3

rwx:7         

0:代表没有权限


4、文件访问权限的相关设置方法
a)chmod
功能:设置文件的访问权限
格式:chmod [参数] 权限 文件名
参数:R           //递归修改目录文件的权限
           V          //显示指令执行过程
reference=<参考文件或目录>:把指定文件或目录的权限全部设成与参考文件或目录的权限相同。

说明:只有文件的拥有者和root才可以改变文件的权限


chmod命令权限值的格式

①用户表示符+/-=权限字符

+:向权限范围增加权限代号所表示的权限

-:向权限范围取消权限代号所表示的权限

=:向权限范围赋予权限代号所表示的权限


用户符号:  
u:拥有者
g:拥有者同组用户
o:其它用户
a:所有用户
实例:
# chmod  u+w  /home/abc.txt
# chmod  o-x   /home/abc.txt
# chmod   a=x   /home/abc.txt
②三位8进制数字                          
实例:
# chmod  664   /home/abc.txt
# chmod  640   /home/abc.txt 
③示例赋权方式
格式:
# chmod  --reference= reference target
实例:
# chmod  --reference= reference.txt target.txt

b)chown        

功能:修改文件的拥有者

格式:chown [参数] 用户名 文件名

实例:        

# chown  user1   f1

# chown  -R user1   filegroup1


c)charp

功能:修改文件或目录的所属组

格式:charp [参数] 用户组名 文件名 

参数: -R 递归修改文件或目录的所属组

实例:

# chgrp  users /abc/f2


d)umast

功能:查看或修改文件掩码

新建文件夹默认权限=0666-权限掩码

新建目录默认权限=0777-权限掩码

格式:umast 权限值

说明:

将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。

超级用户默认掩码值为0022,普通用户默认为0002。

实例: 

# umast 755

# umask          //查看

# umask  044  //设置


e)使用 sudo分配权限

(1)修改/etc/sudoers 文件分配文件

# chmod 740 /etc/sudoers 
# vi  /etc/sudoers
………………
格式:接受权限的用户 登陆的主机=(执行命令的用户) 命令

(2)使用 sudo 调用授权的命令

$  sudu –u 用户名 命令

实例: 

$ sudo –u root  /usr/sbin/useradd u2