Linux运维入门~6.文件权限管理

出于安全的考虑,多用户操作系统需要具备保障个人隐私和系统安全的机制。在Linux中,无论是文档还是硬件设备都以文件的形式存在,

相应地,安全机制也主要表现为对文件访问权限的控制。要保证相应的文件被可用的用户操作。

本节就是linux相应的文件权限管理。

1.查看文件权限

ls -l         文件
ls -ld       目录
ll             文件
ll -d        目录

2.文件权限的读取

1)文件类型

- rw- r-- r-- 1 root root 0 Oct     8  07:30 westos

-           空文件,或者文本
d          目录
l            软链接
s           socket 套接字
b           block    块设备
c           字符设备

2)文件权限

rw- r-- r--

1    2   3

1.[u] 文件拥有者对文件能做什么操作
2.[g] 文件所有组对文件能做什么操作
3.[o] 其他人对文件能做什么操作

3)- rw- r-- r-- 1 root root 0 Oct     8  07:30 westos

对文件:文件硬链接个数(文件内容被记录的次数)
对目录:目录中子目录的个数

4)- rw- r-- r-- 1 root root 0 Oct     8  07:30 westos

文件的所有人

5)- rw- r-- r-- 1 root root 0 Oct     8  07:30 westos

文件所有组

6)- rw- r-- r-- 1 root root 0 Oct     8  07:30 westos

对文件:文件大小
对目录:目录中子文件元数据(matedate可以理解为文件的属性)大小

7)- rw- r-- r-- 1 root root 0 Oct     8  07:30 westos

文件被修改的时间

8)- rw- r-- r-- 1 root root 0 Oct     8  07:30 westos

文件的名称

3.改变文件的所有人和所有组

命令:chown|chgrp

chown       username    文件|目录
chown       user.group   文件|目录
chown    -R    user.group    目录

chgrp        group             文件|目录
chgrp    -R    group          目录

注意:R 表示递归,即目录下都改变

4.改变文件的权限

1)rwx三种权限

r
    对文件:是否可以查看文件中的内容   --->cat file
    对目录:是否可以查看目录中有什么子文件或者子目录 ---> ls dir
w
    对文件:是否可以改变文件里面记录的字符
    对目录:是否可以对目录中子目录或子文件的元数据进行更改
x
    对文件:是否可以通过文件名称调用文件内记录的程序
    对目录:是否可以进入目录

2)更改方式
命令:chmod    <u|g|o><+|-|=><r|w|x>    文件|目录

例:

chmod     u+x    /mnt/file1
chmod     g-r    /mnt/file2
chmod    ug-r    /mnt/file3
chmod    u-r,g+x    /mnt/file4
chmod    -r    /mnt/file5
chmod    o=r-x    /mnt/file6

另:

rwx
210
r=4
w=2
x=1

rw-|r--|r--  =644

chmod  644  file

5.umask

系统建立文件是默认保留的权力

永久更改umask
vim /etc/profile        系统配置文件

59 if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
60     umask 002        普通用户的umask
61 else
62     umask 077        超级用户的umask
63 fi

vim /etc/bashrc        ##shell配置文件

source /etc/profile       
source /etc/bashrc                      重新读取文件,可以使改动立即生效

6.特殊权限

1)sticky    粘制位
作用:只针对目录生效,当一个目录上有sticky权限时,在这个目录中的文件智能被文件的所有者删除

设定方式:
    chmod o+t       目录
    chmod 1xxx     目录

2)sgid                  强制位
作用   对文件:只针对与二进制可执行文件当文件上有sgid时任何人执行此文件产成的进程都属于文件的的组
           对目录:当目录上有sgid权限时任何人在此目录中建立的文件都属于目录的所有组

设定方式
    chmod g+s    文件|目录
    chmod 2xxx   文件|目录

3)suid                冒险位
    作用:只针对与2进制可执行文件,当文件上有suid时任何人执行这个文件中记的程序产生的进程都属于文件的所有人
    
设定方式
    chmod u+s       文件
    chmod 4xxx      文件

7.acl权限

让特定的用户对特定的文件拥有特定的权限

rw-rwxr--+........acl开启

getfacl file                    查看acl开启的文件的权限
   
    user::rw-                   文件拥有人的权限
    user:kiosk:rwx         指定用户的权限
    group::r--                  文件拥有组的权力
    mask::rwx                能赋予用户的最大权力伐值
    other::r--                   其他人的权限

1)acl列表的管理

setfacl  -m u:username:rwx file      设定username对file拥有rwx权限
setfacl  -m g:group:rwx    file          设定group组成员对file拥有rwx权限
setfacl  -x u:username    file           从acl列表中删除username
setfacl  -b file                                   关闭file上的acl列表

2)mask值
在权限列表中mask标示能生效的权力值
当用chmod减小开启acl的文件权限时mask值会发生改变

chmod g-w westos

如果要恢复mask值
setfacl -m m:rw westos

3)acl的默认权限设定
acl默认权限只针对目录设定
注意:acl权限只针对设定完成之后新建立的文件或目录生效,而已经存在的文件是不会继承默认权限

setfacl -m d:u:student:rwx /mnt/westos

写在最后,如果大家喜欢linux运维方面的知识,欢迎关注本博主,会每周更新与linux运维相关的一些小知识,帮助大家入门

愿你与我一同成长!

往期:

ttps://blog.csdn.net/Stella_Pooter/article/details/82951345        Linux运维入门~1.虚拟机使用

https://blog.csdn.net/Stella_Pooter/article/details/82952307      Linux运维入门~2.命令行使用技巧

https://blog.csdn.net/Stella_Pooter/article/details/82960344      Linux运维入门~3.文件管理

https://blog.csdn.net/Stella_Pooter/article/details/82971516      Linux运维入门~4.输入输出管理与vim管理

https://blog.csdn.net/Stella_Pooter/article/details/82983752      Linux运维入门~5.用户管理

Never say die

猜你喜欢

转载自blog.csdn.net/Stella_Pooter/article/details/82986125