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

【Linux】- 权限(2)

接上一篇文章,继续介绍linux权限的相关知识。https://blog.csdn.net/hffh123/article/details/143432940?spm=1001.2014.3001.5501j

目录

一、chown:修改文件的拥有者

二、chgrp:修改文件所属组

三、关于other的介绍

四、文件类型

1、分类

​​​2、linux系统的文件类型不靠后缀识别

(3)、windows有文件类型,是通过后缀识别

五、file指令:查看文件更详细内容

六、常见的权限的三个问题

(一)、对一个目录而言,如果要进入一个目录,需要什么权限?

(二)、权限掩码umask

1、问题引入

2、问题解答

(三)、粘滞位

(1)、引入

(2)、介绍


一、chown:修改文件的拥有者

1、语法:chown [参数] 新拥有者名 文件名

2、注意:

(1)、root用户可以直接修改

(2)、普通用户需要加sudo提升权限

3、使用:

二、chgrp:修改文件所属组

1、语法:chgrp  [参数]  新所属组名 文件名

2、注意:

(1)、root用户可以直接修改

(2)、普通用户需要加sudo提升权限

3.使用:

三、关于other的介绍

other没有修改指令,因为在修改所属组和拥有者的同时,other随时都在变化

四、文件类型

1、分类

在上一篇文章,还有一个文件属性没有介绍,即第一列的第一个字符的含义

该属性是表示文件的类型,分类如下:

选项类型特点
-表示该文件为普通文件、文本、源代码、图片视频、库、可执行文件等等
 d 目录文件
 bblock:块设备文件(如磁盘)可随机访问
cchar:字符设备文件(如键盘、显示器)不可随机访问
l

链接文件(也叫link文件):

类似于给一个路径取别名,这样就可以直接在当前目录执行一些深路径文件。

p

s

p为管道文件,与管道 ' | ' 是兄弟关系

s为socket文件

​​​2、linux系统的文件类型不靠后缀识别

注意:根据上面的内容,我们知道linux系统文件类型不靠后缀识别,但不代表linux不用后缀,一些gcc或g++等等工具需要识别。

依然推荐加上后缀:

(1)、工具需要

(2)、人需要

(3)、windows有文件类型,是通过后缀识别

后缀表示该文件属于哪个类别,可以被用来干什么操作。

五、file指令:查看文件更详细内容

六、常见的权限的三个问题

(一)、对一个目录而言,如果要进入一个目录,需要什么权限?

此时能否进入目录,我们要看目录文件的权限:

d开头代表dir1是一个目录,然后看后面针对拥有者、所属组、其他所具备的权限。

规则如下:

1、x决定用户是否可以进入目录。

2、r决定是否可以进行对目录里文件属性信息进行查看(例如进行ls -l指令)

3、w决定是否可以在目录下进行新建和删除文件

(二)、权限掩码umask

1、问题引入

首先我们思考一个问题:

为什么刚开始创建文件的权限默认为664,创建目录后权限默认为775?

这就是权限掩码的作用

2、问题解答

上述问题就是权限掩码的作用所产生的现象。

(1)、首先我们要知道系统起始创建文件(夹)后的起始权限:普通文件为666,目录为777.

(2)、然后产生权限掩码(由四位八进制数字组成):定制一个文件被创建时候的默认权限。

(3)、规则:

将起始权限和权限掩码的后三位八进制数字转换成二进制序列,然后从起始权限中去掉在umask中出现的权限(即值为1的权限)。

(4)、umask指令:可查看系统的权限掩码。

(5)、举例使用:

如图可知该系统的权限掩码为0002,取后三位数字转化为二进制数字为000 000 010,而文件的起始权限为666,转化为二进制序列为:110 110 110,所以根据规则得到默认权限为110 110 100,转化为八进制为664.

具体运算公式为:起始权限&(~umask)= 最终权限(默认权限)

(三)、粘滞位

(1)、引入

根据上面内容我们知道,删除一个文件的权限取决于该文件所处的目录是否具有w权限。而朋友用户默认是无法访问其他用户的家目录的,这是系统为了实现让多个之间可以进行数据共享,就创建了tmp文件夹。

此时我们不同用户可以在此文件夹里面创建自己文件夹,给别的用户分享自己的数据。我们可以设置自己文件的读写权限,但是我们无法设置文件的删除权限,因为由上知:删除一个文件的权限取决于该文件所处的目录是否具有w权限,权限在目录的身份上,不在文件上。意思是别的用户是可以随意删除我在tmp目录里面创建的文件的。

系统为了防止这种情况就引入了粘滞位

(2)、介绍

(1)、所谓的粘滞位即给other用户新增了一个权限:t

如上图:

(2)、介绍:

给共享目录tmp中的other设置一个新权限位t,具有x的意义,同时对该目录权限限定了一个新规则:该目录里面的文件只有root或者文件的拥有者有权利进行删除,其他人一概不许。

相关文章:

【Linux】- 权限(2)

接上一篇文章,继续介绍linux权限的相关知识。https://blog.csdn.net/hffh123/article/details/143432940?spm1001.2014.3001.5501j 目录 一、chown:修改文件的拥有者 二、chgrp:修改文件所属组 三、关于other的介绍 四、文件类型 1、分类…...

如何设置内网IP的端口映射到公网

在现代网络环境中,端口映射(Port Mapping)是一项非常实用的技术,它允许用户将内网设备的服务端口映射到公网,使外网用户可以访问内网中的服务。这项技术在远程办公、设备远程控制、游戏服务器、家庭监控等场景中得到了…...

Matplotlib | 条形图中的每个条形(patch)设置标签数据的方法

方法一 不使用子图对象如何给形图中的每个条形设置数据 plt.figure(figsize(8, 4)) sns.countplot(xWorkout_Frequency (days/week), datadf)plt.title(会员每周锻炼频率分布) plt.xlabel(锻炼频率 (每周次数)) plt.ylabel(人数)# 获取当前活动的轴对象 ax plt.gca()# 循环遍…...

机器学习3_支持向量机_线性不可分——MOOC

线性不可分的情况 如果训练样本是线性不可分的,那么上一节问题的是无解的,即不存在 和 满足上面所有N个限制条件。 对于线性不可分的情况,需要适当放松限制条件,使得问题有解。 放松限制条件的基本思路: 对每个训…...

bash: git: command not found

在windows上重新安装Git之后,遇到cmd可以使用git命令,但是git bash中使用的git命令的时候,会提示: $ git bash: git: command not found 解决办法 找到用户目录下的.bash_profile和.bashrc文件,编辑打开,找…...

大模型LLama3!!!Ollama下载、部署和应用(保姆级详细教程)

首先呢,大家在网站先下载ollama软件 这就和anaconda和python是一样的 废话不多说 直接上链接:Download Ollama on Windows 三个系统都支持 注意: 这里的Models,就是在上面,大家点开之后,里面有很多模型…...

ReactPress系列—NestJS 服务端开发流程简介

ReactPress Github项目地址:https://github.com/fecommunity/reactpress 欢迎提出宝贵的建议,感谢Star。 NestJS 服务端开发流程简介 NestJS 是一个用于构建高效、可靠和可扩展的服务器端应用程序的框架。它使用 TypeScript(但也支持纯 Java…...

Maven 下载配置 详解 我的学习笔记

Maven 下载配置 详解 我的学习笔记 一、Maven 简介二、maven安装配置三、maven基本使用四、idea配置mavenidea配置maven环境maven坐标idea创建maven项目配置Maven-Helper插件 五、依赖管理 一、Maven 简介 Apache Maven 是一个项目管理和构建工具,它基于项目对象模型…...

【学术精选】SCI期刊《Electronics》特刊“New Challenges in Remote Sensing Image Processing“

英文名称:New Challenges in Remote Sensing Image Processing 中文名称:"遥感图像处理的新挑战"特刊 期刊介绍 “New Challenges in Remote Sensing Image Processing”特刊隶属于《Electronics》期刊,聚焦遥感图像处理领域快速…...

卷积神经网络——pytorch与paddle实现卷积神经网络

卷积神经网络——pytorch与paddle实现卷积神经网络 本文将深入探讨卷积神经网络的理论基础,并通过PyTorch和PaddlePaddle两个深度学习框架来展示如何实现卷积神经网络模型。我们将首先介绍卷积神经网络、图像处理的基本概念,这些理论基础是理解和实现卷…...

云平台虚拟机运维笔记整理,使用libvirt创建和管理虚拟机,以及开启虚拟机嵌套,虚拟磁盘扩容,物理磁盘扩容等等

云平台虚拟机运维笔记整理,使用libvirt创建和管理虚拟机,以及开启虚拟机嵌套,虚拟磁盘扩容,物理磁盘扩容等等。 掌握和使用qemu和libvirt,分别使用它们创建一个cirros虚拟机,并配置好网络。 宿主机node0的系统为ubuntu16,IP为192.168.56.200。 qemu和libvirt简介 QEMU…...

最佳实践:如何实现函数参数之间的TS类型相依赖和自动推断

引入 最近在开发一款极致优雅的前端状态管理库AutoStore时碰到这样一个问题。 拟实现Field组件,该组件相关类型简化代码如下: type Field (props:{validate,render:(props:{value,isValid}) })该组件,具有validate和render两个属性: 其中…...

Linux基础指令1

好久没写博客了,这次我将重新做人,每星期都更,做不到的话直接倒立洗头。最近在学Linux,感觉很厉害的样子,先浅学一下再弄数据结构去。 Linux的基本操作是通过指令来执行的,所以我们先来学习下指令。 1.简…...

软件设计师:排序算法总结

一、直接插入 排序方式:从第一个数开始,拿两个数比较,把后面一位跟前面的数比较,把较小的数放在前面一位 二、希尔 排序方式:按“增量序列(步长)”分组比较,组内元素比较交换 假设…...

「Mac畅玩鸿蒙与硬件25」UI互动应用篇2 - 计时器应用实现

本篇将带领你实现一个实用的计时器应用,用户可以启动、暂停或重置计时器。该项目将涉及时间控制、状态管理以及按钮交互,是掌握鸿蒙应用开发的重要步骤。 关键词 UI互动应用时间控制状态管理用户交互 一、功能说明 在这个计时器应用中,用户…...

计算机专业开题报告写法,该怎么写好?

不会写开题报告,或者想要一些论文模版的,欢迎评论,会第一时间给大家。 题报告是计算机专业大学毕业生在开展毕业设计或论文研究前,对研究课题进行详细介绍和计划的重要环节。作为开题者对科研课题的一种文字说明,开题…...

Vue(JavaScript)读取csv表格并求某一列之和(大浮点数处理: decimal.js)

文章目录 想要读这个表格,并且求第二列所有价格的和方法一:通过添加文件输入元素上传csv完整(正确)代码之前的错误部分因为价格是小数,所以下面的代码出错。如果把parseFloat改成parseInt,那么求和没有意义…...

Pyraformer复现心得

Pyraformer复现心得 引用 Liu, Shizhan, et al. “Pyraformer: Low-complexity pyramidal attention for long-range time series modeling and forecasting.” International conference on learning representations. 2021. 代码部分 def long_forecast(self, x_enc, x_m…...

成绩排序c++

说明 给出了班里某门课程的成绩单&#xff0c;请你按成绩从高到低对成绩单排序输出&#xff0c;如果有相同分数则名字字典序小的在前。 输入格式 第一行为nn(0<n<200<n<20)&#xff0c;表示班里的学生数目; 接下来的nn行&#xff0c;每行为每个学生的名字和他的…...

人脸检测之MTCNN算法网络结构

MTCNN&#xff08;Multi-task Cascaded Convolutional Networks&#xff09;是一种用于人脸检测和关键点检测的深度学习模型&#xff0c;特别适合在复杂背景下识别出多尺度的人脸。它通过多任务学习来实现人脸检测和人脸关键点定位&#xff08;如眼睛、鼻子、嘴巴的位置&#x…...

uniapp 对接腾讯云IM群组成员管理(增删改查)

UniApp 实战&#xff1a;腾讯云IM群组成员管理&#xff08;增删改查&#xff09; 一、前言 在社交类App开发中&#xff0c;群组成员管理是核心功能之一。本文将基于UniApp框架&#xff0c;结合腾讯云IM SDK&#xff0c;详细讲解如何实现群组成员的增删改查全流程。 权限校验…...

云原生核心技术 (7/12): K8s 核心概念白话解读(上):Pod 和 Deployment 究竟是什么?

大家好&#xff0c;欢迎来到《云原生核心技术》系列的第七篇&#xff01; 在上一篇&#xff0c;我们成功地使用 Minikube 或 kind 在自己的电脑上搭建起了一个迷你但功能完备的 Kubernetes 集群。现在&#xff0c;我们就像一个拥有了一块崭新数字土地的农场主&#xff0c;是时…...

51c自动驾驶~合集58

我自己的原文哦~ https://blog.51cto.com/whaosoft/13967107 #CCA-Attention 全局池化局部保留&#xff0c;CCA-Attention为LLM长文本建模带来突破性进展 琶洲实验室、华南理工大学联合推出关键上下文感知注意力机制&#xff08;CCA-Attention&#xff09;&#xff0c;…...

Spark 之 入门讲解详细版(1)

1、简介 1.1 Spark简介 Spark是加州大学伯克利分校AMP实验室&#xff08;Algorithms, Machines, and People Lab&#xff09;开发通用内存并行计算框架。Spark在2013年6月进入Apache成为孵化项目&#xff0c;8个月后成为Apache顶级项目&#xff0c;速度之快足见过人之处&…...

【网络安全产品大调研系列】2. 体验漏洞扫描

前言 2023 年漏洞扫描服务市场规模预计为 3.06&#xff08;十亿美元&#xff09;。漏洞扫描服务市场行业预计将从 2024 年的 3.48&#xff08;十亿美元&#xff09;增长到 2032 年的 9.54&#xff08;十亿美元&#xff09;。预测期内漏洞扫描服务市场 CAGR&#xff08;增长率&…...

数据链路层的主要功能是什么

数据链路层&#xff08;OSI模型第2层&#xff09;的核心功能是在相邻网络节点&#xff08;如交换机、主机&#xff09;间提供可靠的数据帧传输服务&#xff0c;主要职责包括&#xff1a; &#x1f511; 核心功能详解&#xff1a; 帧封装与解封装 封装&#xff1a; 将网络层下发…...

Rust 异步编程

Rust 异步编程 引言 Rust 是一种系统编程语言,以其高性能、安全性以及零成本抽象而著称。在多核处理器成为主流的今天,异步编程成为了一种提高应用性能、优化资源利用的有效手段。本文将深入探讨 Rust 异步编程的核心概念、常用库以及最佳实践。 异步编程基础 什么是异步…...

高防服务器能够抵御哪些网络攻击呢?

高防服务器作为一种有着高度防御能力的服务器&#xff0c;可以帮助网站应对分布式拒绝服务攻击&#xff0c;有效识别和清理一些恶意的网络流量&#xff0c;为用户提供安全且稳定的网络环境&#xff0c;那么&#xff0c;高防服务器一般都可以抵御哪些网络攻击呢&#xff1f;下面…...

Maven 概述、安装、配置、仓库、私服详解

目录 1、Maven 概述 1.1 Maven 的定义 1.2 Maven 解决的问题 1.3 Maven 的核心特性与优势 2、Maven 安装 2.1 下载 Maven 2.2 安装配置 Maven 2.3 测试安装 2.4 修改 Maven 本地仓库的默认路径 3、Maven 配置 3.1 配置本地仓库 3.2 配置 JDK 3.3 IDEA 配置本地 Ma…...

JS手写代码篇----使用Promise封装AJAX请求

15、使用Promise封装AJAX请求 promise就有reject和resolve了&#xff0c;就不必写成功和失败的回调函数了 const BASEURL ./手写ajax/test.jsonfunction promiseAjax() {return new Promise((resolve, reject) > {const xhr new XMLHttpRequest();xhr.open("get&quo…...