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

linuxOPS基础_linux权限管理

权限概述

什么是权限

​ 在多用户计算机系统的管理中,权限是指某个特定的用户具有特定的系统资源使用权利。

在Linux 中分别有读、写、执行权限

\权限针对文件权限针对目录
读r(read)表示可以查看文件内容;cat、less…表示可以(ls)查看目录中存在的文件名称
写w(write)表示可以更改文件的内容;vim 修改,保存退出表示是否可以删除目录中的子文件或者新建子目录(rm/touch/mkdir)
执行x(excute)表示是否可以开启文件当中记录的程序,一般指二进制文件(.sh)表示是否可以进入目录中(cd)

注意:

  1. 文件拥有w权限也不可删除,需要用户拥有其父文件夹w权限才可删除,也就是说,用户想删除一个文件,看的并不是他对此文件是否拥有w权限,而应该查看该用户对这个文件所在目录是否有w权限
  2. 可执行权限,针对文件也可以针对文件夹,文件(一般为脚本程序,如shell.sh),目录,代表我们可以使用cd命令切换到此目录中
  3. 一般给予目录读权限时,也将会给其执行权限,属于“套餐”组合

为什么要设置权限

  1. 服务器中的数据价值

  2. 员工的工作职责和分工不同

  3. 应对自外部的攻击

  4. 内部管理的需要

Linux中的权限类别

Linux 系统一般将文件权限分为3 类:

read(读)

write(写)

execute(执行)

Linux中文件所有者

文件的拥有者:默认情况下,谁创建了这个文件谁就是文件的拥有者。文件的拥有者可以进行更改并不是一成不变的。

qayrup=> linux.txt,默认情况下,qayrup就是linux.txt文件的拥有者

1. 所有者分类(谁)

对于文件的所有者,又分为3类:
user(属主)
group(属组)
other(其他用户)

user(属主):

文件的创建者或拥有者, 换句话说,某个账户对这个文件有的权限。

qayrup=> linux.txt,默认情况下,qayrup就是linux.txt文件的拥有者

group(属组):

文件所属的用户组,换句话或,某个用户组对这个文件有的权限。
group所属组内用户代表与文件的所属组相同的组内用户。

比如,qayrup与q、jiumei都同属于一个helloworld的用户组,qayrup和jiumei就是这个文件的组内用户。

other(其他用户):

除了上面提到的属主和属组之外的所有用户,对这个文件有的权限
other其他用户代表这些人既不是文件的拥有者,也不是文件所属组内的用户,我们把这些人就称之为other其他用户。

特殊用户root

在Linux操作系统中,root拥有最高权限(针对所有文件),所以权限设置对root账号没有效果

所有者的表示方法

① u(the user who owns it)(属主权限)

u表示,文件所有者,默认为文档的创建者

② g(other users in the file’s group)(属组权限)

g表示,在文件所属组(默认是创建文件的用户的主组)里的用户

③ o(other user not in the file’s group)(其他权限)

o表示,既不是文件的创建者,也不在文件属组里的用户,称为其他人

注意:某些资料上会提到linux ugo权限,所谓ugo,就是User, Group,Other三个单词的首字母。就指属主,主组,其他三种权限。

ugo等于u+g+o

a (all)等于u+g+o

root用户(超级管理员)

​ 在Linux 中,还有一个神一样的用户,这就是root 用户,因为在所有用户中它拥有最大的权限 ,可以管理着普通用户。因此以后在设置文档的权限的时候不必考虑root 用户。

普通权限管理

ls查看文件权限

要设置权限,就需要知道文件的一些基本属性和权限的分配规则。在Linux 中,ls 命令常用来查看文档的属性,用于显示文件的文件名和相关属性。
基本语法:

ls -l
或
ll

备注:ll命令是红帽以及CentOS系统特有的一个命令,在其他操作系统中可能并不支持

在这里插入图片描述

  1. 文件类型+权限 : - 代表文件类型 -后面到点,代表权限
  2. 文件节点数: 代表有多少个文件,如果是普通文件,则只有1节点
  3. root: 代表文件的拥有者,每个文件都有一个拥有者
  4. root: 文件所属组,某一个用户所属组是root,就也是这个文件的’所有者g’
  5. 文件的最后修改时间
  6. 文件名称 : 白色普通文件,绿色可执行文件,红色包或压缩文件

文件权限详解

Linux 中存在三类身份:

属主(owner拥有者)
属组(group用户组)
其他用户(others)

各自有不同的权限,对于一个文档来说,其权限具体分配如下:
在这里插入图片描述

linux7种文件类型

linux一共有7种文件类型,分别如下:

  • -:普通文件
  • d:目录文件
  • l: 软链接(类似Windows的快捷方式)

(下面四种是特殊文件)

  • b(block):块设备文件(例如硬盘、光驱等)
  • p:管道文件
  • c:字符设备文件(例如猫等串口设备)
  • s:套接口文件/数据接口文件(例如启动一个MySql服务器时会产生一个mysql.sock文件)

文件权限对应关系(对应数字后面有用

权限对应数字意义
r4可读
w2可写
x1可执行
前10位字符表示含义:

第1位:表示文件类型
第2-4位:表示文件所有者的权限情况,第2位r表示读权限,第3位w表示写权限,第4位x表示执行权限。
第5-7位:表示与文件所有者同组的用户的权限情况,第5位r表示读权限,第6位-表示不可写,第7位x表示执行权限。
第8-10位:表示除了组外的其他用户权限情况,第8位r表示读权限,第9位-表示不可写,第10位x表示执行权限。

文件或文件夹权限设置

命令:chmod (change mode)

语法:# chmod [选项] 权限模式 路径

作用:增加或者减少当前文件所有者的权限(注意,不能改变所有者,只能改变现有所有者的权限)

常用选项:-R:递归设置权限 (当文档类型为文件夹的时候)

权限模式:就是该文档需要设置的权限信息

路径:可以是文件,也可以是文件夹,可以是相对路径也可以是绝对路径。

注意:如果想要给文档设置权限,操作者要么是root 用户,要么就是文档的所有者。

字母形式权限设置(对应前面提到的u g o,r w x的表示方法)

使用root用户登录
注意:字母设置并不难,重点看三方面

  1. 第一个:确认要给哪个身份设置权限,u、g、o、ugo(a)

  2. 第二个:确认是添加权限(+)、删除权限(-)还是赋予权限(=)

  3. 第三个:确认给这个用户针对这个文件或文件夹设置什么样的权限,r、w、x

示例1 给一个文件添加或减去权限

案例: 使用chmod 给hello.txt文件夹添加所有者可执行权限

chmod  u+x hello.txt

在这里插入图片描述

含义:对于hello.txt文件,给 属主 增加 执行 权限

案例: 使用chmod 给hello.txt文件减去所有者可执行权限

chmod  u-x hello.txt

在这里插入图片描述

示例2 给一个文件赋予权限

案例: 使用chmod 给hello.txt文件赋予所属组-wx权限

chmod  g=rw hello.txt

在这里插入图片描述
如上案例.赋予权限会重置掉已有的权限,
比如hello所属组拥有r权限,但是使用g=wx赋予wx权限的话
hello.txt所属组权限就只有wx权限而没有r权限了

示例3 给文件目录添加权限

案例: 使用chmod 给 shop文件夹添加所属组w权限

chmod g+w shop

在这里插入图片描述

示例4 给文件夹及其内部添加权限

案例:使用chmod 给shop及其内部所有文件赋予所属组读取权限

chmod -R g=r shop

在这里插入图片描述

示例5 分别给文件各用户设置权限

案例: 使用chmod分别给hello.txt所属用户设置rwx,所属组rw,其它用户r,权限

chmod u=rwx,g=rw,o=r hello.txt

在这里插入图片描述

字母权限设置小结
字母选项作用
u(谁)user属主
g(谁)group属组
o(谁)other其他用户
a(谁)all 所有人(包含ugo)
+(作用)增加作用
-(作用)移除作用
=(作用)等于赋值作用
r(权限)read可读权限
w(权限)write可写权限
x(权限)execute可执行权限
-(权限)-没有任何权限

注意 : 如果同时设置多个身份的权限时候,每个身份之间需要通过英文逗号分

chmod -R u=rwx,g=rwx,o=rwx quanxian.txt
数字形式权限设置

经常会在技术网站上看到类似于# chmod 777 a.txt 这样的命令,这种形式称之为数字形式权限

文件权限与数字的对应关系,我们会发现没有7这个数字

权限对应数字意义
r4可读
w2可写
x1可执行
-0没有权限

在这里插入图片描述

777 :

第一个数字7,代表文件拥有者权限

第二个数字7,代表文件所属组内用户权限

第三个数字7,代表其他用户权限

rwx = 4 + 2 + 1 = 7

rw = 4 + 2 = 6

rx = 4 + 1 = 5

示例1 用数字的形式给文件设置权限,

案例:给readme.txt设置权限,文件的拥有者rwx,组内用户rw,其他用户r
rwx = 7
rw = 6
r = 4

# chmod 764 readme.txt
数字权限设置小结
数字权限作用
0-不能读,不能写,不能执行
1execute不能读,不能写,可执行
2write不能读,可写,不能执行
32+1不能读,可写,可执行
4read可读,不能写,不能执行
54+1可读,不能写,可执行
64+2可读,可写,不能执行
74+2+1可读,可写,可执行

注意 不要背上面的表格,只要记住R,W,X对应4,2,1,之后做10以内
加法

文件拥有者以及文件所属组设置

文件拥有者:属主

文件所属组:属组

什么是属主与属组

属主:所属的用户,文档所有者,这是一个账户,这是一个人

属组:所属的用户组,这是一个组

文件拥有者与所属组的查看

ls -l
或
ll

蓝色属主,红色属组
在这里插入图片描述

文件的拥有者与文件所属组来源

在Linux操作系统中,每个文件都是由Linux系统用户创建的。

在Linux操作系统中,每个用户都具有一个用户名称以及一个主组的概念

su - q
touch readme.txt
ll readme.txt

在这里插入图片描述
文件拥有者设置

chown [选项] 新文件拥有者名称 文件名称
选项说明:
-R :代表递归修改,主要针对文件夹

示例1 更改文件拥有者

案例:把/root/readme.txt文件的拥有者更改为q

chown q /root/readme.txt

在这里插入图片描述

文件所属组的设置

chgrp [选项] 新文件所属组名称 文件名称
选项说明:
-R : 代表递归修改,主要针对文件夹

示例1 修改文件所属组

案例:把/root/readme.txt文件的所属组名称更改为q

chgrp q /root/readme.txt

在这里插入图片描述

chown同时修改属主与属组

chown [选项] 文件拥有者名称:文件所属组名称 文件名称

chown [选项] 文件拥有者名称.文件所属组名称 文件名称
选项说明:
-R : 代表递归修改,主要针对文件夹

示例1 同时修改文件的所属主与所属组

案例:readme.txt文件的拥有者与所属组同时更改为root

 chown root:root readme.txt
或chown root.root readme.txt

在这里插入图片描述

示例2 同时修改文件夹所属主与所属组
chown -R root:root shop
或
chown -R root.root shop

在这里插入图片描述

相关文章:

linuxOPS基础_linux权限管理

权限概述 什么是权限 ​ 在多用户计算机系统的管理中,权限是指某个特定的用户具有特定的系统资源使用权利。 在Linux 中分别有读、写、执行权限 \权限针对文件权限针对目录读r(read)表示可以查看文件内容;cat、less…表示可以(ls)查看目录中存在的文…...

linux安装homeassistant(智能设备远程控制开源框架)

1、安装docker 先切换到root 用户,先安装一些基本环境: yum install -y yum-utils device-mapper-persistent-data lvm2添加阿里云软件源 yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo然后安装 D…...

TensorRT Triton Inference Server: 版本 error魔术标记不匹配 , NGC使用

魔术标记不匹配错误Serialization assertion magicTagRead kMAGIC_TAG failed.Magic tag does not match 原因: 转换和推理使用的镜像的标签是相同的,但是转换的镜像中pip list得到trt版本为8.6.0,但是推理环境中 rootf2c810ba3976:/# /usr/…...

Elasticsearch 文本分析器(下)

字符过滤器 注意:字符过滤器用于在将字符流传递给分词器之前对其进行预处理 html_strip HTML元素替换过滤器 此过滤器会替换掉HTML标签,且会转换HTML实体 如:& 会被替换为 &。 {"tokenizer": "keyword","…...

Git操作方法

目录 Git是什么 Git特点 Git作用 Git原理 集中式 分布式 Git安装 修改语言 Git操作 1.初始化Git仓库 2.提交工作区的内容到版本库 3.查看版本记录 4.版本回退 5.版本前进 Git 命令 通用操作 工作状态 版本回退 版本前进 远程仓 1.GitHub 2.GitLab 3.码云…...

CorelDRAW矢量绘图2023中文版下载

市面上的矢量绘图工具虽然很多,但权威又专业的却不多,选到不好用的工具,会极大的影响自己创作,CorelDRAW简称cdr,是一款功能强大的矢量图制作软件,一说到矢量图制作,大家都会不由自主地想到cdr。…...

Java-API简析_java.lang.Float类(基于 Latest JDK)(浅析源码)

【版权声明】未经博主同意,谢绝转载!(请尊重原创,博主保留追究权) https://blog.csdn.net/m0_69908381/article/details/131129886 出自【进步*于辰的博客】 其实我的【Java-API】专栏内的博文对大家来说意义是不大的。…...

pycharm的基本使用

废话文学 本人记录笔记始终遵循“能动手绝不动脑,能动脑绝不动手”的基本原则。不会的操作,跟着笔记干就完事了,还动啥脑袋?留着脑细胞刷抖音擦边小姐姐他不香吗? 什么是IDE IDE即【集成开发环境】,Inte…...

为什么要使用微软的 Application Framework?

我是荔园微风,作为一名在IT界整整25年的老兵,今天来看一下我们为什么要使用微软的 Application Framework? 虽然Application Framework 并不是新观念,它们却在最近数年才成为 PC 平台上软件开发的主流工具。面向对象语言是具体实…...

Python爬虫基础知识点

Python爬虫是使用Python编写的程序,可以自动抓取互联网上的数据。常用的Python爬虫框架包括Scrapy、BeautifulSoup、Requests等。Python爬虫可以应用于众多场合,如大数据分析、信息监测、数据挖掘和机器学习等领域。那么新手应该如何学习python爬虫呢&am…...

K8s运维备忘

1.服务器集群搭建: VagrantFile中加入以下代码,创建3个虚拟机: Vagrant.configure("2") do |config| (1..3).each do |i| config.vm.define "k8s-node#{i}" do |node| # 设置虚拟机的Box …...

激光雷达+rtk+rgb联合使用(4)

因为一直在忙一些乱七八糟的事情,就没顾得上继续写,想着快速收尾算了。 前面写到,我在点云的匹配上花了大量的时间,不断的调参数,换方法,一共几百个点云,想着先每50个匹配一次,得到几…...

【K8S系列】快速初始化⼀个最⼩集群

序言 走得最慢的人,只要不丧失目标,也比漫无目的地徘徊的人走得快。 文章标记颜色说明: 黄色:重要标题红色:用来标记结论绿色:用来标记一级重要蓝色:用来标记二级重要 希望这篇文章能让你不仅有…...

Exploit/CVE-2010-0738

打开JBoss的潘多拉魔盒:JBoss高危漏洞分析 *本文中涉及到的相关漏洞已报送厂商并得到修复,本文仅限技术研究与讨论,严禁用于非法用途,否则产生的一切后果自行承担。 前言 JBoss是一个基于J2EE的开放源代码应用服务器&#xff0…...

Go单元测试及框架使用

Go自带测试框架 单元测试 建议Go 语言推荐测试文件和源代码文件放在一块,测试文件以 _test.go 结尾。函数名必须以 Test 开头,后面一般跟待测试的函数名参数为 t *testing.T 简单测试用例定义如下: func TestXXXX(t *testing.T) {// ...}…...

TreeMap类型实体类数据进行排序

实体类Student类代码如下所示&#xff1a; package com.test.Test11;public class Student implements Comparable<Student>{private int age;private String name;private Double height;public int getAge() {return age;}public void setAge(int age) {this.age age…...

HOOPS助力AVEVA数字化转型:支持多种3D模型格式转换!

行业&#xff1a; 电力和公用事业、化工、造船、能源、采矿业 挑战&#xff1a; 创建大规模复杂资产的客户需要汇集多种类型的数据&#xff0c;以支持初始设计和创建强大的数字双胞胎&#xff1b;现有版本的产品只支持半打CAD格式&#xff1b;有限的内部开发资源限制了增加对新…...

(转载)基于遗传模拟退火的聚类算法(matlab实现)

1 理论基础 1.1 模糊聚类分析 模糊聚类是目前知识发现以及模式识别等诸多领域中的重要研究分支之一。随着研究范围的拓展&#xff0c;不管是科学研究还是实际应用&#xff0c;都对聚类的结果从多方面提出了更高的要求。模糊C-均值聚类(FCM)是目前比较流行的一种聚类方法。该…...

【C++】struct 和 class 的区别

欢迎来到博主 Apeiron 的博客&#xff0c;祝您旅程愉快。时止则止&#xff0c;时行则行。动静不失其时&#xff0c;其道光明。 目录 1、缘起 2、示例代码 3、总结 1、缘起 在 C 中&#xff0c;struct 和 class 唯一的区别就在于 默认的访问权限不同。区别如下&#xff1a; …...

活动笔记丨物业行业人效提升与灵活用工新路径

近日&#xff0c;盖雅工场成功举办物业行业人效提升专场交流&#xff0c;来自广深地区央企和民营的领先物业企业和现场服务业的多位代表齐聚深圳招商积余大厦&#xff0c;共同研讨行业人效提升的挑战和实践。 本次闭门交流会聚焦于人效提升&#xff0c;讨论话题包括各自企业在人…...

深入浅出Asp.Net Core MVC应用开发系列-AspNetCore中的日志记录

ASP.NET Core 是一个跨平台的开源框架&#xff0c;用于在 Windows、macOS 或 Linux 上生成基于云的新式 Web 应用。 ASP.NET Core 中的日志记录 .NET 通过 ILogger API 支持高性能结构化日志记录&#xff0c;以帮助监视应用程序行为和诊断问题。 可以通过配置不同的记录提供程…...

React第五十七节 Router中RouterProvider使用详解及注意事项

前言 在 React Router v6.4 中&#xff0c;RouterProvider 是一个核心组件&#xff0c;用于提供基于数据路由&#xff08;data routers&#xff09;的新型路由方案。 它替代了传统的 <BrowserRouter>&#xff0c;支持更强大的数据加载和操作功能&#xff08;如 loader 和…...

大型活动交通拥堵治理的视觉算法应用

大型活动下智慧交通的视觉分析应用 一、背景与挑战 大型活动&#xff08;如演唱会、马拉松赛事、高考中考等&#xff09;期间&#xff0c;城市交通面临瞬时人流车流激增、传统摄像头模糊、交通拥堵识别滞后等问题。以演唱会为例&#xff0c;暖城商圈曾因观众集中离场导致周边…...

376. Wiggle Subsequence

376. Wiggle Subsequence 代码 class Solution { public:int wiggleMaxLength(vector<int>& nums) {int n nums.size();int res 1;int prediff 0;int curdiff 0;for(int i 0;i < n-1;i){curdiff nums[i1] - nums[i];if( (prediff > 0 && curdif…...

Unity | AmplifyShaderEditor插件基础(第七集:平面波动shader)

目录 一、&#x1f44b;&#x1f3fb;前言 二、&#x1f608;sinx波动的基本原理 三、&#x1f608;波动起来 1.sinx节点介绍 2.vertexPosition 3.集成Vector3 a.节点Append b.连起来 4.波动起来 a.波动的原理 b.时间节点 c.sinx的处理 四、&#x1f30a;波动优化…...

2023赣州旅游投资集团

单选题 1.“不登高山&#xff0c;不知天之高也&#xff1b;不临深溪&#xff0c;不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

管理学院权限管理系统开发总结

文章目录 &#x1f393; 管理学院权限管理系统开发总结 - 现代化Web应用实践之路&#x1f4dd; 项目概述&#x1f3d7;️ 技术架构设计后端技术栈前端技术栈 &#x1f4a1; 核心功能特性1. 用户管理模块2. 权限管理系统3. 统计报表功能4. 用户体验优化 &#x1f5c4;️ 数据库设…...

C++:多态机制详解

目录 一. 多态的概念 1.静态多态&#xff08;编译时多态&#xff09; 二.动态多态的定义及实现 1.多态的构成条件 2.虚函数 3.虚函数的重写/覆盖 4.虚函数重写的一些其他问题 1&#xff09;.协变 2&#xff09;.析构函数的重写 5.override 和 final关键字 1&#…...

20个超级好用的 CSS 动画库

分享 20 个最佳 CSS 动画库。 它们中的大多数将生成纯 CSS 代码&#xff0c;而不需要任何外部库。 1.Animate.css 一个开箱即用型的跨浏览器动画库&#xff0c;可供你在项目中使用。 2.Magic Animations CSS3 一组简单的动画&#xff0c;可以包含在你的网页或应用项目中。 3.An…...

Caliper 配置文件解析:fisco-bcos.json

config.yaml 文件 config.yaml 是 Caliper 的主配置文件,通常包含以下内容: test:name: fisco-bcos-test # 测试名称description: Performance test of FISCO-BCOS # 测试描述workers:type: local # 工作进程类型number: 5 # 工作进程数量monitor:type: - docker- pro…...