IT评测·应用市场-qidao123.com
标题:
Linux 中文件的权限阐明
[打印本页]
作者:
三尺非寒
时间:
2024-12-1 16:35
标题:
Linux 中文件的权限阐明
一:文件权限类型
Linux中文件的权限可以大致分为默认权限、平凡权限和特殊权限三大类;
默认权限:新建文件或目次时自动赋予的初始权限
平凡权限:包括文件或目次的读(r)、写(w)、执行(x)权限。
特殊权限:对文件或目次的执行行为进行控制,包含 SUID、SGID、和 Sticky Bit
二:默认权限管理
Linux中创建文件的默认权限是由umask的值决定,而且另有个特点就是root用户的umask值宁静凡用户的umask值不一样;
1. 查看当前用户的umask值
umask的值是三位八进制数字,它表示需要去掉的权限。最前面的0表示这是一个八进制数。
# 在终端输入 umask 可以查看当前的 umask 值
ehigh@ubuntu:~$ umask
0002
root@ubuntu:~# umask
0022
复制代码
2. 修改当前用户的umask值
命令行修改umsk只会临时见效,系统重启后就失效了。
例如
:
umask 026
复制代码
3. 根据umask盘算默认权限
非目次文件:666 - umask值 ,如果结果为奇数就 + 1
目次文件:777 - umask值
例如
:umask为0002,文件的默认权限为:
666 - 002 = 644
复制代码
文件默认权限基准值是666 是因为文件一般不需要可执行权限;
目次默认权限基准值是777 是因为目次需要“执行”权限才气进入和列出内容;
盘算非目次文件权限时,如果结果是奇数阐明具有执行权限,+1可以去掉其执行权限;
三:平凡权限管理
1. 三种平凡权限阐明
1.1 对于非目次文件来说
读取权限 (r):这意味着用户可以查看文件的内容。
写入权限 (w):这意味着用户可以修改或删除文件。
执行权限 (x):这意味着用户可以执行文件(如果它是一个可执行文件或脚本)
1.2 对于目次文件来说
读取权限 (r):允许列出目次的内容。
写入权限 (w):允许在目次中创建、删除或重命名文件。
执行权限 (x):允许进入目次并访问其内容。
目次的最小权限是执行权限,既对于一个目次来说,必须要保证有执行权限,因为目次是一种特殊的文件类型,用于存储其他文件和目次。对于一个目次来说,必须拥有执行权限才气进入这个目次。不然连目次都没法进入。
2. 查看某个文件的权限信息
2.1 利用 ls -l
root@ubuntu:/home/ehigh# ls -l time_stamp.log
-rw-r--r-- 1 root root 11 10月 16 19:05 time_stamp.log
复制代码
2.2 利用 stat
root@ubuntu:/home/ehigh# stat time_stamp.log
File: time_stamp.log
Size: 11 Blocks: 8 IO Block: 4096 regular file
Device: 801h/2049d Inode: 8936463 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2024-09-26 09:59:52.000000000 +0800
Modify: 2024-10-16 19:08:20.824239766 +0800
Change: 2024-10-16 19:08:20.824239766 +0800
Birth: -
复制代码
3. 修改某个文件的权限信息
通过chmod命令可以修改某个文件的权限信息,chmod有两种格式,字符格式和数字格式。
3.1 chmod 的符号模式
符号模式:用一个字符来表示某个权限,通过+、-、=符号来确认是增加权限还是去除权限。
表示用户:
a:表示所有的意思,包括文件所有者、所属组和其他用户
u:表示的是文件所有者
g:表示的是文件所属组
o:表示的是其他用户
执行的利用:
+:表示在原有权限的基础上加上指定权限
-:表示在原有权限的基础上减去指定权限
=:表示清空原有权限,利用当前的权限
权限类型:
x:表示可执行权限
r:表示可读权限
w:表示可写权限
-:单独的 - 表示无权限
例如:
# 给文件所有者增加可执行权限
chmod u+x file_name
# 给所有用户(所有者、所属组、其它用户)增加可执行权限
chmod a+x file_name
# 去除其它用户的r权限
chmod o-r file_name
# 给文件所有者重新赋予权限
chmod a=rxw file_name
复制代码
3.2 chmod 的数字模式
数字模式由
三个八进制数字构成
,从左到第一个数字代表文件所有者权限,第二个数字表示文件所属组权限,第三个数字表示其他用户权限。
类别的权限(属主、组用户、其他用户)都是通过这些数字的组合来表示
1:表示可执行权限
2:表示可写权限
4:表示可读权限
0:表示没有权限
例如
:
# 表示给所有者、所属组和其他用户都授予读写执行权限 7=4+2+1 表示具有读写执行权限
chmod 777 file_name
复制代码
四:特殊权限管理
1. 三种特殊权限阐明
1.1 SUID 权限
默认状态
;默认无SUID权限
应用场景
:用于可执行文件上,如果某个文件无可执行权限,则SUID不见效
权限作用
:任何用户执行该文件时,都会以文件属主的身份来运行该文件,而不仅仅是执行用户的身份。
权限位置
:出如今文件所有者可执行权限位置
权限表示
:文件
所有者的可执行权限位置
会变为s或S 表示设置了SUID
rws:表示 SUID 已启用,并且文件的所有者具有对该文件的执行权限,此时SUID会见效;
rwS:表示瑞谈SUID已启用,但是文件所有者对这个文件没有执行权限,此时SUID不见效;
权限设置
:
符号发:chmod u+s filename (只能给文件所有者 u 添加)
数字法:chmod 4755 filename(数字 4 代表 SUID,设置时在通例权限前面加上4)
1.2 SGID 权限
默认状态
;默认无SGID权限
应用场景
:用于可执行权限大概目次
权限作用
:
应用于可执行文件时:执行改文件的用户会以属组的身份来运行该文件
应用于目次文件时:所有在该目次中创建的文件或子目次将自动继承该目次的所属组,而不是创建者的有效组。
权限位置
:出如今文件所属组可执行权限位置
权限表示
:如果
所属组的可执行权限位
变为了s或S,则表示设置了SGID权限。
rwxr-sr-x:具有 SGID 权限,并且文件或目次对组用户有执行权限。
rwxr-Sr-x:具有 SGID 权限,但文件对组用户没有执行权限。
权限设置
:
符号法:chmod g+s filename(只能给文件所有者g 添加)
数字法:chmod 2755 filename(数字 2 代表 SGID,设置时在通例权限前面加上2)
1.3 Sticky Bit
默认状态
;默认无 Sticky Bit 权限
应用场景
:目次文件
权限作用
:只有文件的所有者才可以删除或重命名文件,防止用户在公共目次中删除其他用户的文件。
权限位置
:出如今文件其他用户可执行权限位置
权限表示
:文件
其他用户的执行权限位
变为了t或T,表示设置了 Sticky Bit
rwxrwxrwt:具有 Sticky Bit 权限,并且目次对其他用户有执行权限;
rwxrwxrwT:具有 Sticky Bit 权限,但目次对其他用户没有执行权限;
权限设置
:
符号法:chmod o+t filename(省略 o 也可以直接加上 Sticky Bit
数字法:chmod 1755 filename(数字1 代表 Sticky Bit ,设置时在通例权限前面加上1)
例如:passwd命令设置有SUID权限:
平凡用户利用 passwd 命令修改本身的暗码时,需要访问 /etc/shadow 文件,但是该文件只有 root 用户才有权限访问。
为了允许平凡用户修改本身的暗码,passwd 程序需要拥有 SUID 权限,这样平凡用户在运行 passwd 程序时,就会暂时获得 root 用户的权限,可以访问 /etc/shadow 文件并修改本身的暗码。
例如:temp目次设置有 Sticky Bit 权限
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/)
Powered by Discuz! X3.4