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

【Linux】linux权限

linux权限

  • 一,Linux权限的概念
  • 二,Linux权限管理
    • 1.文件访问者分类
    • 2.文件类型和访问权限
    • 3.文件权限值的表示方法
    • 4.文件访问权限的设置
  • 三,目录的权限
  • 四,粘滞位
  • 五,权限掩码
    • 1.什么是权限掩码
    • 2.权限掩码的计算

一,Linux权限的概念

在Linux下,有两种用户,超级用户(root)和普通用户。

root用户可以在Linux下做如何事情,不受限制
普通用户在做有些操作下受权限访问限制

二,Linux权限管理

1.文件访问者分类

我们在Linux下查看所有文件时,都会有如下这两列:
在这里插入图片描述
其中所圈的第一列表示文件的所有者u(user), 表示这个文件或者目录由谁创建,第二列表示文件所属组g(group),表示所属于的组别。

2.文件类型和访问权限

查看文件时还可以看到以下属性:
在这里插入图片描述
上面用红色框起来的表示文件的类型,Linux下常见文件类型有:

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

第二列用蓝色框起来的表示文件的访问权限,其中三个为一组,共三组,分别表示文件user,所属组group,other对其的访问权限。

权限分为三种:
r表示可读
w表示可写
x表示可执行

以此为例说说文件的权限在这里插入图片描述
上面三种文件都是普通文件,test1的前三个(rwx)表示文件拥有者对该文件的所有权限,该拥有者可以对此文件执行读写执行权限。test1的中间三个rwx表示该文件的所属组对此有读写执行权限,最后三个rwx表示other对此有读写执行权限。

3.文件权限值的表示方法

文件权限可以用上述字符来表示,r–表示只读,–x表示只执行,-w-表示只写,以此类推。
除了字符表示外,还可以用8进制来表示,有该权限用1表示,无则为0。

总结如下表:
在这里插入图片描述

4.文件访问权限的设置

如果要对文件的权限做修改,则常用chomd来设置文件访问权限。

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

下面是参数说明:
在这里插入图片描述
例子:
给test2的拥有者加上执行权限
在这里插入图片描述
(1)可以使用chmod 用户标识符 +/- 权限来修改权限
在这里插入图片描述
修改后:
在这里插入图片描述
(2)也可以通过设置三位8进制数字来设置
在这里插入图片描述
在这里插入图片描述
这里的三位8进制分别表示文件拥有者,所属组,other对该文件的权限。

三,目录的权限

和普通文件的读写执行权限不同。

r --> 表示是否可以查看该目录下的文件
w -->表示是否可以在该目录下创建和删除文件
x -->表示是否可以进入该目录

在这里插入图片描述
以此为例,有三个目录,表示拥有者和所属组可以进入目录,并且可以查看目录下的文件,也可以在目录下创建和删除文件。

四,粘滞位

假设有一个场景,有多个用户共享一个目录,大家具有写的权限,都可以在该目录下创建和删除文件(目录)。那么,就会出现 ‘张三’ 可以删除 ‘李四’ 创建的文件。
Linux为了解决上述的问题,引入了粘滞位
接着上述场景,如果给这个共享目录加上t, 即chmod +t 目录,则 ‘张三’ 就不能再删除 ‘李四’ 创建的文件。

当一个目录被设置位粘滞位后,该目录下的文件只能被:
1, 超级管理员删除
2,该目录的所有者删除
3,该文件的所有者删除

例如:
在这里插入图片描述
在这里插入图片描述
加上t之后:
在这里插入图片描述

五,权限掩码

1.什么是权限掩码

当我们在Linux下创建文件和目录时,都会有一个默认的权限
这里创建一个文件:
在这里插入图片描述
在这里插入图片描述
可以看到,该文件的默认权限是 rw-rw-rw- ,即默认是664

这是因为,文件的权限是由:
1.起始权限
2.权限掩码

共同决定的。
其中:文件的起始权限是 666,目录的起始权限是 777

那么,什么是权限掩码呢?
可以通过 umask 来查看默认的权限掩码:
在这里插入图片描述
注 :这里的第一个0表示8进制。
也就是说,文件(目录)的最终权限是由起始权限和权限掩码通过一定的计算方法得来的。

2.权限掩码的计算

实际上,文件(目录)的权限是由:起始权限&(~权限掩码)计算得来的。
这里举个例子:
在这里插入图片描述
当然,权限掩码也可以自己设置,通过
umask + 8进制权限
来设置。
在这里插入图片描述
在这里插入图片描述
现在test1.txt的文件权限就是666了。

相关文章:

【Linux】linux权限

linux权限 一,Linux权限的概念二,Linux权限管理1.文件访问者分类2.文件类型和访问权限3.文件权限值的表示方法4.文件访问权限的设置 三,目录的权限四,粘滞位五,权限掩码1.什么是权限掩码2.权限掩码的计算 一&#xff0…...

XUbuntu22.04之如何创建、切换多个工作区(二百零九)

简介: CSDN博客专家,专注Android/Linux系统,分享多mic语音方案、音视频、编解码等技术,与大家一起成长! 优质专栏:Audio工程师进阶系列【原创干货持续更新中……】🚀 优质专栏:多媒…...

网络安全之SSL证书加密

简介 SSL证书是一种数字证书,遵守SSL协议,由受信任的数字证书颁发机构(CA)验证服务器身份后颁发。它具有服务器身份验证和数据传输加密的功能,能够确保数据在传输过程中的安全性和完整性。 具体来说,SSL证…...

格式化日期注解@JsonFormat的使用和TimeZone时区问题

JsonFormat的使用 目的 为了便于date类型字段的序列化和反序列化,需要在数据结构的Date、Timestamp、DateTime类型的字段上用JsonFormat注解进行注解 使用 JsonFormat注解是一个时间格式化注解,比如我们存储在mysql中的数据是date类型的,当…...

ReactNative实现文本渐变

我们直接上图,可以看到上面文本的效果,使用SVG实现 1.首先还是要引入react-native-svg库 2.使用该库下面的LinearGradient和Text 好,话不多说,我们看具体代码 <Svg width={422} height={30} viewBox={0 0 422 30}><Defs><LinearGradientid="Gradien…...

深度学习手写字符识别:训练模型

说明 本篇博客主要是跟着B站中国计量大学杨老师的视频实战深度学习手写字符识别。 第一个深度学习实例手写字符识别 深度学习环境配置 可以参考下篇博客&#xff0c;网上也有很多教程&#xff0c;很容易搭建好深度学习的环境。 Windows11搭建GPU版本PyTorch环境详细过程 数…...

Day 1. 学习linux高级编程之Shell命令和IO

1.C语言基础 现阶段学习安排 2.IO编程 多任务编程&#xff08;进程、线程&#xff09; 网络编程 数据库编程 3.数据结构 linux软件编程 1.linux&#xff1a; 操作系统&#xff1a;linux其实是操作系统的内核 系统调用&#xff1a;linux内核的函数接口 操作流程&#xff…...

STM32--SPI通信协议(1)SPI基础知识总结

前言 I2C (Inter-Integrated Circuit)和SPI (Serial Peripheral Interface)是两种常见的串行通信协议&#xff0c;用于连接集成电路芯片之间的通信&#xff0c;选择I2C或SPI取决于具体的应用需求。如果需要较高的传输速度和简单的接口&#xff0c;可以选择SPI。如果需要连接多…...

Debezium系列之:MariaDB10.5以上版本赋予数据库账号读取binlog权限的变化

Debezium系列之:MariaDB10.5以上版本赋予数据库账号读取binlog权限的变化 一、背景二、BINLOG MONITOR权限三、BINLOG MONITOR和REPLICA MONITOR的区别四、MariaDB版本升级的影响五、总结一、背景 数据接入会检测账号是否具有REPLICATION SLAVE、REPLICATION CLIENT的权限Mari…...

迅为STM32MP157开发板底板板载4G接口(选配)、千兆以太网、WIFI蓝牙模块

底板扩展接口丰富 底板板载4G接口(选配)、千兆以太网、WIFI蓝牙模块HDMI、CAN、RS485、LVDS接口、温湿度传感器(选配)光环境传感器、六轴传感器、2路USB OTG、3路串口CAMERA接口、ADC电位器、SPDIF、SDIO接口等。 支持多种显示屏 迅为在MP157开发板支持了多种屏幕&#xff0…...

「实用分享」用界面组件Telerik UI for Blazor增强你的财务图表!

Telerik UI for Blazor拥有110个原生的、易于定制的Blazor UI组件和高性能网格组件&#xff0c;能节约一半的时间开发全新的Blazor应用程序并使传统web项目现代化&#xff0c;其中囊括了设计和生成工具等。Telerik UI for Blazor控件提供的控件&#xff0c;可轻松满足应用程序对…...

使用org.openscada.utgard java opcda库做opc客户端时长期运行存在的若干问题

牛11月09日反馈东区存在以下问题&#xff0c;由于在现场未来得及处理。11月10日反馈西区亦存在此问题。经排查此问题已存在相当长一段时间&#xff08;最长为9月底即存在&#xff09;。 1、读报错Value: [[org.jinterop.dcom.core.VariantBody$EMPTY212c0aff]], Timestamp: Mo…...

杰克与魔法树的冒险

从前有一个小村庄&#xff0c;里面住着一个善良勇敢的小男孩叫杰克。杰克非常喜欢冒险和探索未知的事物。 一天&#xff0c;杰克听说村庄附近的森林里有一个神奇的魔法树&#xff0c;树上结满了金色的苹果。他决定去寻找这棵魔法树&#xff0c;并带回一些金苹果给村庄的居民们。…...

第九节HarmonyOS 常用基础组件22-Marquee

1、描述 跑马灯组件&#xff0c;用于滚动展示一段单行文本&#xff0c;仅当文本内容宽度超过跑马灯组件宽度时滚动。 2、接口 Marquee(value:{start:boolean, step?:number, loop?:number, fromStart?: boolean ,src:string}) 3、参数 参数名 参数类型 必填 描述 st…...

烽火传递

看似很简单的单调队列优化DP 但是如果状态是表示前\(i\)个烽火台被处理完的最小代价(即不知道最后一个烽火台在哪里)就无法降低复杂度 因为假设你在区间\([i-m1,i]\)中枚举最后一个烽火台(设为\(k\))&#xff0c;你前面的状态并不是\(f[k-1]\)&#xff0c;因为此时\(k\)已经可以…...

《深入浅出Go语言》大纲

目录 为什么选择《深入浅出Go语言》&#xff1f; 基础核心模块 为什么选择《深入浅出Go语言》&#xff1f; &#x1f680; 全面的基础知识体系 从环境搭建开始&#xff0c;对Go语言核心知识点进行深入探讨&#xff0c;深度挖掘每个基础知识的本质&#xff0c;为后续深入学习…...

flv视频格式批量截取封面图(不占内存版)--其他视频格式也通用

flv视频格式批量截取封面图&#xff08;不占内存版&#xff09;--其他视频格式也通用 需求&#xff08;实现的效果&#xff09;功能实现htmlcssjs 需求&#xff08;实现的效果&#xff09; 批量显示视频&#xff0c;后端若返回有imgUrl,则直接显示图1&#xff0c; 若无&#xf…...

【鸿蒙】大模型对话应用(三):跨Ability跳转页面

Demo介绍 本demo对接阿里云和百度的大模型API&#xff0c;实现一个简单的对话应用。 DecEco Studio版本&#xff1a;DevEco Studio 3.1.1 Release HarmonyOS SDK版本&#xff1a;API9 关键点&#xff1a;ArkTS、ArkUI、UIAbility、网络http请求、列表布局、层叠布局 页面跳…...

明道云入选亿欧智库《AIGC入局与低代码产品市场的发展研究》

2023年12月27日&#xff0c;亿欧智库正式发布**《AIGC入局与低代码产品市场的发展研究》**。该报告剖析了低代码/零代码市场的现状和发展趋势&#xff0c;深入探讨了大模型技术对此领域的影响和发展洞察。其中&#xff0c;亿欧智库将明道云作为标杆产品进行了研究和分析。 明…...

【深度学习】SDXL TensorRT Dockerfile Docker容器

文章目录 过程SDXL TensorRT构建SDXL TensorRT LCM 调度器过程 docker push kevinchina/deeplearning:cuda12.1torch2.1.1 FROM nvidia/cuda:12.1.1-cudnn8-devel-ubuntu22.04 ENV DEBIAN_FRONTEND=noninteractive# 安装基本软件包 RUN apt-get update && \apt-get u…...

超短脉冲激光自聚焦效应

前言与目录 强激光引起自聚焦效应机理 超短脉冲激光在脆性材料内部加工时引起的自聚焦效应&#xff0c;这是一种非线性光学现象&#xff0c;主要涉及光学克尔效应和材料的非线性光学特性。 自聚焦效应可以产生局部的强光场&#xff0c;对材料产生非线性响应&#xff0c;可能…...

聊聊 Pulsar:Producer 源码解析

一、前言 Apache Pulsar 是一个企业级的开源分布式消息传递平台&#xff0c;以其高性能、可扩展性和存储计算分离架构在消息队列和流处理领域独树一帜。在 Pulsar 的核心架构中&#xff0c;Producer&#xff08;生产者&#xff09; 是连接客户端应用与消息队列的第一步。生产者…...

CocosCreator 之 JavaScript/TypeScript和Java的相互交互

引擎版本&#xff1a; 3.8.1 语言&#xff1a; JavaScript/TypeScript、C、Java 环境&#xff1a;Window 参考&#xff1a;Java原生反射机制 您好&#xff0c;我是鹤九日&#xff01; 回顾 在上篇文章中&#xff1a;CocosCreator Android项目接入UnityAds 广告SDK。 我们简单讲…...

Axios请求超时重发机制

Axios 超时重新请求实现方案 在 Axios 中实现超时重新请求可以通过以下几种方式&#xff1a; 1. 使用拦截器实现自动重试 import axios from axios;// 创建axios实例 const instance axios.create();// 设置超时时间 instance.defaults.timeout 5000;// 最大重试次数 cons…...

前端开发面试题总结-JavaScript篇(一)

文章目录 JavaScript高频问答一、作用域与闭包1.什么是闭包&#xff08;Closure&#xff09;&#xff1f;闭包有什么应用场景和潜在问题&#xff1f;2.解释 JavaScript 的作用域链&#xff08;Scope Chain&#xff09; 二、原型与继承3.原型链是什么&#xff1f;如何实现继承&a…...

OpenLayers 分屏对比(地图联动)

注&#xff1a;当前使用的是 ol 5.3.0 版本&#xff0c;天地图使用的key请到天地图官网申请&#xff0c;并替换为自己的key 地图分屏对比在WebGIS开发中是很常见的功能&#xff0c;和卷帘图层不一样的是&#xff0c;分屏对比是在各个地图中添加相同或者不同的图层进行对比查看。…...

大数据学习(132)-HIve数据分析

​​​​&#x1f34b;&#x1f34b;大数据学习&#x1f34b;&#x1f34b; &#x1f525;系列专栏&#xff1a; &#x1f451;哲学语录: 用力所能及&#xff0c;改变世界。 &#x1f496;如果觉得博主的文章还不错的话&#xff0c;请点赞&#x1f44d;收藏⭐️留言&#x1f4…...

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

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

MFC 抛体运动模拟:常见问题解决与界面美化

在 MFC 中开发抛体运动模拟程序时,我们常遇到 轨迹残留、无效刷新、视觉单调、物理逻辑瑕疵 等问题。本文将针对这些痛点,详细解析原因并提供解决方案,同时兼顾界面美化,让模拟效果更专业、更高效。 问题一:历史轨迹与小球残影残留 现象 小球运动后,历史位置的 “残影”…...

深入浅出Diffusion模型:从原理到实践的全方位教程

I. 引言&#xff1a;生成式AI的黎明 – Diffusion模型是什么&#xff1f; 近年来&#xff0c;生成式人工智能&#xff08;Generative AI&#xff09;领域取得了爆炸性的进展&#xff0c;模型能够根据简单的文本提示创作出逼真的图像、连贯的文本&#xff0c;乃至更多令人惊叹的…...