linuxOPS基础_linux权限管理
权限概述
什么是权限
在多用户计算机系统的管理中,权限是指某个特定的用户具有特定的系统资源使用权利。
在Linux 中分别有读、写、执行权限
\ | 权限针对文件 | 权限针对目录 |
---|---|---|
读r(read) | 表示可以查看文件内容;cat、less… | 表示可以(ls)查看目录中存在的文件名称 |
写w(write) | 表示可以更改文件的内容;vim 修改,保存退出 | 表示是否可以删除目录中的子文件或者新建子目录(rm/touch/mkdir) |
执行x(excute) | 表示是否可以开启文件当中记录的程序,一般指二进制文件(.sh) | 表示是否可以进入目录中(cd) |
注意:
- 文件拥有w权限也不可删除,需要用户拥有其父文件夹w权限才可删除,也就是说,用户想删除一个文件,看的并不是他对此文件是否拥有w权限,而应该查看该用户对这个文件所在目录是否有w权限
- 可执行权限,针对文件也可以针对文件夹,文件(一般为脚本程序,如shell.sh),目录,代表我们可以使用cd命令切换到此目录中
- 一般给予目录读权限时,也将会给其执行权限,属于“套餐”组合
为什么要设置权限
-
服务器中的数据价值
-
员工的工作职责和分工不同
-
应对自外部的攻击
-
内部管理的需要
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节点
- root: 代表文件的拥有者,每个文件都有一个拥有者
- root: 文件所属组,某一个用户所属组是root,就也是这个文件的’所有者g’
- 文件的最后修改时间
- 文件名称 : 白色普通文件,绿色可执行文件,红色包或压缩文件
文件权限详解
Linux 中存在三类身份:
属主(owner拥有者)
属组(group用户组)
其他用户(others)
各自有不同的权限,对于一个文档来说,其权限具体分配如下:
linux7种文件类型
linux一共有7种文件类型,分别如下:
- -:普通文件
- d:目录文件
- l: 软链接(类似Windows的快捷方式)
(下面四种是特殊文件)
- b(block):块设备文件(例如硬盘、光驱等)
- p:管道文件
- c:字符设备文件(例如猫等串口设备)
- s:套接口文件/数据接口文件(例如启动一个MySql服务器时会产生一个mysql.sock文件)
文件权限对应关系(对应数字后面有用)
权限 | 对应数字 | 意义 |
---|---|---|
r | 4 | 可读 |
w | 2 | 可写 |
x | 1 | 可执行 |
前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用户登录
注意:字母设置并不难,重点看三方面
-
第一个:确认要给哪个身份设置权限,u、g、o、ugo(a)
-
第二个:确认是添加权限(+)、删除权限(-)还是赋予权限(=)
-
第三个:确认给这个用户针对这个文件或文件夹设置什么样的权限,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这个数字
权限 | 对应数字 | 意义 |
---|---|---|
r | 4 | 可读 |
w | 2 | 可写 |
x | 1 | 可执行 |
- | 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 | - | 不能读,不能写,不能执行 |
1 | execute | 不能读,不能写,可执行 |
2 | write | 不能读,可写,不能执行 |
3 | 2+1 | 不能读,可写,可执行 |
4 | read | 可读,不能写,不能执行 |
5 | 4+1 | 可读,不能写,可执行 |
6 | 4+2 | 可读,可写,不能执行 |
7 | 4+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的开放源代码应用服务器࿰…...
Go单元测试及框架使用
Go自带测试框架 单元测试 建议Go 语言推荐测试文件和源代码文件放在一块,测试文件以 _test.go 结尾。函数名必须以 Test 开头,后面一般跟待测试的函数名参数为 t *testing.T 简单测试用例定义如下: func TestXXXX(t *testing.T) {// ...}…...
TreeMap类型实体类数据进行排序
实体类Student类代码如下所示: 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模型格式转换!
行业: 电力和公用事业、化工、造船、能源、采矿业 挑战: 创建大规模复杂资产的客户需要汇集多种类型的数据,以支持初始设计和创建强大的数字双胞胎;现有版本的产品只支持半打CAD格式;有限的内部开发资源限制了增加对新…...
(转载)基于遗传模拟退火的聚类算法(matlab实现)
1 理论基础 1.1 模糊聚类分析 模糊聚类是目前知识发现以及模式识别等诸多领域中的重要研究分支之一。随着研究范围的拓展,不管是科学研究还是实际应用,都对聚类的结果从多方面提出了更高的要求。模糊C-均值聚类(FCM)是目前比较流行的一种聚类方法。该…...
【C++】struct 和 class 的区别
欢迎来到博主 Apeiron 的博客,祝您旅程愉快。时止则止,时行则行。动静不失其时,其道光明。 目录 1、缘起 2、示例代码 3、总结 1、缘起 在 C 中,struct 和 class 唯一的区别就在于 默认的访问权限不同。区别如下: …...
活动笔记丨物业行业人效提升与灵活用工新路径
近日,盖雅工场成功举办物业行业人效提升专场交流,来自广深地区央企和民营的领先物业企业和现场服务业的多位代表齐聚深圳招商积余大厦,共同研讨行业人效提升的挑战和实践。 本次闭门交流会聚焦于人效提升,讨论话题包括各自企业在人…...
学习笔记:吴恩达ChatGPT提示工程
以下为个人笔记,原课程网址Short Courses | Learn Generative AI from DeepLearning.AI 01 Introduction 1.1 基础LLM 输入 从前有一只独角兽,输出 它和其他独角兽朋友一起住在森林里输入 法国的首都在哪?输出 法国的首都在哪…...
POI in Action
POI 组件依赖 按需引入对应依赖 (给出官方的指引) 组件作用Maven依赖POIFSOLE2 FilesystempoiHPSFOLE2 Property SetspoiHSSFExcel XLSpoiHSLFPowerPoint PPTpoi-scratchpadHWPFWord DOCpoi-scratchpadHDGFVisio VSDpoi-scratchpadHPBFPublisher PUBpoi-scratchpadHSMFOutloo…...
苹果Vision Pro将引爆人机交互的重大变革
2023年6月6日,苹果发布了大家期待已久的Vision Pro,Vision Pro是一款专业级MR设备,融合了虚拟现实(VR)和增强现实(AR)技术,可以让用户完全沉浸在高分辨率显示内容中。允许用户以一种全新的方式在其周围的空间中查看APP。用户可以用…...
MMDetection学习记录(二)之配置文件
文件结构 config文件 在 config_base_ 文件夹下有 4 个基本组件类型,分别是:数据集(dataset),模型(model),训练策略(schedule)和运行时的默认设置(default runtime)。 命名风格 {model}_[model setting]_{backbone}_{neck}_[no…...
Python数据分析:NumPy、Pandas和Matplotlib的使用和实践
在现代数据分析领域中,Python已成为最受欢迎的编程语言之一。Python通过庞大的社区和出色的库支持,成为了数据科学家和分析师的首选语言。在Python的库中,NumPy、Pandas和Matplotlib是三个最为重要的库,它们分别用于处理数值数组、…...
实习生面试问题及回答记录
文章目录 文章简介技术类1、DFS和BFS算法的区别是什么?2、解释一下什么是快速排序?3、 如果让你写一个排序算法?你会怎么写?(大概说出代码的思路)4、解释一下二分查找的具体逻辑?5、在代码的数据…...
设计模式(十):结构型之外观模式
设计模式系列文章 设计模式(一):创建型之单例模式 设计模式(二、三):创建型之工厂方法和抽象工厂模式 设计模式(四):创建型之原型模式 设计模式(五):创建型之建造者模式 设计模式(六):结构型之代理模式 设计模式…...
买法拍房需要注意什么
法拍房,由于其价格亲民、房屋信息透明度高、竞拍过程公平公正而受到越来越多的人开始关注。但是其中又有着许多的风险及相关的注意事项。那么,如何做到成功“捡漏”,买法拍房需要注意什么呢? 买法拍房需要注意什么 1、隐藏的各种收费 税费&a…...
linux命令输出结果但不显示在屏幕上的通用办法
linux命令输出结果但不显示在屏幕上的通用办法 这个针对于我这种小白马大哈很简单的一个命令,记给自己备用 举个例子:unzip命令不输出结果 unzip xx.zip > /dev/null 2>&1 unzip xx.zip > /dev/null 前半部分是将标准输出重定向到空设备&a…...
【Linux系统进阶详解】Linux字符权限rwx-权限组合原理,对应类型ugo,user,group,other,+-=详解及权限管理实战
在Linux系统中,每个文件和目录都有三种权限:读权限(r)、写权限(w)和执行权限(x)。这些权限可以被分配给三个不同的用户组:用户(user)、组(group)和其他人(other)。此外,权限可以使用“+”、“-”和“=”符号进行修改。 权限组合原理 Linux系统中的权限由字母…...
怎样做音视频宣传网站/一键优化下载安装
https://zhuanlan.zhihu.com/p/438998185...
单页网站怎么赚钱/seo全网优化指南
2019独角兽企业重金招聘Python工程师标准>>> public class BaseViewHoler extends RecyclerView.ViewHolder {private Context context;//行布局的viewprivate View mView;//用来装载id的集合 用法和map类似private SparseArray<View> sparseArray;public Bas…...
培训做网站/网站管理工具
用c#操作Mongodb(附demo) 因为需要,写了一个基于泛型的helper,这样要使用起来方便一点。 为了大家也不重复造轮子,所以发出来希望能帮到谁。 复杂的查询最好用linq,这也是mongodb官方建议的。 mongodb的C#配置 这部分很多文章都提…...
深圳网站设计很棒 乐云践新/广州seo学徒
nginx 配置静态页面 进入到 nginx 的默认配置文件的位置 cd /etc/nginx ll修改 nginx.conf 这个文件, 注释掉原有的 service 块的内容 这个用户名 需要修改为 root , 要不然后序的配置静态文件的位置的时候会 报 403 的错误, 直接访问不到文件 参考文档 https://blog.csdn.…...
高县网站建设/sem代运营
近期,中国联通31省骨干传输网(设备安装)施工集采项目、陕西联通工程建设(设备安装、室分、传输线路)项目、宁夏电信5G网络建设及新增通信工程(设备安装、管线施工)等项目陆续开标。整体来看&…...
网站没收录了怎么办/有什么软件可以推广
进来学习C语言碰到了指针,着实学了一段时间,搞不出个头绪,今日感觉有些眉目,来此做个记录,也望能给困顿的人一起分享下感悟。学习指针还要从变量,数组,函数的定义这些基础说起。如:i…...