【hello Linux】Linux权限管理

目录

1.shell命令以及运行原理

2. Linux权限的概念

3. Linux权限管理

3.1 文件访问者的分类

3.2 文件类型

3.3 访问权限

 3.4 访问权限的表示方法

 4. 访问权限的相关设置

4.1 chmod命令:修改权限

4.2 chown命令:修改文件的拥有者

4.3 chgrp 命令:修改文件或目录的所属组

一次性修改拥有者和所属组:

4.5 umask命令:查看或修改权限掩码

5. 粘滞位

5.1 粘滞位存在的原因:

5.2 粘滞位的使用

补充:


 

Linux🌷 

在正式开始权限管理的内容之前,首先看一下shell命令以及它的运行原理 

1.shell命令以及运行原理

有这样一种说法:

广义上:Linux发行版=Linux内核+外壳程序(shell);

狭义上:Linux=Linux内核; 

那么shell到底是什么呢?

在Linux中,shell是用户与操作系统沟通的一种工具。
Linux 严格意义上说的是一个操作系统,我们称之为 核心( kernel “ 。
但我们一般用户,不能直接使用kernel,而是通过 kernel 外壳 程序,
也就是所谓的 shell ,来与 kernel 沟通。
由此shell对于Linux就像,windows GUI对于windows系统一样。 

再从技术角度来说,shell最简单的定义:命令行解释器。

 shell完成的功能:

1. 传递用户的请求指令,让OS执行;

2. 对于用户的一些非法请求,shell有权拒绝,保护内核;

3. 对于用户的一些无礼请求,shell会创建子进程来进行执行具有风险的事情,不影响shell本身的正常运行。


下面开始正式的内容:

2. Linux权限的概念

Linux下有两种用户:超级用户(root)、普通用户

超级用户:可以再 linux 系统下做任何事情,不受限制;
普通用户:在 linux 下做有限的事情;
超级用户的命令提示符是 “#” ,普通用户的命令提示符是 “$”

注意:

我们在平常设置的时候,root和普通用户的密码不能设置成一样的,否则容易造成权限界限不清楚。

如何完成上述切换呢?

命令:su [用户名]

例如,要从 root 用户切换到普通用户 user ,则使用 su user
要从普通用户  user  切换到 root 用户则使用 su root( root 可以省略),
此时系统会提示输入root 用户的密码,
注意输密码的时候是不显示密码的,输完直接回车即可。

3. Linux权限管理

3.1 文件访问者的分类

拥有者:文件和目录的所有者——u(User)

所属组:文件和目录的所有者所在的组的用户——g(Group)

其他:其他用户——o(Other)

3.2 文件类型

在Linux中,一切皆文件,上述第一列表示的是文件的类型。

我们不再以文件后缀作为区分文件类型的方式

文件都有哪些类型呢?那些又代表着什么意思呢?

d :目录
- :普通文件[文本、各种动静态库、可执行程序、源程序]
l : 软链接(类似 Windows 的快捷方式)
b :块设备文件(例如硬盘、光驱等)
p :管道文件
c :字符设备文件(例如屏幕等串口设备)
s :套接口文件

3.3 访问权限

对于一个文件或目录来说,有以下几种基本权限:

1.  读( r ):
Read 对文件而言,具有读取文件内容的权限;
对目录来说,具有浏览该目录信息的权限(例如ls命令)
2.  写( w ):
Write 对文件而言,具有修改文件内容的权限;
对目录来说具有删除移动目录内文件的权限
3.  执行( x ):
Execute 对文件而言,具有执行文件的权限;
对目录来说,具有进入目录的权限(例如cd命令)
4. “-”:
表示不具有该项权限

那怎么看呢?

 3.4 访问权限的表示方法

1. 字符表示法:

如上述图片中所示;

2. 8进制数值表示法:

r w x -:分别表示4 2 1 0;

例如:rw-:则表示6

           rwx:则表示7

 4. 访问权限的相关设置

4.1 chmod命令:修改权限

语法:chmod [参数] 权限 文件名

功能:设置文件的访问权限

说明:只有文件的拥有者和root才可以改变文件的权限

实例:

 我们也可以对其进行多操作:

 当然我们也可以用8进制形式对其赋值:

4.2 chown命令:修改文件的拥有者

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

实例:

 注意:

在进行拥有者修改的时候,一般是在root下进行的,或者使用sudo提升权限(下篇会讲如何提升)

 普通用户 给/拿文件或目录时必须征得对方的同意,而root则不受权限的限制。

由此可知:文件的拥有者和创建者并不是等价的。 

4.3 chgrp 命令:修改文件或目录的所属组

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

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

 chgrp命令也是在root用户在进行的,或者使用sudo提升权限

一次性修改拥有者和所属组:

4.5 umask命令:查看或修改权限掩码

查看权限掩码:

 修改权限掩码:

注意:修改之后,只在本次登录有效 

在默认情况下:

普通文件的起始权限:0666

目录文件的起始权限:0777

但实际上我们创建的文件和目录,看到的权限往往不是上面这个值,原因便是在创建文件或目录的时候还要受到umask的影响。

umask:权限掩码,代表凡是在umask中出现的,都应在起始权限中去掉。

相当于网络中的子网掩码一样

超级用户默认掩码:0022

普通用户默认掩码:0002

假设默认权限是mask,则实际创建出来的文件权限是:mask& ~umask 

举个例子:

目录:777:111 111 111

掩码:002:  000 000 010

去掉之后:  111 111 101(775)

文件:666:110 110 110

掩码:002:  000 010 010

去掉之后:  110 100 100(644)

目录权限:775

文件权限:664

至于为什么这里权限掩码用的是002,因为默认情况下,权限掩码便是002;

5. 粘滞位

5.1 粘滞位存在的原因:

如果目录本身对other具有w权限,other可以删掉目录下的任何文件;

如果目录本身对other没有w权限,other不可以删掉任何文件;

需求:

我们想让other可以在特定的目录下创建文件并写入,但是不想让任何人删掉自己的文件

这便有了粘滞位的诞生

5.2 粘滞位的使用

格式:chmod o+t dir

只能对目录进行设置,一般是限制other权限的。

对设置了粘滞位的目录,在该目录下,只能文件的拥有者可以删除,其他人不能删除。

一般文件的拥有者都是设置为root用户;

有时候,有多个人,或者系统会有很多的临时数据,所有的临时文件放在系统的/tmp下,需要把所有的权限放开,但是只想让文件的拥有者自己删除自己的文件,那么便可以设置粘滞位。

补充:

如果sudo可以使用的话,那么尽量使用sudo;

因为每切换一次用户,系统便会建一个bash(进程);

查看系统所有进程:

ps axj | grep bash

坚持打卡!😃

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/7762.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

idea中的项目上传gitee

1.把gitee插件安装找重启idea 2.打开gitee网站从设置->私有令牌 获取token信息完成登录 复制到idea中点击log in 点击ok 3.把项目转为git管理 4.上传到gitee 5.去刷新gitee仓库此时就会发现多了一个我们的项目 以下是拷贝新项目到idea操作 http://t.csdn.cn/ycnSX

【Ansys】什么软件模块是DS,它和workbench、mechanical的区别在哪里?

一、DesignSpace和workbench 早期的Workbench称之为DesignSpace,更偏向于建模。 现在DS是license的一种,而分析的模块在11中称之为Simulation(Design Simulation),在12中改名为Mechanical。 所以,你可以…

IFPUG功能点度量4:度量事务功能

一、基本概念 1、事务功能 事务功能是处理数据功能的基本过程。 每个事务功能都是一个基本过程。 事务功能由多个逻辑处理来完成。 事务功能包含三种类型:EI、EO、EQ 2、基本过程 一个基本过程是由一个逻辑处理或者多个逻辑处理来完成的。 如何识别&#xf…

【备考技巧】系统集成(案例分析题)并不难

案例分析考题分析: 正常情况下四道题,计算题20分左右,剩余三道分析题每题15-20分左右。 ☆案例分析题: 从整体管理、范围管理、质量管理、人力资源管理、合同管理&采购管理、配置管理、风险管理、进度管理、成本管理中出简答题…

Jvm学习笔记(二)GC

GC 垃圾收集(GC)起源于Lisp,远比Java的历史更久,它主要思考了三件事情: 哪些内存需要回收?什么时候回收?如何回收? 本章就根据这三个点进行分析。 哪些内存需要回收? 在java堆中存放着无数的…

Mac浏览器无法上网但可以用微信等

可以使用微信QQ等,但是浏览器无法上网,Mac浏览器无法上网怎么办,Mac浏览器无法上网但可以用微信等(百度了一下,没有找到原因是为什么,只找到了解决方法,记录一下) 1.首先我们打开Ma…

Centos安装docker以及通过docker部署Mysql,照做就行!

1.安装docker 1.1给虚拟机联网(反斜杠带表该语句没写完) yum install -y yum-utils \device-mapper-persistent-data \lvm2 --skip-broken 1.2更新本地文件镜像 # 设置docker镜像源 yum-config-manager \--add-repo \https://mirrors.aliyun.com/doc…

【Python_Selenium学习笔记(四)】基于Selenium模块实现键盘操作

基于Selenium模块实现键盘操作 前言 在 Selenium 模块中,提供了一个 Keys 类,来处理键盘操作; 在 Selenium 模块中,使用 send_keys() 方法,来模拟键盘输入, 此篇文章主要介绍如何使用 Keys 类 和 send_ke…

vue请求本地JSON文件(注意路径 否则会404)

npm i axios // main.jsimport axios from "axios";Vue.prototype.$axios axios; //全局注册,使用方法为:this.$axios...vue/cli 2 json文件存放目录为 根目录下static/json/aaa.json // 使用getVideoData() {this.$axios.create({baseURL: "&quo…

springboot 部署k8s(二)

系列文章目录 目录 系列文章目录 前言 操作步骤 1.springboot.yaml文件 2.查看deployment 3.查看service服务 4.验证服务 总结 前言 springboot 部署到k8s 上。里面涉及了deployment, Service, NodePort. 操作步骤 1.springboot.yaml文件 apiVersion: apps/v1 kind: …

codeblocks20.3配置wxWidget3.2.2.1

codeblocks20.3 # 英文版自带gcc810,不汉化 wxWidget3.2.2.1 github下载源码 win11专业版 1.下载wxWidget3.2.2.1 源码 2.下载后解压到一个目录中,不要含中文和空格。我放在:d:\wxWidget3.2.2.1 3.打开终端cd build/msw 4.编译wxWidgets 为 …

本行卡转账基本流程说明

1、业务大致流程 2、基本业务描述 大概流程说明:(牵涉到调用硬件、不便多说) 用户插卡后、选择转账交易、依次输入转入账户卡号和转账金额后,用户确定转账信息;转账交易发送前:需要根据插卡账户信息和转账…

Java基础(四)数组

1. 数组的概述 1.1 为什么需要数组 需求分析1: 需要统计某公司50个员工的工资情况,例如计算平均工资、找到最高工资等。用之前知识,首先需要声明50个变量来分别记录每位员工的工资,这样会很麻烦。因此我们可以将所有的数据全部存…

TCP报文 Flood攻击原理与防御方式

TCP交互过程中包含SYN、SYN-ACK、ACK、FIN和RST报文,这几类报文也可能会被攻击者利用,海量的攻击报文会导致被攻击目标系统资源耗尽、网络拥塞,无法正常提供服务。接下来我们介绍几种常见的Flood攻击的原理和防御方式。 SYN Flood攻击与防御…

【Qt】项目开发遇到问题及解决总结

1.控件的触发:toggle()、triggered()、clicked() 区别: 都是按钮点击后发射的信号 clicked():用于Button发射的信号triggered():用于QAction发射的信号, trigger是一次性的。 点击后,无法改变状态。 要么…

【案例教程】基于RWEQ模型的土壤风蚀模数估算及其变化归因分析实践技术

土壤风蚀是一个全球性的环境问题。中国是世界上受土壤风蚀危害最严重的国家之一,土壤风蚀是中国干旱、半干旱及部分湿润地区土地荒漠化的首要过程。中国风蚀荒漠化面积达160.74104km2,占国土总面积的16.7%,严重影响这些地区的资源开发和社会经…

论文笔记|ECCV2022:Self-Promoted Supervision for Few-Shot Transformer

论文地址:https://arxiv.org/abs/2203.07057 代码链接:https://github.com/DongSky/few-shot-vit 这篇论文在2022年发表在ECCV上,论文的题目是用于小样本Transformer的self-promoted supervision(自我推荐监督) 1 Mot…

求给定集合中好数对的个数

已知一个集合A,对A中任意两个不同的元素求和,若求得的和仍在A内,则称其为好数对。例如,集合A{1 2 3 4},123,134,则1,2和1,3 是两个好数对。 编写程序求给定集合中好数对的个数。 注:…

java设计模式(1) 适配器模式、装饰器模式

适配器模式 适配器就是一种适配中间件,它存在于不匹配的了两者之间,用于连接两者,使不匹配变得匹配。 手机充电需要将220V的交流电转化为手机锂电池需要的5V直流电 知识补充:手机充电器输入的电流是交流,通过变压整流…

XML复习

目录什么是XMLXML中的内容可以干什么XML文件的创建以及其格式XML的文档约束-DTD约数XML的文档约束-schema约束Dom4J 解析XML 文档什么是XML XML 全称(extensible Markup Lanage) 可扩展标记语言它是一种数据的表示形式, 可以存储复杂的数据格式以及我们自己定义的格式.XML经常…
最新文章