欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  科技

Linux基础知识之文件的权限(一)

程序员文章站 2022-09-24 23:09:22
Linux基础知识之文件权限(一) Linux优点之一就是它拥有多用户多任务的环境,在提供文件共享的同时也能保证用户文件的安全性。所以,设置文件的权限管理变得尤为重要。 Linux基础知识之文件权限(一) 1. 基础权限 1.1权限讲解 1.2 权限更改 chgrp:改变文件的所属群组 chmod ......

linux基础知识之文件权限(一)


linux优点之一就是它拥有多用户多任务的环境,在提供文件共享的同时也能保证用户文件的安全性。所以,设置文件的权限管理变得尤为重要。

  • linux基础知识之文件权限(一)
  • 1. 基础权限
      • 1.1权限讲解
      • 1.2 权限更改
        • chgrp:改变文件的所属群组
        • chmod :改变文件的权限
        • chmod :改变文件的权限
      • 1.3权限对文件和目录的意义
        • 对文件
        • 对目录

 

1. 基础权限

1.1权限讲解

[der@der ~]$ ls -al            # 列出当前目录下所有文件的详细信息

 

Linux基础知识之文件的权限(一)

 

以上图的最后一个文件.bash_logout为例,‘.’表示隐藏文件;

- rw- r– r– 1 der der 18 
aug 8 20:06 .bash_logout
文件类型 属主权限 属组权限 其他人
权限
连接数 文件属主 文件属组 文件大小 文件最后修改时间 文件名

权限的表示方法

字母法  r:read–>读权限;w:write–>写权限;x:excute–>执行权; 
数字法  4–>读权限;2–>写权限;1–>执行权限;

文件.bash_logout的属主为root,有rw权限;属组为root(组内可能有其他用户),有读权限;其他人有r权限;创建新用户时,该用户的属组默认为用户名。

例题:请问testgroup这个群组的成员与其他人(others)是否可以进入本目录?

drwxr-xr– 1 test1 testgroup 5238 jun 19 10:25 groups/

答:testgroup群组拥有目录的执行权,可进入该目录,没有写的权限;而othes用户没有执行权,不能进入该目录,即使有读的权限。

1.2 权限更改

命令:chgrp,chown,chmod

chgrp:改变文件的所属群组

    chgrp [option]… group  file…

[root@der_tencent ~]# su -               #切换之root用户,root才有更改文件的属性; 
[root@der_tencent ~]# touch test.txt         #用touch创建测试文件 
[root@der_tencent ~]# ls -al test.txt        #列出该文件的详细属性 
-rw-r--r-- 1 root root 0 sep 22 20:27 test.txt    #文件的属组为root 
[root@der_tencent ~]# useradd alice          #添加alice用户,默认属组问alice 
[root@der_tencent ~]# chgrp alice test.txt       #更改文件属组为alice 
[root@der_tencent ~]# ls -l test.txt 
-rw-r--r-- 1 root alice 0 sep 22 20:27 test.txt   #文件的属主已改为alice 

 

chmod :改变文件的权限

mode的表示法 
赋权表示法:u=,g=,o=

[root@der_tencent ~]# chown alice test.txt       #更改文件的属主为alice 
[root@der_tencent ~]# ls -l test.txt 
-rw-r--r-- 1 alice alice 0 sep 22 20:27 test.txt #属主已经改为alice 
[root@der_tencent ~]# chown root:root test.txt   #同时更改属主和属组 
[root@der_tencent ~]# ls -l test.txt   
-rw-r--r-- 1 root root 0 sep 22 20:27 test.txt 

chmod :改变文件的权限

mode的表示法

赋权表(user),g(group)=,o(others)=

[root@der_tencent ~]# chmod u=rwx,o=rw test.txt   #以逗号隔开选项,u的权限改为读写执行,o的权限改为读写
[root@der_tencent ~]# ls -l test.txt 
-rwxr--rw- 1 root root 0 sep 22 20:27 test.txt 

授权表示法:u+,u-;g+,g-;o+,o-

[root@der_tencent ~]# chmod g+w,g-r,o-w test.txt #g的权限加写,减去读,o减去读
[root@der_tencent ~]# ls -l test.txt 
-rwx-w-r-- 1 root root 0 sep 22 20:27 test.txt


注意:赋权表示法会覆盖其他属性,而授权法只更改指定的属性

数字法 r=4,w=2,x=1

[root@der_tencent ~]# chmod 644 test.txt #u=4+2,g=4,o=4 
[root@der_tencent ~]# ls -l test.txt 
-rw-r--r-- 1 root root 0 sep 22 20:27 test.txt #u读写权限,g读权限,o读权限 

 

1.3权限对文件和目录的意义

对文件

r (read):可读取此一文件的实际内容,命令有cat,tail,head等; 
w (write):可以编辑、新增或者是修改该文件的内容(但不含删除该文件),命令有vim,nano等; 
x (execute):该文件具有可以被系统执行的权限,例如.sh脚本文件。

对目录

r (read contents in directory):可以查看目录下的文件;例如ls命令 
w (modify contents of directory):在目录下创建文件目录,删除,更名,移动; 
x (access directory):可以进入目录;

注意:1、即使有目录的rw,没有x,不能进入目录工作; 
2、用户对目录拥有w权限,即使没有目录内文件的w权限,也可以将文件删除,即删除整个文件;