首页 > 其他分享 >基本权限和归属、查看权限与归属关系、修改权限、权限数字表示、修改归属关系

基本权限和归属、查看权限与归属关系、修改权限、权限数字表示、修改归属关系

时间:2024-08-31 16:54:23浏览次数:4  
标签:etc 归属 用户 chmod 修改 chown 权限 目录

1.基本权限与归属

1)基本权限

读取:允许查看内容-read               r

写入:允许修改内容-write              w

可执行:允许运行和切换-excute     x

对于文本文件:

r读取权限:cat、less、grep、head、tail

w写入权限:vim、> 、 >>

x可执行权限:Shell与Python


对于目录:

r读取权限:ls命令查看目录内容

w写入权限:能够创建、删除、修改等目录的内容

x 执行权限:能够cd切换到此目录下(进入此目录)


2)归属关系

所有者(属主):拥有此文件/目录的用户-user   u

所属组(属组):拥有此文件/目录的组-group    g

其他人:除所有者、所属组以外的用户-other   o

执行 ls -l或者ls -ld 命令查看

以-开头:文本文件   例子:-rwxr-xr-x

以d开头:目录      例子:drwxr-xr-x

以l开头:快捷方式  例子:lrwxr-xr-x

3)Linux中判断用户具备的权限:

1.首先查看该用户或者组是否有ACL策略

2.查看用户,对于该数据所处的身份,顺序所有者>所属组>其他人,原则是匹配即停止

3.查看相应身份的权限位

2.修改数据的权限chmod

chmod   u-w    /nsd10      #所有者去掉w权限

chmod   u+w  /nsd10        #所有者加上w权限

chmod   g+w   /nsd10       #所属组加上w权限

chmod    g=r    /nsd10      #所属组重新定义只有r权限

chmod    a=rwx    /nsd10   #a表示所有人

chmod  u=---,g=rx,o=rwx    /nsd10

mkdir   -p   /opt/aa/bb/cc

chmod  -R   o=---   /opt/aa  # -R:递归修改权限

3.chown修改归属关系

–chown 属主        文件...

–chown 属主:属组   文件...

–chown :属组       文件...

groupadd   tmooc            #创建组tmooc

useradd  lisi                  #创建用户lisi

chown   lisi:tmooc  /nsd15   #修改所有者与所属组

chown   zhangsan   /nsd15   #仅修改所有者

chown   :root  /nsd15        #仅修改所属组

4.ACL策略管理

文档归属的局限性:

–任何人只属于三种角色:属主、属组、其他人

–针对特殊的人实现更精细的控制

acl访问策略作用:

–能够对个别用户、个别组设置独立的权限

setfacl   -m   u:dc:rx   /nsd19      #单独赋予dc用户rx权限

getfacl   /nsd19                     #查看ACL策略

setfacl   -x  u:zhangsan  /nsd22    #删除指定用户ACL

setfacl   -b   /nsd22                #清除目录所有ACL策略

setfacl  -m   u:lisi:---   /home/public

#ACL策略-黑名单的使用(单独拒绝某些用户)

setfacl  -Rm   u:dc:rwx   /opt/aa   #-R:递归设置ACL策略

三种特殊权限(Sticky Bit ,SGID, SUID

1) 粘滞位,Sticky Bit 权限

–占用其他人(Other)的 x 位

–显示为 t 或 T,取决于其他人是否有 x 权限

–适用于目录,用来限制用户滥用写入权

–在设置了t权限的目录下,即使用户有写入权限,也不能删除或改名其他用户文档

chmod   o+t    /nsd26#赋予粘滞位特殊权限

drwxr-xr-t. 2 root root 6 6月  22 15:16 /nsd26

2)Set GID权限(SGID权限

–占用属组(Group)的 x 位

–显示为 s 或 S,取决于属组是否有 x 权限

–对目录有效

–在一个具有SGID权限的目录下,新建的文档会自动继承父目录的属组身份

chmod  g+s  /nsd28     #赋予SGID特殊权限

drwxr-sr-x. 2 root root 6 6月  22 15:18 /nsd28

3)附加权限Set UID(SUID)权限

–占用属主(User)的 x 位

–显示为 s 或 S,取决于属主是否有 x 权限

–仅对可执行的程序有意义

–当其他用户执行带SUID标记的程序时,具有此程序属主的身份和相应权限

chmod   u+s   /opt/hahadir  #赋予SUID特殊权限

drwsr-xr-x. 2 root root 6 6月  22 15:22  /opt/hahadir


6.权限利用扩展

1)权限利用数字的方式表示

基本权限:

利用数字4表示读取权限(r)

利用数字2表示写入权限(w)

利用数字1表示执行权限(x)

附加权限:

利用数字4表示suid

利用数字2表示sgid

利用数字1表示t

chmod  3755  /nsd30 #附加权限写在第一位,基本权限写在后边


2)文件/目录的默认权限

– 新建文件/目录的默认权限

一般文件默认均不给 x 执行权限

– 其他取决于 umask(权限掩码) 设置

– 新建目录默认权限为755

– 新建文件默认权限为644


案例:实现natasha用户新建数据,目录权限为700文件为600

vim   /home/natasha/.bashrc  #修改家目录配置文件

umask   077                   #新增配置,指定权限掩码值

umask                          #查看权限掩码

3)手动建立家目录

/etc/skel是新建用户时,会以此目录作为模板建立用户家目录

]# useradd    harry

]# rm  -rf   /home/harry

]# cp  -r    /etc/skel     /home/harry

]# chown   -R   harry:harry   /home/harry

4)常见故障:递归设置权限错误补救

chmod   -R  000   /nsd26 #设置nsd26目录所有权限为000

find   /nsd26   -type   d  -exec  chmod  755  {}   \;

#查找nsd26内目录类型设置权限为755

find   /nsd26   -type  f  -exec  chmod  644   {}    \;

#查找nsd26内文件类型设置权限为644


5)实操:请问实现lisi用户可以读取/etc/shadow文件内容,您有几种办法?(至少写出三种以上)

1. 利用其他人身份

chmod  o+r  /etc/shadow

2. 利用所属组身份

chown  :lisi  /etc/shadow

chmod  g+r  /etc/shadow

3. 利用所有者身份

chown  lisi  /etc/shadow

chmod  u+r  /etc/shadow

4. 利用ACL策略

setfacl  -m  u:lisi:r  /etc/shadow

标签:etc,归属,用户,chmod,修改,chown,权限,目录
From: https://blog.51cto.com/u_16981549/11883161

相关文章

  • Debian修改默认Python
    Debian修改默认Python     Linuxversion4.9.0-4-686-pae这是linux系统版本,我这边使用的是debian9.2还是9.0来着,应该都是通用的。    系统中默认安装了多个版本的python,其中默认使用的是python2.7,现在我所学习的是python3的命令,为了便于使用,需要把python3设置为默......
  • linux查看目录的权限 设置目录权限
    动一下小手点一下赞。谢谢!你的赞就是我更新的动力。在Linux系统中,每个文件和目录都有特定的权限控制,包括读、写和执行权限。这些权限对于保护文件和目录的安全性非常重要,因此在日常使用中,我们经常需要查看文件和目录的权限设置。本文将介绍如何在Linux系统中查看目录的权限,并说明......
  • Android系统给所有apk默认权限
        Android系统的定制开发中,经常会有客户要求赋予他们提供的应用程序(APK)所默认的所有权限;百度上有多种版本可以给与默认权限,但是经过博主试验,都是比较复杂麻烦的操作;在这里博主给出一个简单方便方法,直接上代码;---a/frameworks/base/services/core/java/com/android/......
  • 变量或常量修改
    有些变量其实可能是常量,修改将产生一些不预期的结果。字符串修改C语言字符串char*变量本质是指针,如果是字面量初始化,存放位置可能位于只读区,修改内容将产生崩溃。chars[]=“hello”与char*s=“hello”截然不同,前者一定可修改,而后者不一定。反汇编这两段代码,能看......
  • 修改 Linux 默认 Shell 用 chsh -s /bin/zsh 命令不生效,提示 chsh: Shell not changed
    我想现在应该有很多人都已经使用zsh作为默认的Shell了,尤其是搭配oh-my-zsh之后,真是好用得飞起。一般,我们在切换系统默认的Shell的时候,都会使用 chsh-s/bin/zsh 命令来进行修改。今天我遇到一个问题,在某台老服务器上,使用这个命令无法修改,具体原因未知。始终提示——chsh:She......
  • 【QA-MISRA】在客户端如何修改当前用户的密码
    【更多软件使用问题请点击亿道电子官方网站】无法登录QAMISRAController的情况下如何修改当前用户的密码问题1、文档目标解决无法登录QAMISRAController的情况下如何修改当前用户的密码问题。2、问题场景由于客户实行集中式管理,QA-MISRAController开发人员无权登录......
  • 用python创建文件夹并授予权限(windows和linux通用)
    因为是对路径进行操作,所以使用os模块importos创建文件夹,使用os.mkdir#directory_path='要创建路径的完整路径'new_directory='D:\\test'#以windows为例,在D盘创建一个test的文件夹os.mkdir(new_directory)给文件夹授权,使用os.chmod#这里给刚创建的文件夹777的......
  • 29:函数查询,添加,修改,删除
    #_*_coding:utf-8_*_importosdeffile_handle(filename,backend_data,record_list=None,type='fetch'):#type:fetchappendchangenew_file=filename+'_new'bak_file=filename+'_bak'iftype=='fetch':......
  • 干货 | NXP NCF3321 卡保护应用阈值修改讲解
    1.前言    NCF3321是世平集团代理的NXP所研发的新一代车规级NFC前端IC,相比上代NFC前端IC性能提升巨大、支持多类型多协议卡检测、支持手机模拟NFC识别、支持手机与卡共同检测、宽范围工作温度工作更加稳定。    NCF3321是一款高度集成的高性能......
  • 博客园-awescnb插件-geek皮肤优化--浏览器ico图标修改
    简介通过js方式自定义修改博客园-awescnb插件-geek皮肤下浏览器ico图标图标准备准备自定义的图标,上传至博客园个人的相册中代码注入定义自定义HTML:博客园->管理->设置->页脚HTML代码添加相关代码//更换ico图标functionupdateICO(){varlink=docum......