Linux 权限

本文详细解释了Linux系统中的用户权限概念,包括超级用户与普通用户权限区别,文件和文件夹的访问权限分类,如rwx权限、用户角色、chmod、chown、chgrp和umask的作用,以及如何使用粘滞位提高目录安全性。
摘要由CSDN通过智能技术生成


什么是权限

在Linux下有两种用户,分别是超级用户(root)和普通用户。超级用户可以在Linux下做任何事情,几乎不受限制,而普通用户一般只能在自己的工作目录下(/home/xxx)工作,以及在系统上做有限的工作。
换句话来说,所有的权限的概念都是用来限制普通用户的,而超级用户几乎不受限制。

超级用户的命令提示符是“#”
普通用户的命令提示符事“$”

通过 su -用户名 可以进行用户之间的切换

注意:
1)从普通账号切换为root账号时,指令当中的root可省略,因为root账号只有一个。
2)该指令也可以从一个普通用户切换为另一个普通用户,输入待切换用户的账号密码即可。
3)切换用户后,若想切回上次的用户,可通过Ctrl+D实现

linux下文件属性--权限属性

文件类型

符号文件类型
d文件夹
-普通文件
l软链接(类似Windows的快捷方式)
b块设备文件(例如硬盘、光驱等)
p管道文件
c字符设备文件(例如屏幕等串口设备)
s套接口文件

基本权限

i.读(r/4)Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
ii.写(w/2)Write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限
iii.执行(x/1)execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
iv.“—”表示不具有该项权限


linux下用户角色

文件访问者的分类(人)
文件和文件目录的所有者:u---User
文件和文件目录的所有者所在的组的用户:g---Group
其它用户:o---Others 

1)对于某一文件而言,其拥有者、所属组和other就是由超级用户(root)和普通用户所扮演。
2)在Linux当中,所有用户都要隶属于某一个组,哪怕这个组只有你一个人(此时该组就以你的用户名为组名)。

3)除了所有者和组用户以外的用户都是others


linux下权限的操作

针对rwx--文件属性


字符选项的方式

若是具有可读属性,则第一个位置的字符为r;若是具有可写属性,则第二个位置的字符为w;

若是具有可执行属性,则第三个位置的字符为x。若某一位置为字符 - ,则说明不具有对应位置的属性


八进制方案


文件访问权限的相关设置方法

a)chmod
功能设置文件的访问权限
格式chmod [参数] 权限 文件名
常用选项R -> 递归修改目录文件的权限
说明只有文件的拥有者和root才可以改变文件的权限

格式:

符号功能用户符号  
+向权限范围增加权限代号所表示的权限u拥有者
-向权限范围取消权限代号所表示的权限g拥有者同组用户
=向权限范围赋予权限代号所表示的权限o其它用户
a所有用户

1)加 rwx符号

 chmod u+w /home/abc.txt
 chmod o-x /home/abc.txt

2)三位8进制数字

chmod 664 /home/abc.txt
chmod 640 /home/abc.txt
b)chowm
功能修改文件的拥有者
格式chown [参数] 用户名 文件名

实例:

 chown user1 f1
 chown -R user1 filegroup1比
c)chgrp
功能修改文件或目录的所属组
格式chgrp [参数] 用户组名 文件名
常用选项-R 递归修改文件或目录的所属组

实例:

sudo chgrp root data.txt

注意: 修改文件的所属组也需要进行权限提升。

umask--默认权限

功能:

1)查看或修改文件掩码
2)新建文件夹默认权限=0666
2)新建目录默认权限=0777
但实际上你所创建的文件和目录,看到的权限往往不是上面这个值。原因就是创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权是:mask&~umask

格式umask 权限值
说明将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。

粘滞位

大家共享一个目录,通常是root的,开放了所有的权限


目录权限

可执行权限: 如果目录没有可执行权限, 则无法cd到目录中.

可读权限: 如果目录没有可读权限, 则无法用ls等命令查看目录中的文件内容.

可写权限: 如果目录没有可写权限, 则无法在目录中创建文件, 也无法在目录中删除文件.

所以==>

就是只要用户具有目录的写权限 , 用户就可以删除目录中的文件 , 而不论这个用户是否有这个文件的写权限.???这样好像不太安全的样子。所以我们设置出来粘滞位来解决这一问题

给目录设置粘滞位 -- chmod+t

添加粘滞位后,文件夹只能由以下三种人删除
(1)超级管理员删除 (2)该目录的所有者删除(3)该文件的所有者删除

注意: 虽然目录被加上了粘滞位,但如果用户有该目录的可写权限,则不影响其在该目录下创建文件

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值