Linux中文件或目录的基本权限管理-linux修改文件名

权限分类

只读:只能读取内容,不能做任何更改操作

只写:能读取内容,也能修改内容

执行:只能做为程序执行

创建时权限

默认所有者拥有全部权限【读、写、执行】;同组用户和其它用户则权限相对较小

权限访问分为三个组:属主【读、写、执行】 | 属主的组成员【读、写、执行】 | 其它用户【读、写、执行】

查看权限命令: ll 文件名或目录名 或者 ls -l 文件名或目录名

Linux中文件或目录的基本权限管理

查看文件的权限结果图

解析【用空格分开方便说明】:

- rw- --- --- . 1 root root 4360 Jun 26 12:41 sshd_config

类型 属主 属主组 其它用户 SELinux安全上下文 文件个数 属主 属主组 大小 最后修改时间 文件名

r: 表示读取【read】

w:表示写【write】

x:表示执行【execute】

-:在权限位,表示无权限,在类型位,表示常规文件

权限更改命令【chmod】

语法: chmod [userType] [signal] [type] [filename]

userType:

  1. u:表示属主【user】
  2. g:表示属主的组【group】
  3. o:表示其它【others】
  4. a:表示所有用户【all】;如果不指定,则表示所有

signal:

  1. +:添加权限
  2. -:取消权限
  3. =:赋予权限并取消其它的所有权限

type:

  1. r:读取
  2. w:写
  3. x:执行
  4. s: 特殊权限【不推荐使用】

示例命令:

chmod u+x,g+w sshd_config # 注意:不同参数之间需要使用逗号分隔

Linux中文件或目录的基本权限管理

同时修改属主与属主组的权限,并查看结果

进价

大多数人都喜欢使用数字设定法来授权,即:

0:无权限

1:执行

2:写

4:读取

rwx 就等价 421;即:每一个数字7就表示【userType】的权限,所以在使用 chmod 设定的时候,就可以使用3个【0124】组成的和来分别表示【u、g、o】的权限

上面示例命令就可改写为:

chmod u+x,g+w sshd_config 等价于 chmod 720 ssdh_config

注意:使用数字表示法,相当于是使用直接赋予权限,即:signal 为 =

改变属主【chown】

语法: chown [option] [owner] [filename]

option:

  1. -R【递归的修改】
  2. -c 【属主确实已更新,才显示更改动作】
  3. -h【改变符号链接文件的属主时,不影响链接指向的文件】
  4. -f 【修改出错也不显示错误信息】
  5. -v【显示属主变更的详细资料】

示例:

chown -R ysp:ken data

解析:对data递归的修改其 属主为【ysp】与属主组为【ken】

特殊权限【suid和sgid】

此两个权限表示在执行操作的时候,suid表示拥有属主的权限,sgid表示拥有属主组的权限;即:权限被放大了,同时会有相关安全问题

此两个都占据 x 位,如果x位已设置,则再设置此权限时,x位变为小写的 s;如果没有设置x位,在设置此权限时,x位为大写的S

Linux中文件或目录的基本权限管理

添加SUID或SGID权限结果

推荐阅读