当前位置: 首页 > web >正文

Linux---第三天---权限

1.切换用户

普通用户切换到root用户

su  # 仅切换用户身份,环境变量保持当前用户的配置
su -  # 或 su --login,切换用户并加载目标用户的环境变量(推荐,更彻底)

root用户切换到普通用户

su test  # 切换到test用户,环境变量不变
su - test  # 切换到test用户并加载其环境变量

2.文件访问者分类

1.文件和文件目录的所有者:u  ---user

2.文件和文件目录的所有者所在的组的用户:g ---Group

3.其他用户: o --- other

3.文件类型和访问权限(事务属性)

文件类型:

d: 文件

-:普通文件

i:软链接

b:块设备文件

p:管道文件

c:字符设备文件

s:套接口文件

基本权限:

◦ 读(r/4):Read对⽂件⽽⾔,具有读取文件内容的权限;对⽬录来说,具有浏览该目录信息的权限
◦ 写(w/2):Write对⽂件⽽⾔,具有修改文件内容的权限;对目录来说具有删除移动目录内
⽂件的权限
◦ 执行(x/1):execute对文件⽽言,具有执行⽂件的权限;对⽬录来说,具有进⼊目录的权

◦ “—”表示不具有该项权限

文件权限值的表示方法:

1.字符表示方法,rwx

2.8进制数值表示方法

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

1.设置文件的访问权限  (chmod)

R -> 递归修改⽬录⽂件的权限

格式:chmod [参数] 权限 ⽂件名 

• ⽤⼾表⽰符+/-=权限字符

◦ +:向权限范围增加权限代号所表⽰的权限
◦ -:向权限范围取消权限代号所表⽰的权限
◦ =:向权限范围赋予权限代号所表⽰的权限

◦ ⽤⼾符号:
◦ u:拥有者
◦ g:拥有者同组⽤
◦ o:其它⽤⼾
◦ a:所有⽤⼾     
◦ 实例:
▪ chmod u+w /home/abc.txt
▪ chmod o-x /home/abc.txt
▪ chmod a=x /home/abc.txt
• 三位8进制数字
▪ chmod 664 /home/abc.txt
▪ chmod 640 /home/abc.txt

2.修改文件的拥有者(chown)

chown [参数] ⽤⼾名 ⽂件名 chown user1 f1
chown -R user1 filegroup1

3. chgrp

功能:修改文件或目录的所属组

格式:chgrp [参数] 用户组名文件名

常用选项:-R 递归修改文件或目录的所属组

实例: chgrp users /abc/f2

4.umask

功能:

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

格式:umask 权限值
说明:将现有的存取权限减去权限掩码后,即可产⽣建⽴⽂件时预设权限。超级⽤⼾默认掩码值为0022,普通⽤⼾默认为0002。

使用sudo会出现问题,可以在 /etc/sudoers中添加用户

用户名 ALL=(ALL:ALL) ALL

5.目录的权限

1.可执⾏权限: 如果⽬录没有可执⾏权限, 则⽆法cd到⽬录中.

2.可读权限: 如果⽬录没有可读权限, 则⽆法⽤ls等命令查看⽬录中的⽂件内容.

3.可写权限: 如果⽬录没有可写权限, 则⽆法在⽬录中创建⽂件, 也⽆法在⽬录中删除⽂件.

文件的新建和删除权限是由目录决定的

如果别人在你的工作目录里创建了文件,但是你没有写读执行的权限,这时,你是可以删除这个文件的

6.粘滞位

[root@localhost ~]$ chmod +t /home/ # 加上粘滞位
[root@localhost ~]$ ls -ld /home/
drwxrwxrwt. 3 root root 4096 9⽉ 19 16:00 /home/
[root@localhost ~]$ su - litao
[lisi@localhost ~]$ rm /home/abc.c #litao不能删除别⼈的⽂件
rm:是否删除有写保护的普通空⽂件 "/home/abc.c"?y
rm: ⽆法删除"/home/abc.c": 不允许的操作

当⼀个⽬录被设置为"粘滞位"(⽤chmod +t),则该⽬录下的⽂件只能由

1. 超级管理员删除

2. 该⽬录的所有者删除

3. 该⽂件的所有者删除

http://www.xdnf.cn/news/17372.html

相关文章:

  • Ethereum: 像Uniswap V3贡献者一样开发,克隆、编译与测试v3-core
  • 二叉树算法之【中序遍历】
  • 最新教程 | CentOS 7 内网环境 Nginx + ECharts 页面离线部署手册(RPM 安装方式)
  • Kotlin中String的==相等比较符
  • TCP 如何保证可靠性
  • 深入解析嵌套事务:原理与应用
  • uniapp vue3中使用pinia 和 pinia持久化(没有使用ts)
  • Java NIO 核心原理与秋招高频面试题解析
  • Gitee上免费搭建博客
  • 嵌入式学习---在 Linux 下的 C 语言学习 Day10
  • 《C语言》指针练习题--2
  • Redisson中的分布式锁
  • uni-app vue3 小程序接入 aliyun-rtc-wx-sdk
  • Vscode Data Wrangler 数据查看和处理工具
  • 如何为WordPress启用LiteSpeed缓存
  • Linux 限制 root 登录 IP 地址的方法
  • Activiti 中各种 startProcessInstance 接口之间的区别
  • Java——详解形参实参方法的重载
  • .NET PDF处理组件IronPDF:如何通过 AI 简化开发人员处理 PDF的方式
  • platform总线简介和使用场景说明
  • 设计模式-装饰模式 Java
  • Web开发-JS应用WebPack构建打包Mode映射DevTool源码泄漏识别还原
  • [激光原理与应用-169]:测量仪器 - 能量型 - 光功率计(功率稳定性监测)
  • RepoCoder:仓库级代码补全的迭代检索生成框架解析与应用前沿
  • 基于Python+Vue+Mysql实现(物联网)智能大棚
  • 【tips】css模仿矢量图透明背景
  • Vue 3 入门教程 9 - 表单处理
  • change和watch
  • 酉矩阵(Unitary Matrix)和随机矩阵
  • 拥抱云原生:从传统架构到云原生架构的演进与实践