linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

时间:2022-01-09 15:12:30

1.文件属性查看

touch file    ls -l file

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

-   rw-rw-r--    1     kiosk     kiosk     0   Oct 2 17:05     file

[1]    [2]         [3]       [4]          [5]       [6]           [7]            [8]


[1]      文件类型
-        普通文件
d        目录
s        socket套接子
l        软链接
p        管道
c        字符设备
b        块设备


[2]       读写权限
           rw-|rw-|r--
            @   $   *

@        文件拥有者对文件能做的动作
$         文件所在组的组成员能对文件做的动作
*          其他人对与文件能做的动作


[3]        文件内容被系统记录的次数
[4]        文件拥有者
[5]        文件所在组
[6]        文件大小

[7]        文件最后一次被更改的时进

[8]        文件名称

 2  .目录属性查看

mkdir lee    ls -ld lee

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

d   rwxr-xr-x  3     kiosk    kiosk  33     Aug 27 09:47         lee
[1]        [2]    [3]        [4]        [5]     [6]              [7]                   [8]

[1]        类型(同文件)
[2]        权限
[3]        子目录个数
[4]        目录拥有者
[5]        目录所在组
[6]        目录中内容的属性的大小
[7]        目录中文件增加或减少或被更名的时间

[8]        目录名称


3.文件用户组的更改


chown         用户名称    文件    更改文件所有人

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

chgrp          组名称        文件    更改文件所有组

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

chown  -R   用户            目录    更改目录本身以及目录中的子文件的所有人


chgrp   -R    组名            目录    更改目录本身以及目录中的子文件的所有组


4.权限的识别


ls -l 中2-10字符为文件权限
rwx           r-x                r-x
用户权限(u)     组成员权限(g)      其他用户权限(o)

权限种类
r
r权限针对文件,表示可以查看文件内容
r权限针对目录,表示可以ls 查看目录中存在的文件名称

w
w权限针对文件,表示可以更改文件的内容
w权限针对目录,表示是否可以删除目录中的子文件或者子目录

x
x权限对于文件,表示是否可以开启文件当中记录的程序
x权限对于目录,表示是否可以进入目录中

chmod    ugo+ - rwx    ##改权限

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


u=rwx=7      g=-w-=2     o=--x=1
  421

g=rw-=6      g=r--=4       o=r--=4

  644


7=rwx,6=rw-,5=r-x,4=r--,3=-wx,2=-w-,1=--x,0=---


5.文件的默认权限

umask    ##显示系统预留权限值

umask 077    ##临时修改umask值

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


##永久修改

vim /etc/bashrc        71行是普通用户的更改,73是超级用户的更改

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】



vim /etc/profile    60行是普通用户的更改,62是超级用户的更改

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


source /etc/bashrc     ##刷新bash配置

source /etc/profile     ##刷新系统配置

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


6.特殊权限


stickyid    ###强制位
o+t    ###之针对目录,当一个目录上有t权限时,这个目录中的文件只能被文件拥有者删除
t=1
chmod o+t directroy

chmod 1777 directory

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


sgid        ###粘制位
g+s        ##针对目录,在目录中创建的文件都自动归属到目录所在组,针对二进制文件,文件内记录的程序在执行时和执行者的组身份没有关系,而是以二进制文件的所有组的身份执行的
chmod g+s file|directory

chmod 2777 file|directory

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】



suid        ###冒险位
u+s        ###针对文件,文件记录动作在执行时是一文件所有人身份执行的,与是谁发起的无关
chmod u+s file

chmod 4777 fileg+s

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】



7.权限列表


acl    ##指定特定的用户对特定的文件拥有特殊权力
-rw-rwx---+ 1 root root 0 Mar 28 02:39 file

      ^

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

    权限列表开启

那么这个文件的普通权限也在权限列表中识别,ls -l 看到的权限是不准确的

#查看

getfacl   /mnt/file

内容如下:

file: mnt/file        #文件名称

# owner: root        #文件的拥有者
# group: root        #文件的组
user::rw-        #文件拥有者的权限
user:westos:rw-        #特殊指定用户的权限
group::---        #文件组的权限
group:student:rwx    #特殊指定组的权限
mask::rwx        #权限最大值

other::---        #其他人的权限

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


##设定

setfacl -m u:lee:rwx /mnt/file        #设定lee用户对file文件可以读写执行

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

setfacl -m g:student:rwx  /mnt/file    #设定student组对文件可以读写执行

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

setfacl -x u:lee /mnt/file        #在权限列表中删除用户lee的信息

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


setfacl -x g:student    /mnt/file    #在权限列表中删除student组的信息

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

setfacl -b   /mnt/file            #关闭权限列表那么,"+"消失

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】



##mask值

#mask值是能够赋予用户权限的最大值
#当设定acl列表后,如果用chmod命令缩小文件的权限,那么mask值会被更改
#

chmod 600 /mnt/file        #做这样的动作mask值会发生改变

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】

#####在更改前#####
file: mnt/file
owner: root
# group: root
user::rw-
user:lee:rwx
group::---
mask::rwx

other::---

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】


#####更改后######
file: mnt/file
owner: root
# group: root
user::rw-
user:lee:rwx            #effective:---   此位置表示有效的权力
group::---
mask::---

other::--

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】



###恢复###

setfacl -m m:rwx /mnt/file        #用此命令可以恢复mask的值

linux学习入门 基础部分(6)【文件属性,目录属性,更改组,权限识别,默认权限,特殊权限,权限列表】




####acl列表的默认权限#####
#权限针对与目录生效
#当对目录设定普通的权限列表后,是不能取定特定用户对在目录中新建的文件由指定权限的
#如果需要权限自动添加到新建文件上那么要设定目录的默认权限

setfacl -m d:u:student:rwx /mnt/westos    ##设定在westos目录中
                      ##新建文件对student用户有rwx权限
                      ##对已经存在的文件无效
                      ##对目录本身无效