linux 权限认识及常用命令-留着有用

linux 权限


一、权限结构解析

1. 字符表示法
-rw------- 由 10 个字符组成:
第 1 位:文件类型(- 表示普通文件,d 为目录,l 为符号链接)。
第 2-4 位:所有者权限(rw- 表示可读、可写、不可执行)。
第 5-7 位:所属组权限(--- 表示无任何权限)。
第 8-10 位:其他用户权限(--- 表示无任何权限)。
2 权限转换方式
     读 r =》二进制=》十进制 =4
     写 w =》二进制=》十进制 =2
    执行x =》二进制=》十进制 =1
--举例--
drwxr--r--
d 文件
rwx   =7
r--   =4
r--   =4
所以 drwxr--r--
就表示 该目录所有者 拥有读写执行权限 所属组拥有读的权限 其他人 拥有读的权限

二 权限相关命令汇总

1. 查看文件权限

ls -l 或 ls -ld

  • 功能ls -l 用于列出文件的详细信息,包括权限、所有者、所属组、文件大小等;对于目录,ls -ld 专门显示目录本身的详细权限信息(而非目录下的文件)。
  • 示例
# 查看普通文件权限
ls -l example.txt 
# 查看目录权限
ls -ld my_directory 
  • 输出解析:输出结果如 -rw-r--r-- 1 user group 1024 Aug 15 10:00 example.txt ,其中 -rw-r--r-- 是权限位,第一个字符 - 表示这是文件(d 表示目录),接下来三组字符分别对应所有者、所属组、其他用户的权限,r 代表读权限,w 代表写权限,x 代表执行权限;user 是所有者,group 是所属组。

2. 修改文件权限

  • 功能:用于改变文件或目录的访问权限。有两种使用方式,分别是符号模式和数字模式。
  • 符号模式示例
# 给文件所有者添加执行权限
chmod u+x example.txt 
# 给所属组去掉写权限
chmod g-w example.txt 
# 给其他用户赋予读和执行权限
chmod o+rx example.txt 
  • 数字模式示例
# 将文件权限设置为所有者有读写执行权限,所属组和其他用户只有读权限
chmod 744 example.txt 
  • 数字含义r 对应 4,w 对应 2,x 对应 1,通过相加得到对应的数字,如 rwx 就是 4 + 2 + 1 = 7。

3. 修改文件所有者和所属组

  • 功能:用于更改文件或目录的所有者和所属组。
  • 示例
# 只修改所有者为 new_user
chown new_user example.txt 
# 同时修改所有者为 new_user,所属组为 new_group
chown new_user:new_group example.txt 
# 递归修改目录及其子目录、文件的所有者和所属组
chown -R new_user:new_group my_directory 

4. 更改文件所属组

  • 功能:专门用于改变文件或目录的所属组。
  • 示例
# 将文件所属组改为 new_group
chgrp new_group example.txt 
# 递归修改目录及其子目录、文件的所属组
chgrp -R new_group my_directory 

5. 查看和设置 ACL(访问控制列表)权限

getfacl 和 setfacl

  • getfacl 功能及示例:用于查看文件或目录的 ACL 权限设置。
getfacl example.txt 
  • setfacl 功能及示例:用于设置文件或目录的 ACL 权限,可针对特定用户或组设置精细的权限。
# 给 user1 设置对文件的读权限
setfacl -m u:user1:r example.txt 
# 删除针对 user1 的ACL权限设置
setfacl -x u:user1 example.txt 

6. 更改文件的特殊权限

  • 设置 SUID(Set User ID):让普通用户执行该程序时,临时拥有文件所有者的权限。
chmod u+s 可执行文件名 
  • 设置 SGID(Set Group ID):对于目录,设置后新创建的文件所属组继承该目录的所属组;对于可执行文件,普通用户执行时临时拥有文件所属组的权限。
chmod g+s 目录名或可执行文件名 

  • 设置 Sticky Bit(粘滞位):一般用于公共目录(如 /tmp ),设置后,只有文件所有者、目录所有者或 root 用户才能删除该目录下的文件。
chmod o+t 目录名 


 

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值