Linux权限相关介绍

news2024/11/19 20:38:55

目录

前言

1.Linux操作系统下的两种用户

 Linux权限管理

Linux文件访问对象分类

文件类型和访问权限

文件类型

基本权限

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

chmod

chown

chgrp

 umask掩码

 目录权限

粘滞位


前言

    权限指的就是我们对于某件事物所能够相关操作,而对于不同对象该所能进行的操作是不同的,所以我们可以认为,权限是与对象和事物属性相关的,而我们就是通过这两点给大家充分的介绍一下Linux相关权限的介绍。


1.Linux操作系统下的两种用户

超级用户:可以再linux系统下做任何事情,不受限制

普通用户:在linux下做有限的事情。

超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。

命令:su [用户名]

功能:切换用户。

例如,要从root用户切换到普通用户user,则使用 su user。 要从普通用户user切换到root用户则使用 su root(root可以省略),此时系统会提示输入root用户的口令。

普通用户直接使用 su  ,该实际上只是将普通用户切换成超级用户,但是我们现在所处的家目录还是我们普通用户的,但是对于 su - ,这里进行的重新登入的方式切换超级用户,此时的家目录就变成了超级用户

对于普通用户切换普通用户,这里我们可以转换为超级用户,再使用su user,进行直接切换,或者直接su user然后输入对应用的密码即可。

这里给大家简单的演示一下,这里我们先进入一个普通用户:

 Linux权限管理

Linux文件访问对象分类

这里就是小编说到的对象问题,那么我们Linux文件访问的对象一共分为三种:

文件和文件目录的所有者:u---User(中国平民 法律问题)

文件和文件目录的所有者所在的组的用户:g---Group(不多说)(组内协调,但不让其他用户可见)

其它用户:o---Others (外国人)

文件类型和访问权限

对于文件这个事物不同的用户有着对应不同的属性,而这个也就会在我们显示文件属性的时候给我们展现出来,这里我们用ls -l指令将一个文件对应不同对象的权限给大家展示一下

 

 这里我们文件属性与上面对应的是一致的,这里大家可以进行查看理解一下。

文件类型

上面我们看到文件类型所对应展示是的文件属性的第一列位置,那么对于文件的类型我们这里不单单只有一种类型。

d:文件夹
-:普通文件
l:软链接(类似Windows的快捷方式)
b:块设备文件(例如硬盘、光驱等)
p:管道文件
c:字符设备文件(例如屏幕等串口设备)
s:套接口文件

以上对应的文件,我们现在除了看到文件夹类型和普通文件这类型,还没有看见过其他类型文件,对于其他类型的文件,小编会在以后学习的过程中,不断给大家介绍,现在大家只需要知道,我们具有这些文件类型即可。

基本权限

i.读(r/4):Read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限
ii.写(w/2):Write对文件而言,具有修改文件内容的权限;对目录来说具有删除,增加,移动目录内文件的权限
iii.执行(x/1):execute对文件而言,具有执行文件的权限;对目录来说,具有进入目录的权限
iv.“—”表示不具有该项权限

对于权限我们这里一共有两种表示方法:

一种是字符表示:

另外一种就是八进制数值进行表示:

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

chmod

chmod

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

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

常用选项:

R -> 递归修改目录文件的权限

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

chmod命令修改权限值得格式:

用户表示符+/-=权限字符
+:向权限范围增加权限代号所表示的权限
-:向权限范围取消权限代号所表示的权限
=:向权限范围赋予权限代号所表示的权限
用户符号: 
u:拥有者
g:拥有者同组用
o:其它用户
a:所有用户

由于我们的权限具有两种表示方式,那么我们的修改也具有两种方式:

第一种是我们上面的方式进行修改:

 还有一种是直接使用我们的八进制进行权限修改:


 

chown

功能:修改文件的拥有者
格式:chown [参数] 用户名 文件名
对于文件拥有者的修改我们这里只有root账户具有这个功能权限。那么接下来我给大家演示一下:

 

chgrp

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

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

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

对于文件所属组的修改,我们这里也是只有root账户具有这个权限。

 umask掩码

我们这里可以发现,我们每次创建好文件和目录后,该访问权限都给我们已经设计好了,那么我们创建的文件的或者目录的默认权限是什么?

这里可以告诉大家是:

新建文件夹默认权限=0666

新建目录默认权限=0777

那么我们分别创建一个目录和文件,分别可以查看一下该的默认权限值是什么?

 这里换算成八进制分别是:755 ,622

那为什么是这个样子的呢?这里就和我们的umask掩码有关

功能:

(权限掩码:凡是在unmask中出现的权限,不会在最终的文件权限中出现)

查看或修改文件掩码

这里造成这种结果的原因是:创建文件或目录的时候还要受到umask的影响。假设默认权限是mask,则实际创建的出来的文件权限是: mask & ~umask(八进制转换为二进制,然后取反unmask最后按位与)。

(说明:将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。超级用户默认掩码值为0022,普通用户默认为0002。)

那么我们这里看以超级用户的角度看一下我们默认的umask掩码是多少?

那么该进行权限干涉后,运算后得到的目录和我们的普通文件的权限是否和我们上面的一致呢?这里小编给大家演示一下:

 

 对于umask掩码值我们也可以进行直接修改,达到创建文件时得到不同的权限结果:

 目录权限

目录的权限和我们普通文件所达到的效果不太一致,上面虽然我们已经简单的对其进行了提及,但是这里我们仍然需要着重介绍。

对于一个目录,该读,写,执行权限分别对应的行为是:

1.对于一个目录的读权限该实际上决定的是否展现该目录下的东西

2.对于一个目录的写权限决定的是否允许在当前目录下进行创建,更改,删除

3.对于一个目录的执行权限决定的是是否让用户进入对应目录

(这里就不加以演示,大家可以通过我们上面所介绍的权限修改操作符进行修改,然后执行相关操作查看我们的目录是否可以执行相关功能(给大家一个小考验))

这里我们介绍目录权限,主要还有一个原因,这里大家请听我细细道来:

a.对于我们家目录的权限是:700,因此我们在我们家目录创建的文件,别人都看不到!

 

b.有时候,我们多个用户想进行文件数据的共享,那么我们所创建的共享文件,不能再任何一个人的家目录下。但是这里有一个问题就是一个文件能否被删除,并不由这个文件本身决定,由这个文件所处的目录决定(因此就会出现一个问题是,我们创建的文件会被别人删除)这里如果我们去掉共享目录的写权限,虽然别人无法更改我们的目录,但是,我们同时也无法创建文件了,所以下面我们引入粘置位来解决此类问题。

粘滞位

给目录设置,一般是共享目录,大家可以进行在目录进行各自文件的增删改查,只允许文件拥有者,或者root能删除这个文件,其他人一概不允许,t是一种特殊的x权限。

当一个目录被设置为"粘滞位"(用chmod +t),则该目录下的文件只能由

一、超级管理员删除

二、该目录的所有者删除

三、该文件的所有者删除

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

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

x86汇编语法基础(gnu格式)

一、寄存器 1.1 通用寄存器 一个x86-64的中央处理单元(CPU)包含一组16个存储64位值的通用寄存器。这些寄存器用来存储整数数据和指针。下图显示了这16个寄存器。它们的名字都以%r开头,不过后面还跟着不同命名规则的名字,这是由于…

macbook2023系统清理软件cleanmymac中文版

cleanmymac x 中文版基本都是大家首选Mac清理软件了。它集各种功能于一身,几乎满足用户所有的清理需求。它可以清理,优化,保养和监测您的电脑,确保您的Mac运行畅通无阻!支持一键快速清理Mac,快速检查并安全…

opencv_c++学习(二十二)

一、凸包检测 图中左侧为边缘检测的效果,中间为图像经过二值化的效果,右图为凸包检测效果。 convexHull(lnputArraypoints, OutputArray hull,bool clockwise false, bool returnPoints true)points:输入的2D点集。 hull:输出凸包的顶点。…

【大学物理实验】基本测量

50分度的游标卡尺,最小分度为: A. 0.1mm B. 0.2mm C. 0.5mm D. 0.02mm 正确答案: D 保存游标卡尺和螺旋测微器是,下面说法正确的是: A. 游标卡尺测量位置应闭合,螺旋测微器小砧和螺杆间隙也应闭合 B. 游标…

PyG的Planetoid无法直接下载Cora等数据集的解决方法

问题描述: 在使用PyG的时候,通常会涉及到一些公共数据集的下载,由于网络问题,导致无法下载出现以下问题: 尝试了很多的方法都没有成功(主要是个人比较菜!)。但是皇天不负有心人&am…

基于Springboot的高校固定资产管理系统的设计与实现(源码完整)

项目描述 临近学期结束,还是毕业设计,你还在做java程序网络编程,期末作业,老师的作业要求觉得大了吗?不知道毕业设计该怎么办?网页功能的数量是否太多?没有合适的类型或系统?等等。这里根据你想解决的问题,今天给…

1.标注自己的关键点检测数据集

1.标注自己的关键点检测数据集 1.1 labelme标注数据 labelme GitHub项目地址:https://github.com/wkentaro/labelme 1.1.1exe文件下载 https://github.com/wkentaro/labelme/releases 可直接下载打包好的exe文件 1.1.2python安装labelme cmd命令行中输入以下命…

极大似然估计法及其损失函数的优化方法

二分类-逻辑回归模型 1.模型函数 1)多元线性回归函数: Z ^ 计算 X W T \hat{Z}_{计算} XW^T Z^计算​XWT 2)softmax函数: Y ^ 模型 S i g m o i d ( Z ^ 计算 ) 1 1 e − Z ^ 计算 \hat{Y}_{模型} Sigmoid(\hat{Z}_{计算})…

继瑞吉外卖后的又一个项目——SpringBoot+Vued前后端的博客系统

文章目录 博客系统项目介绍前言项目演示前台演示后台演示 组织结构后端组织结构前端组织结构 技术选型前端技术后端技术架构图系统架构图业务架构图 模块介绍前端模块后端模块 环境搭建开发工具开发环境项目运行 未完待续结语 博客系统项目介绍 前言 本项目已开源在Gitee 后端…

【P32】JMeter While 控制器(While Controller)

文章目录 一、While 控制器(While Controller)参数说明二、测试计划设计2.1、变量2.2、函数2.2.1、groovy脚本2.2.2、jex13脚本2.2.3、js脚本 一、While 控制器(While Controller)参数说明 可以对部分逻辑按变量条件进行循环迭代…

【算法】—— 简单多状态 dp 问题

在上期,我给大家讲解了关于单个状态下的dp问题,本期我给大家讲述几道关于多状态下的dp问题。希望大家有所帮助!!! 目录 (一)粉刷房⼦ (二)买卖股票的最佳时机含冷冻期 …

破解提升 LLMs 性能的黑匣子—— LlamaIndex

“可以将 LlamaIndex 视为外部数据和 LLM 连接在一起的黑匣子。”在 Zilliz 组织的网络研讨会中,LlamaIndex 的联合创始人兼首席执行官 Jerry Liu 曾这样说道。 对于 Jerry Liu 的这个比喻,熟悉 LLMs 的开发者会觉得颇为贴切,尤其是对于那些想…

Chinese-LLaMA-Alpaca代码实战

文章目录 微调chinese-alpaca部署llama.cpp将FP16模型量化为4-bit 项目地址: https://github.com/ymcui/Chinese-LLaMA-Alpaca 微调chinese-alpaca 本项目基于中文数据 开源了使用中文文本数据预训练的中文LLaMA大模型(7B、13B)开源了进一…

JavaFX【TableView使用详解】

目录 概述 组件 Student ObservableList TableView setCellValueFactory() TableColumn 1. Callback 2. PropertyValueFactory 增加到末行 1、tableView.getItems().add(Student s) 2、list.add(Student s) 删除指定行 1、tableView.getItems().remove(int i) 2、…

软件测试完后,运行后还有BUG,测试人员就应该背锅吗?

测试完成后还有bug,测试人员肯定是有责任的,第一时间要赶紧处理而不是着急甩锅。但是这口锅全部扣测试身上,明显也是不能接受的,关键在于测试人员需要找出足够的证据来保护自己。 或许很多人会说测试不可能发现所有的bug&#xf…

软件测试人的第一个实战项目:web端(视频教程+文档+用例库)

最近很多自学测试的小伙伴在问我,学完基础的知识后面临着项目问题,网上项目大都不全,而且也不知道该怎么做,不知道做哪些项目能帮助自己提升 今天给大家分享一个web软件测试实战项目,该项目对新手十分友好,…

STM32入门100步(第4步~第5步)

第4~5步 STM32内部核心功能 前两节中,我们了解了什么是ARM、什么是STM32系列,接下来就是了解具体的一款STM32单片机的内部功能。单片机就是一种微小型计算机,其核心原理就是计算机原理。对于其他非ARM构架的单片机来说学习过程也是相似的。 我们学习的是STM32F103C8T6这款单…

细说前端打包发布后,浏览器缓存如何清理?其实只需要简单的webpack配置就行

前言 有没有这么一种场景,项目上线后,客户使用过程中发现了bug,你急急忙忙改完,发布。但你发布后 测试人员或者客户会说:“你这改了没用啊”。 你:“清下缓存试试” 客户:“?&am…

c#——WCF和HTTP文件传输实验

(1)掌握HTTP协议下WCF服务应用程序构建方法。 (2)掌握WCF客户端和服务端的消息交换模式。 (3)掌握协定的设计及实现方法。 (4)熟悉WCF和HTTP的相关绑定设置。 (5&#xf…

CentOS7编译安装Python3.10(含OpenSSL1.1.1安装),创建虚拟环境,运行Django项目(含sqlite版本报错)

文章目录 1、CentOS安装OpenSSL1.1.1(前置环境)2、CentOS安装 Python 3.103、创建虚拟环境4、运行Django项目 1、CentOS安装OpenSSL1.1.1(前置环境) 编译安装Python3.10时需要openssl1.1.1 查看当前版本 & 删除openssl1.0 …