【Linux】Linux入门(三)权限

目录

  • 前提
  • 权限概念
    • whoami指令
  • Linux权限管理
    • 文件访问者的分类(人)
    • file指令
    • 权限信息
      • 权限的表示方法
    • chmod指令 更改权限
    • chown指令 修改文件,文件夹所属用户和用户组
  • 权限掩码
    • umask(权限掩码)
  • 粘滞位

前提

请先看下面这篇文章。
用户与用户组

权限概念

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

  • 超级用户:可以再linux系统下做任何事情,不受限制
  • 普通用户:在linux下做有限的事情。
  • 超级用户的命令提示符是“#”,普通用户的命令提示符是“$”
    在这里插入图片描述

whoami指令

whoami

功能:
显示当前登录用户的用户名

Linux权限管理

文件访问者的分类(人)

对于用户来讲,我们可以将其分为三类:

  • 文件和文件目录的所有者:u—User(拥有者)
  • 文件和文件目录的所有者所在的组的用户:g—Group(所属组)
  • 其它用户:o—Others

在Linux中,我们通常查看当前目录下文件的详细信息,使用ll指令,会看到文件前面有很多字符,他们都是什么意思呢?
在这里插入图片描述

file指令

功能:辨识文件类型。

权限信息

在这里插入图片描述

  • r表示读权限
    • 针对文件,可以查看文件内容
    • 针对文件夹,可以查看文件夹内容,如ls命令
  • w表示写权限
    • 针对文件,表示可以修改此文件
    • 针对文件夹,可以在文件夹内:创建,删除,改名等操作
  • x表示执行权限
    • 针对文件,表示可以将文件作为程序执行
    • 针对文件夹,表示可以更改工作目录到此文件夹,如cd进入命令

权限的表示方法

1. 字符表示法:

字符说明字符说明
r - -仅可读- w -仅可写
- - x仅可执行r w -可读可写
- w x可写可执行r - x可读可执行
r w x可读可写可执行- - -无权限

2. 八进制数值表示法:

权限符号八进制二进制说明
r - -4100仅可读
r - -4100仅可读
- w -2010仅可写
- - x1001仅可执行
r w -6110可读可写
r - x5101可读可执行
- w x3011可写可执行
r w x7111可读可写可执行
- - -0000无权限

如此,751可表示为rwxr-xr--

chmod指令 更改权限

chmod  [-R] 权限 文件或者文件夹

功能:修改文件,文件夹的权限信息。

选项:

  • -R 对文件夹内的全部内容应用同样的操作

示例:

其中,u表示所属用户权限,g表示group组权限,o表示other其他用户权限

chmod u=rwx,g=rx,o=x hello.txt   将文件权限修改为 `rwxr-x--x`
chmod -R u=rwx,g=rx,o=x dir      将文件夹以及文件夹内全部内容权限修改
chmod 751  hello.txt 			 将文件修改权限为`rwxr-xr--`

chown指令 修改文件,文件夹所属用户和用户组

chown [-R] [用户] [:] [用户组] 文件或文件夹

选项:

  • -R 对文件夹内全部内容应用相同规则
  • 用户,修改所属用户
  • 用户组,修改所属用户组
  • : 用于分隔用户和用户组

功能:
修改文件,文件夹所属用户和用户组

示例:

chown -R :root test     将test目录和里面全部内容的用户组更改为root

权限掩码

Linux规定:普通文件和目录被创建出来,默认的权限是0666和0777。

umask(权限掩码)

权限掩码的功能:凡是在umask中出现的权限,都必须在起始权限中去掉。

超级用户默认掩码值为0022,普通用户默认为0002。

实例:

# umask //查看
# umask 044//设置

粘滞位

因为只要用户具有目录的写权限, 用户就可以删除目录中的文件。
我张三创建的一个文件, 凭什么被你李四可以删掉?不合理。

为了解决这个不科学的问题, Linux引入了粘滞位的概念。

chmod +t

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

  • 一、超级管理员删除
  • 二、该目录的所有者删除
  • 三、该文件的所有者删除

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

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

相关文章

蓝桥与力扣刷题(73 矩阵置零)

题目:给定一个 m x n 的矩阵,如果一个元素为 0 ,则将其所在行和列的所有元素都设为 0 。请使用 原地 算法。 示例 1: 输入:matrix [[1,1,1],[1,0,1],[1,1,1]] 输出:[[1,0,1],[0,0,0],[1,0,1]]示例 2&…

Node.js接收文件分片数据并进行合并处理

前言:上一篇文章讲了如何进行文件的分片:Vue3使用多线程处理文件分片任务,那么本篇文章主要看一下后端怎么接收前端上传来的分片并进行合并处理。 目录: 一、文件结构二、主要依赖1. express2. multer3. fs (文件系统模块)4. pat…

大数据,Hadoop,HDFS的简单介绍

大数据 海量数据,具有高增长率、数据类型多样化、一定时间内无法使用常规软件工具进行捕捉、管理和处理的数据集 合 大数据的特征: 4V Volume : 巨大的数据量 Variety : 数据类型多样化 结构化的数据 : 即具有固定格式和有限长度的数据 半结构化的数据 : 是…

深度强化学习:PPO

深度强化学习算法:PPO 1. Importance Sampling 先说一下什么是采样:对于一个随机变量,我们通常用概率密度函数来描述该变量的概率分布特性。具体来说,给定随机变量的一个取值,可以根据概率密度函数来计算该值对应的概…

Flink底层架构与运行流程

这张图展示了Flink程序的架构和运行流程。 主要组件及功能: Flink Program(Flink程序): 包含Program code(程序代码),这是用户编写的业务逻辑代码。经过Optimizer / Graph Builder&#xff08…

嵌入式知识点总结 C/C++ 专题提升(一)-关键字

针对于嵌入式软件杂乱的知识点总结起来,提供给读者学习复习对下述内容的强化。 目录 1.C语言宏中"#“和"##"的用法 1.1.(#)字符串化操作符 1.2.(##)符号连接操作符 2.关键字volatile有什么含意?并举出三个不同的例子? 2.1.并行设备的硬件寄存…

mysql精简单机版,免登录,可复制,不启动服务与本机mysql无冲突

突然有了个需要在本地使用的mysql需求,要求不用安装,随拷随用,不影响其他mysql服务,占用空间小.基于这种需求做了个精简版的mysql 首先下载mysql的zip安装包 > windows 64位 > https://repo.huaweicloud.com/mysql/Downloads/MySQL-5.7/mysql-5.7.36-winx64…

俄语画外音的特点

随着全球媒体消费的增加,语音服务呈指数级增长。作为视听翻译和本地化的一个关键方面,画外音在确保来自不同语言和文化背景的观众能够以一种真实和可访问的方式参与内容方面发挥着重要作用。说到俄语,画外音有其独特的特点、挑战和复杂性&…

【vitePress】基于github快速添加评论功能(giscus)

一.添加评论插件 使用giscus来做vitepress 的评论模块,使用也非常的简单,具体可以参考:giscus 文档,首先安装giscus npm i giscus/vue 二.giscus操作 打开giscus 文档,如下图所示,填入你的 github 用户…

python麻辣香锅菜品推荐

1.推荐算法概述 推荐算法出现得很早,最早的推荐系统是卡耐基梅隆大学推出的Web Watcher浏览器导航系统,可以根据当的搜索目标和用户信息,突出显示对用户有用的超链接。斯坦福大学则推出了个性化推荐系统LIRA.AT&T实验室于1997年提出基于协作过滤的个性化推荐系统…

Android系统开发(六):从Linux到Android:模块化开发,GKI内核的硬核科普

引言: 今天我们聊聊Android生态中最“硬核”的话题:通用内核镜像(GKI)与内核模块接口(KMI)。这是内核碎片化终结者的秘密武器,解决了内核和供应商模块之间无尽的兼容性问题。为什么重要&#x…

UE 像素流Pixel Streaming笔记

参考 UE 像素流Pixel Streaming基本介绍和使用方法 UE4-PixelStreaming(虚幻引擎4-像素流)笔记 UE 像素流常用回调 UE 像素流通信 这链接能学到不少像素流的东西 使用 1.像素流连接成功(On New Connection) 必须使用GetPixe…

Java 资源管理教程:掌握 close 方法、Cleaner 类与 Runtime.addShutdownHook

在 Java 编程中,高效地管理资源是至关重要的,特别是当你处理文件、数据库连接、网络连接等有限资源时。为了确保这些资源得到正确释放,Java 提供了多种机制。本教程将深入探讨 close 方法、Cleaner类以及 Runtime.addShutdownHook 方法&#…

ASP.NET Blazor部署方式有哪些?

今天我们来说说Blazor的三种部署方式,如果大家还不了解Blazor,那么我先简单介绍下Blazor Blazor 是一种 .NET 前端 Web 框架,在单个编程模型中同时支持服务器端呈现和客户端交互性: ● 使用 C# 创建丰富的交互式 UI。 ● 共享使用…

微信小程序使用上拉加载onReachBottom。页面拖不动。一直无法触发上拉的事件。

1,可能是原因是你使用了scroll-view的标签,用onReachBottom触发加载事件。这两个是有冲突的。没办法一起使用。如果页面的样式是滚动的是无法去触发页面的onReachBottom的函数的。因此,你使用overflow:auto.来使用页面的某些元素滚动&#xf…

学习ASP.NET Core的身份认证(基于JwtBearer的身份认证9)

测试数据库中只有之前记录温湿度及烟雾值的表中数据较多,在该数据库中增加AppUser表,用于登录用户身份查询,数据库表如下所示:   项目中安装SqlSugarCore包,然后修改控制器类的登录函数及分页查询数据函数&#xff…

【人工智能】:搭建本地AI服务——Ollama、LobeChat和Go语言的全方位实践指南

前言 随着自然语言处理(NLP)技术的快速发展,越来越多的企业和个人开发者寻求在本地环境中运行大型语言模型(LLM),以确保数据隐私和提高响应速度。Ollama 作为一个强大的本地运行框架,支持多种先…

Flutter:carousel_slider 横向轮播图、垂直轮播公告栏实现

安装依赖 carousel_slider: ^5.0.01、垂直滚动公告栏 import package:carousel_slider/carousel_options.dart;// 垂直滚动公告栏Widget _buildNotice() {return <Widget>[<Widget>[TDImage(assetUrl: "assets/img/home11.png",width: 60.w,height: 60.w…

图像去雾数据集的下载和预处理操作

前言 目前&#xff0c;因为要做对比实验&#xff0c;收集了一下去雾数据集&#xff0c;并且建立了一个数据集的预处理工程。 这是以前我写的一个小仓库&#xff0c;我决定还是把它用起来&#xff0c;下面将展示下载的路径和数据处理的方法。 下面的代码均可以在此找到。Auo…

C++ 面向对象(继承)

三、继承 3.1 继承的概念 基于一个已有的类 去重新定义一个新的类&#xff0c;这种方式我们叫做继承 关于继承的称呼 一个类B 继承来自 类 A 我们一般称呼 A类&#xff1a;父类 基类 B类: 子类 派生类 B继承自A A 派生了B 示例图的语法 class vehicle // 车类 {}class …