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

linux013之文件和目录的权限管理

用户、组、文件目录的关系:

  简介:用户和组关联,组合文件目录关联,这样就实现了用户对文件的权限管理。首先来看一下,一个文件或目录的权限是怎么查看的,ls -l, 如下,这个信息怎么看呢?

    首先看第一部分,“dr-xr-xr-x.” 这个是权限说明, 这个字母各代表什么权限下面会说明。这个数字 5 和字母一样,也是权限说明,只不过一个是用字母表一个是用数字表示。

    第二部分:权限信息里有两个“root”,首先来看第一个 “root” ,这个代表的是文件的所有者,也就是这个文件的拥有者,这是一个用户。

    第三部分:再来看看第二个“root”,这个代表的是文件的所在组,这是一个组别,为什么组别和用户同名呢?因为创建用户时没有指定组,所以系统自动创建了一个组给用户

[root@localhost /]# ls -l
dr-xr-xr-x.   5 root root 4096 Jul 23  2021 boot

文件与组的关系:

  强调1:用户与组。每一个用户都至少属于一个组,用户不能与组存在,一个用户可以属于多个组,组概念相当于角色。

  强调2:文件与组。每一个文件或目录也必须属于一个组,而且也只能属于一个组。文件和目录能通过这个组来进行权限管理,当用户存在于这个组, 则用户就有这个文件或目录的权限

  在文件或者目录中来看, linux系统中所哟的用户分为三类:

    所有者:默认情况下,文件或目录的所有者属于创建者,可以修改

    同组用户:同一个权限组下的其它用户

    其它组用户:既不是文件所有者,也不是同组用户。

  ls -l :查看文件的所有者和所在组信息。如下所显示,“ dr-xr-xr-x. ”这个是权限说明,“ root ”这个表示文件所有者, 第二个“ root ”表示文件所在组

[root@localhost /]# ls -l
dr-xr-xr-x.   5 root root 4096 Jul 23  2021 boot

  chown 新所有者 文件名:修改文件或目录所有者。修改权限之前, 当前用户必须对文件有修改权限才行。

  chown 新所有者:新所在组 文件名: 同时修改文件或目录(所有者)和(所在组)。

    注意:修改目录所有者或所在组时, 目录底下的内容权限默认下是不会跟着改的。

  chown -R 新所有者:新所在组 文件名:   递归修改目录所有者和所在组。

  chgrp 新组名 文件名 :修改文件或目录所在组

文件和目录的三种权限:

  对于文件而言:

    读(Read):可以读取、查看文件内容,比如:cat、more、less、head、tail等

    写(Write):可以修改文件的内容,比如:vi和vim等

    执行(Execute):可以执行该文件,运行该文件,如:.sh文件,有执行权限才能去执行。

  对于目录而言:

    读:可以读取目录里面的文件,比如:ls

    写:可以修改目录中内容,比如:创建在目录下创建文件、删除文件、重命名等

    执行:可以进入该目录,比如:cd等。

文件和目录的权限控制:

  在linux中,文件权限管理分别使用r(读)、w(写)、x(执行)来对文件权限的表示

    rwx:表示对文件拥有读、写、执行权限

    r-x:表示对文件拥有读、执行权限。

    r--:表示对文件拥有读权限。

    ---:表示对文件没有权限。这里需要注意的是,如果没有某一个权限,则用-来表示。

  在linux中,任何一个文件和目录都有三种部分权限:

    第一部分:所有者权限。如下图,从2位到4位,就是“所有者”对该文件所对应的权限,读和写

    第二部分:同组用户权限。如下图,从5位到7位,就是“同组用户” 对该文件所对应的权限。

    第三部分:其它组用户权限。如下图,从8位到10位,就是 “其它组用户” 对该文件所对应的权限。

     补充:那第1位的 - 代表的什么?-代表的是文件,如果是 d 代表的是目录

修改文件或目录的权限:

  用+、-、=分别表示给指定用户组增加、减少、设置权限

  用r、w、x分表读、写、执行权限

  用u、g、o、a分别表示给所有者、同组用户、其它组用户、所有组用户修改权限。 

  举例示例:

    chmod g-w,o+w 文件名:表示给所有者增加写权限,给其它组用户减少写权限。

    chmod g=rwx 文件名:表示给所有者增加读、写、执行权限。

    chmod a-r 文件名:表示给所有组用户剔除读权限。

通过数字来修改文件或目录的权限:

  每一个权限除了可以用r、w、x来表示,也可以用数字4、2、1来表示是,它们所对应的权限就是r、w、x。

  每一个组别的权限,也可以用数字之和来表示,怎么理解呢? 假如说所有组、同组用户、其他组用户的权限分别是rwx、r-x、---,可以看到它们的权限分别是读写执行、读和执行、无权限。这时候可以用数字之和来表示7、5、0。结合上面讲的数字权限,相信你已经看出规律了,那来看一下他们是怎么使用的。

  举例示例:

    chmod 777 文件名:表示给所有者、同组用户、其它组用户都增加读、写、执行权限

    chmod 753 文件名:表示给所有者、同组用户、其它组用户分别修改权限为读写执行、读执行、写执行权限。

    chmod 000 文件名:表示给所有用户组的权限都修改为无权限。

相关文章:

linux013之文件和目录的权限管理

用户、组、文件目录的关系: 简介:用户和组关联,组合文件目录关联,这样就实现了用户对文件的权限管理。首先来看一下,一个文件或目录的权限是怎么查看的,ls -l, 如下,这个信息怎么看呢…...

设计模式之状态模式

什么是状态模式 状态模式是指允许一个对象在其内部状态改变时改变他的行为,对象看起来似乎改变了整个类。     状态模式将一个对象在不同状态下的不同行为封装在一个个状态类中,通过设置不同的状态对象可以让环境对象拥有不同的行为,而状…...

XQuery 选择 和 过滤

XML实例文档 我们将在下面的例子中继续使用这个 "books.xml" 文档(和上面的章节所使用的 XML 文件相同)。 在您的浏览器中查看 "books.xml" 文件。 选择和过滤元素 正如在前面的章节所看到的,我们使用路径表达式或 FL…...

室友打了一把王者的时间,我理清楚了grep,find,管道|,xargs的区别与联系,用的时候不知道为什么要这样用

目录 问题引入 find和grep的基本区别 xargs命令 Linux命令的标准输入 vs 命令行参数 举例总结 问题引入 在自己做项目的过程中,想使用linux命令统计下一个目录下html文件的数量,在思考应该使用grep还是find去配合wc指令统计文件数量,后来…...

python 刷题时常见的函数

collections.OrderedDict 1. move_to_end() move_to_end() 函数可以将指定的键值对移动到最前面或者最后面,即最左边或最右边 。 2. popitem() popitem()可以完成元素的删除操作,有一个可选参数last(默认为True),…...

Python之列表推导式和列表排序

Python中的列表推导式,是小编比较喜欢的一种,他能大大减少你的代码量来得到你想要的结果,下面说说列表中常用的几种推导式 列表排序 Python开发中会经常用到排序操作,这里提供两种方式供大家参考,对象的sort()方法和…...

力扣(LeetCode)240. 搜索二维矩阵 II(C++)

题目描述 枚举 枚举整个矩阵&#xff0c;找到等于 target 的元素&#xff0c;则 return true &#xff0c;否则 return false。 class Solution { public:bool searchMatrix(vector<vector<int>>& matrix, int target) {int n matrix.size(), m matrix[0]…...

golang defer

文章目录延迟函数的参数在defer语句出现时就已经确定下来了延迟函数没有入参时&#xff0c;延迟函数体内的变量会受到影响延迟函数 *可以* 修改主函数的 *具名* 返回值延迟函数 *无法* 修改主函数的 *匿名* 返回值defer会把声明的 延迟函数以及 函数的入参放到栈上&#xff0c;…...

【Java】线程的死锁和释放锁

线程死锁是线程同步的时候可能出现的一种问题 文章目录1. 线程的死锁1.1 基本介绍1.2 应用案例2. 释放锁2.1 下面的操作会释放锁2.2 下面的操作不会释放锁1. 线程的死锁 1.1 基本介绍 多个线程都占用了对方的锁资源&#xff0c;但不肯相让&#xff0c;导致了死锁&#xff0c;…...

如何使用断点续传上传大文件

概念 大文件上传的需求介绍 不管怎样简单的需求&#xff0c;在量级达到一定层次时&#xff0c;都会变得异常复杂。 文件上传简单&#xff0c;文件变大就复杂 上传大文件时&#xff0c;以下几个变量会影响我们的用户体验 服务器处理数据的能力请求超时网络波动 上传时间会变长…...

【图神经网络】图拉普拉斯滤波器如何实现全通、低通、高通滤波

【图神经网络】图拉普拉斯滤波器如何实现全通、低通、高通滤波 文章目录【图神经网络】图拉普拉斯滤波器如何实现全通、低通、高通滤波1. 前言2. 符号说明3. 三种滤波3.1 全通滤波3.2 低通滤波3.2.1 平滑信号分析3.2.2 广义拉普拉斯平滑滤波器3.3 高通滤波4. 总结1. 前言 GCN&…...

python操作mysql数据库详解

使用Python操作MySQL数据库 MySQL是一种关系型数据库管理系统&#xff0c;它可以用来存储和管理大量的数据。之前介绍了大部分主流数据库&#xff0c;今天将介绍如何使用Python来操作MySQL数据库。 安装MySQL 首先&#xff0c;我们需要安装MySQL服务器&#xff0c;可以从MyS…...

netty群聊系统

1设计思路&#xff1a;启动一个服务端&#xff0c;多个客户端第一个客户端启动时&#xff0c;会告诉服务器上线了第二个客户端启动时&#xff0c;告诉服务器上线&#xff0c;并且通知第一个启动的客户端第三个客户端启动时&#xff0c;告诉服务器上线&#xff0c;并且通知第一个…...

Android 初代 K-V 存储框架 SharedPreferences,旧时代的余晖?

本文已收录到 AndroidFamily&#xff0c;技术和职场问题&#xff0c;请关注公众号 [彭旭锐] 提问。 前言 大家好&#xff0c;我是小彭。 SharedPreferences 是 Android 平台上轻量级的 K-V 存储框架&#xff0c;亦是初代 K-V 存储框架&#xff0c;至今被很多应用沿用。 有的…...

在windows中使用tomcat搭建Jenkins

1、 准备环境&#xff1a;JDK JDK官网下载&#xff1a;https://download.oracle.com/java/19/latest/jdk-19_windows-x64_bin.msi 2、 tomcat包 tocat官网下载&#xff1a;https://tomcat.apache.org/download-90.cgi 3、 Jenkins.war包 Jenkins官网下载&#xff1a;https://mi…...

Linux系统

linux系统 世界上最重要的服务器端操作系统。 创建新目录 mkdir app mkdir -m 目录权限 目录名 创建有权限的目录名。 创建一个空白文件 touch app.txt创建一个文件。 cat创建一个文件。 vi/vim创建一个文件。 nano创建一个文件。 truncate创建一个文件。 pwd查看当前目录。 rm…...

Mel Frequency Cepstral Coefficients (MFCCs)

wiki里说 在声音处理中&#xff0c;梅尔频率倒谱( MFC ) 是声音的短期功率谱的表示&#xff0c;基于非线性梅尔频率标度上的对数功率谱的线性余弦变换。 倒谱和MFC 之间的区别在于&#xff0c;在 MFC 中&#xff0c;频带在梅尔尺度上等距分布&#xff0c;这比正常频谱中使用的线…...

第七讲---贪心(上课)

1.股票买卖 一、贪心 考虑一种方案&#xff0c;在每次上升的前一天购入股票&#xff0c;并在上升后的当天卖出的方案 if (w[i] > w[i - 1])res w[i] - w[i - 1];接下来证明该贪心思路得出的方案即是最优解。 &#xff08;1&#xff09;证明贪心解 ≥ 最优解&#xff1a; …...

计算机如何思考与图灵完备

图灵完备是针对一套数据操作规则而言的概念,数据操作规则可以是一门编程语言,也可以是计算机实现里面的指令集,比如C/C++是图图灵完备的,通用CPU也是图灵完备的,但是GPU却不一定是图灵完备的。说白了图灵完备定义了一套规则,当这套规则可以实现图灵迹模型里的全部功能时,…...

惠普LaserJet M1005 MFP报错b2

故障现象: 惠普LaserJet M1005 MFP开机后直接报b2错误; 检测维修: 故障大意是:机器的硬件可能出现点突变,此问题建议联系当地维修中心进行处理。...

MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例

一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...

从零实现富文本编辑器#5-编辑器选区模型的状态结构表达

先前我们总结了浏览器选区模型的交互策略&#xff0c;并且实现了基本的选区操作&#xff0c;还调研了自绘选区的实现。那么相对的&#xff0c;我们还需要设计编辑器的选区表达&#xff0c;也可以称为模型选区。编辑器中应用变更时的操作范围&#xff0c;就是以模型选区为基准来…...

前端导出带有合并单元格的列表

// 导出async function exportExcel(fileName "共识调整.xlsx") {// 所有数据const exportData await getAllMainData();// 表头内容let fitstTitleList [];const secondTitleList [];allColumns.value.forEach(column > {if (!column.children) {fitstTitleL…...

2.Vue编写一个app

1.src中重要的组成 1.1main.ts // 引入createApp用于创建应用 import { createApp } from "vue"; // 引用App根组件 import App from ./App.vue;createApp(App).mount(#app)1.2 App.vue 其中要写三种标签 <template> <!--html--> </template>…...

深入解析C++中的extern关键字:跨文件共享变量与函数的终极指南

&#x1f680; C extern 关键字深度解析&#xff1a;跨文件编程的终极指南 &#x1f4c5; 更新时间&#xff1a;2025年6月5日 &#x1f3f7;️ 标签&#xff1a;C | extern关键字 | 多文件编程 | 链接与声明 | 现代C 文章目录 前言&#x1f525;一、extern 是什么&#xff1f;&…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

打手机检测算法AI智能分析网关V4守护公共/工业/医疗等多场景安全应用

一、方案背景​ 在现代生产与生活场景中&#xff0c;如工厂高危作业区、医院手术室、公共场景等&#xff0c;人员违规打手机的行为潜藏着巨大风险。传统依靠人工巡查的监管方式&#xff0c;存在效率低、覆盖面不足、判断主观性强等问题&#xff0c;难以满足对人员打手机行为精…...

python爬虫——气象数据爬取

一、导入库与全局配置 python 运行 import json import datetime import time import requests from sqlalchemy import create_engine import csv import pandas as pd作用&#xff1a; 引入数据解析、网络请求、时间处理、数据库操作等所需库。requests&#xff1a;发送 …...

DeepSeek源码深度解析 × 华为仓颉语言编程精粹——从MoE架构到全场景开发生态

前言 在人工智能技术飞速发展的今天&#xff0c;深度学习与大模型技术已成为推动行业变革的核心驱动力&#xff0c;而高效、灵活的开发工具与编程语言则为技术创新提供了重要支撑。本书以两大前沿技术领域为核心&#xff0c;系统性地呈现了两部深度技术著作的精华&#xff1a;…...

用鸿蒙HarmonyOS5实现中国象棋小游戏的过程

下面是一个基于鸿蒙OS (HarmonyOS) 的中国象棋小游戏的实现代码。这个实现使用Java语言和鸿蒙的Ability框架。 1. 项目结构 /src/main/java/com/example/chinesechess/├── MainAbilitySlice.java // 主界面逻辑├── ChessView.java // 游戏视图和逻辑├──…...