Fork me on GitHub

Linux初级知识:权限管理

权限管理

如何知道自己对相应文件/目录的权限大小?

image

第一列       第二列   第三列  第四列
-rw-r--r--    1      root    root    


第一列:
-rw-r--r--
文件类型     属主     属组     其他用户  (权限) 
   -         rw-     r--      r--

第二列:
硬链接个数为1个

第三列:
属主是root

第四列:
属组是root

第五列:
文件大小

01.rwx的含义

r 是可读
w 是可写
x 是执行

可以用数字来表示rwx相应的位置
r 是 4
w 是 2
x 是 1

因此:
rw-r--r-- 可以表示为 644 (创建文件时默认权限)

rwxr-xr-x 可以表示为 755 (创建目录时默认权限)

image

02.修改文件权限

方法1.使用rwx来修改文件权限


前提知识:ugo 
u # 表示属主位 user
g # 表示属组位 group
o # 表示其他   other

案例1.授权属主x权限

image


案例2.授权属组wx权限

image


案例3.将属主的w权限删除

image


案例4.取消属组的所有权限

image


案例5.授权属组和其他用户x权限

image


案例6.限制所有位x权限

image

不使用 ugo 的效果(给ugo用户的r , w , x 权限全部清除)

image


案例1.给所有位添加x权限

image


案例2.给所有位添加r权限

image


案例3.给所有位添加w权限

image

注意:只给属主增加了 w 权限

案例4.给所有位限制r权限

image


案例5.给所有位限制x权限

image


案例6.给所有位限制w权限

image

注意:-w 只限制了属主的 w 权限

使用 a (all)

案例1.给ugo用户都限制x功能

image


案例2.给ugo用户都恢复x功能

image


使用 = 赋值

作用:先清空,后赋值

案例1.给ugo用户rwx权限都清空

image

案例2.给ugo用户rwx权限都恢复

image

方法2.使用数字赋值的方式修改文件权限

案例1.授权文件权限为rwxr--r--

image


案例2.授权文件权限为rw-rw-rw-

image


案例3.授权文件权限为r-------x

image


案例4.授权文件权限为rwxrwxrwx

image

03.文件rwx的实际作用

test01 窗口下执行
案例1.给普通用户r权限,查看、修改、执行文件

image

image
权限只读

image

image


案例2.给普通用户w权限,查看、修改、执行文件

image

image

没有r权限什么都看不到,无法使用vim,只能使用 > 和 >> 盲目追加信息


案例3.给普通用户x权限,查看、修改、执行文件

image

image

追加 r 权限后,可以执行文件

image

总结:查看文件只需要 r 权限
     想要修改文件需要 rw 权限
     想要执行文件需要 rx 权限

04.rwx对于目录的作用

创建目录 a

案例1.给普通用户r权限,查看、进入、增删目录文件

image

image

案例1总结:目录只有 r 权限只能看到目录下的文件名,无法进入 a 目录

案例2.给普通用户x权限,查看、进入、增删目录文件

image

image

案例2总结:目录只有 x 权限可以进入目录下,但是无法查看目录下文件、创建文件、删除文件等操作

案例3.给普通用户w权限,查看、进入、增删目录文件

image

image

案例3总结:什么都干不了
目录权限总结:
1.如果想要正常进入目录并查看目录下的文件,需要有 r 和 x 权限。
2.如果想要在目录下创建文件、删除文件等,需要有 rwx 全部权限。

注意:文件的rwx权限是可读、可写、可执行,不影响目录 w 删除文件权限

例:

image

05.Linux系统默认权限

image

创建文件的默认权限:rw-r--r-- 644
创建目录的默认权限:rwxr-xr-x 755

系统通过UMASK值控制默认的创建权限:
1.如何查看UMASK值:umask 回车

创建文件的默认权限值=文件最高权限值(666)- UMASK默认值[UMASK奇数值位减完后+1]
创建目录的默认权限值=目录最高权限值(777)- UMASK默认值

例:

image

文件默认权限:644 = 666 - 022
目录默认权限:755 = 777 - 022

临时修改UASK值: umask 002 # 将umask值修改为 002

image

c.txt的默认权限:664 = 666 - 002
d目录的默认权限:775 = 777 - 002

例:umask有奇数位的情况

image

image

umask=003时:
a.txt的默认权限:664 = 666 - 003 + 001
b目录的默认权限:774 = 777 - 003

umask=033时:
c.txt的默认权限:644 = 666 - 033 + 001 + 010
d目录的默认权限:744 = 777 - 033

06.隐藏权限

作用:保护系统文件的安全性:
1.查看文件隐藏权限:lsattr file
2.设置隐藏权限属性:
	chattr +i file # 隐藏i权限的file 任何用户无法对 file 进行任何操作
	chattr +a file # 隐藏a权限的file 任何用户无法对 file 进行任何操作(除使用 >> file 追加内容外)
3.取消隐藏权限:
	chattr -i file
	chattr -a file
	
	
	
注意:隐藏权限主要是为了保护文件安全,企业中还可以使用第三方安全软件限制保护文件的安全。

例:对a.txt文件加 i 隐藏权限,并对 a.txt进行查看、删除、修改
image

image

image

image

总结:root只能查看,不能删除和修改a.txt文件

07.特殊权限位

suid(setuid)给命令添加s权限,使得其他用户在执行时拥有属主的权限
命令:chmod u+s 命令

例:
root:
image

test01:
image

赋予 s 权限后:
root:
image

test01:
image


粘滞位:控制自己的文件只能自己管理  (粘滞位权限 1777)

例:
没有添加粘滞位权限前,test01能够删除root属主的文件
root:
image

image


添加粘滞位权限后:

root:

image

test01:

image

test01:

image

test02:

image

root:

image

test02:

image

总结:目录下所有用户有rwx权限的情况下,在粘滞位添加前,普通用户之间能够互相删除彼此的文件,普通用户甚至也能够删除root管理员的文件。

添加粘滞位之后:root能够删除普通用户的文件,但是普通用户不能删除root管理员的文件,同时普通用户之间也不能互相删除彼此的文件。

posted @ 2025-11-21 21:32  我该想点什么  阅读(11)  评论(0)    收藏  举报