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

linux命令详解,文件系统权限相关

文件系统权限相关

linux系统中一切都是文件
查看权限

Is -la /etc/passwd

更改文件所有者

chown root file

修改文件权限

sudo chmod u=rwx,g+rw,o-r file
sudo chmod u+x,gtw,o-r file
chmod 400 <file>

一、Linux系统中一切都是文件

在linux系统中,几乎所有的资源都被抽象为文件,包括硬件设备(如硬盘、网卡等)、进程间通信、网络连接等。这种设计理念使得对各种资源的管理可以通过统一的文件操作方式来进行,大大简化了系统的架构和管理。

二、查看权限

ls -la 文件或目录
ls -la /etc/passwd
  • ls: 列出文件或目录的信息。
  • -l: 使用长格式列出信息,即为每个文件(或目录)提供详细的权限、链接数、所有者、组、大小和修改日期等信息。
  • -a: 显示所有文件,包括以点(.)开头的隐藏文件。
    image.png

这个输出表示:

  • -rw-r--r--: 这部分表示文件的权限设置。具体来说:

    • 第一个字符 - 表示这是一个普通文件(如果这里是 d,则表示是一个目录)。
    • 接下来的9个字符分为三组,每组3个字符,分别表示文件所有者、文件所属组和其他用户对文件的访问权限。
      • rw- 表示文件所有者(root)具有读取和写入权限。
      • r-- 表示文件所属组(root)具有只读权限。
      • r-- 表示其他用户也具有只读权限。
  • 1: 这表示文件的硬链接数。硬链接是指向同一文件的不同文件名。这里的1表示没有其他文件名指向这个文件。

  • root: 这是文件的所有者,即拥有该文件的用户。在这个例子中,文件的所有者是 root

  • root: 这是文件所属的组。在这个例子中,文件所属的组也是 root

  • 3171: 这是文件的大小,以字节为单位。这里表示 /etc/passwd 文件的大小为 3171 字节。

  • 2024年 4月15日: 这是文件的最后修改日期。这里表示文件最后一次被修改是在2024年的4月15日。

  • /etc/passwd: 这是文件的完整路径。/etc/passwd 是一个重要的系统文件,用于存储用户账户的基本信息。
    image.png

  • drwxr-xr-x: 这部分表示目录的权限设置。具体来说:

    • 第一个字符 d 表示这是一个目录(如果这里是 -,则表示是一个普通文件)。
    • 接下来的9个字符分为三组,每组3个字符,分别表示文件所有者、文件所属组和其他用户对目录的访问权限。
      • rwx 表示文件所有者(kali)具有读取、写入和执行权限。
      • r-x 表示文件所属组(kali)具有读取和执行权限。
      • r-x 表示其他用户也具有读取和执行权限。
  • 2: 这表示目录的硬链接数。硬链接是指向同一文件的不同文件名。对于目录,这个数字通常表示该目录下的子目录数量加上2(因为每个目录都包含两个特殊条目:...)。这里的2表示该目录下只有一个子目录或文件。

  • kali: 这是目录的所有者,即拥有该目录的用户。在这个例子中,目录的所有者是 kali

  • kali: 这是目录所属的组。在这个例子中,目录所属的组也是 kali

  • 4096: 这是目录的大小,以字节为单位。这里表示该目录占用的磁盘空间为 4096 字节。实际上,目录的大小通常是一个固定值,因为它主要用于存储目录项的元数据。

  • 11月 6日 23:22: 这是目录的最后修改日期和时间。这里表示目录最后一次被修改是在11月6日的23:22。

  • .: 这表示当前目录。在 ls -la 命令的输出中,. 代表当前目录,而 .. 代表父目录。

三、更改文件所有者,chown

用于更改文件或目录的所有者和所属组

chown [选项] 新所有者[:新组] 文件...

选项

  • -c--changes:显示更改的文件名。
  • -f--silent--quiet:忽略错误信息。
  • -v--verbose:显示处理的文件名。
  • -R--recursive:递归地处理目录及其子目录中的文件。
  • --dereference:影响符号链接指向的目标文件,而不是符号链接本身。
  • --no-dereference:仅更改符号链接的属性,而不是其目标文件的属性。
  • --from=当前所有者:当前组:仅当文件的所有者和组匹配指定的当前所有者和组时才进行更改。
    更改用户
chown username filename
chown root aaa
  • chown是改变文件所有者的命令。
  • root是新的所有者用户名,☒里表示将文件的所有者改为“root”用户。
  • fiIe是要更改所有者的文件名称。执行这个命令后,文件的所有者将变为“root”用户。
    image.png
    更改文件所属组
chown :新组 文件
chown :root bbb

image.png
同时更改文件所有者和所属组

chown 新所有者:新组 文件
chown root:root ccc

image.png

递归更改

chown -R root:root ../bbb

image.png

四、修改文件权限,chmod

chmod 命令在 Linux 和类 Unix 操作系统中用于更改文件或目录的权限。权限可以分为三类:用户(所有者)、组和其他用户(其他人)。每类权限又可以细分为读(r)、写(w)和执行(x)权限。

符合模式

符号模式使用字母和符号来表示权限的变化。基本格式如下:

[who][operator][permissions]
  • who:指定哪些用户类别的权限要改变。可以是以下一个或多个字母的组合:
    • u:用户(所有者)
    • g:组
    • o:其他用户(其他人)
    • a:所有用户(等同于 ugo
  • operator:指定如何改变权限。可以是以下一个符号:
    • +:添加权限
    • -:移除权限
    • =:设置权限
  • permissions:指定具体的权限。可以是以下一个或多个字母的组合:
    • r:读权限
    • w:写权限
    • x:执行权限
符号模式实例
sudo chmod u=rwx,g+rw,o-r file
  • sudo:以超级用户(root)权限执行命令。这通常用于需要更高权限的操作。
  • chmod:更改文件或目录的权限。
  • u=rwx,g+rw,o-r:这是权限设置的具体部分,分为三个部分:
    • u=rwx:设置用户(所有者)的权限为读(r)、写(w)和执行(x)。
    • g+rw:给组增加读(r)和写(w)权限。
    • o-r:从其他用户(其他人)那里移除读(r)权限。
  • file:要更改权限的文件名。
    image.png
sudo chmod u+x,g+w,o-r file
  • u+x,g+w,o-r:这是权限设置的具体部分,分为三个部分:
    • u+x:给用户(所有者)增加执行权限。
    • g+w:给组增加写权限。
    • o-r:从其他用户(其他人)那里移除读权限。
      image.png
八进制模式

八进制模式使用数字来表示权限。每个权限类别(用户、组、其他用户)可以用一个八进制数字表示,范围从 0 到 7。每个数字的含义如下:

  • 4:读权限(r
  • 2:写权限(w
  • 1:执行权限(x
    权限的组合可以通过将相应的数字相加得到:
  • 0:无权限
  • 1:执行权限(x
  • 2:写权限(w
  • 3:写和执行权限(wx
  • 4:读权限(r
  • 5:读和执行权限(rx
  • 6:读和写权限(rw
  • 7:读、写和执行权限(rwx
八进制模式实例
chmod 400 file
  • chmod:更改文件或目录的权限。
  • 400:权限模式,使用八进制数字表示。
  • file:要更改权限的文件名。
  • 用户(所有者):r(读权限)
  • 组:-(无权限)
  • 其他用户(其他人):-(无权限)
    image.png
chmod 777 file

权限变为对所有用户都完全开放

  • 用户(所有者):rwx(读、写、执行)
  • 组:rwx(读、写、执行)
  • 其他用户(其他人):rwx(读、写、执行)
    image.png

相关文章:

linux命令详解,文件系统权限相关

文件系统权限相关 linux系统中一切都是文件 查看权限 Is -la /etc/passwd更改文件所有者 chown root file修改文件权限 sudo chmod urwx,grw,o-r file sudo chmod ux,gtw,o-r file chmod 400 <file>一、Linux系统中一切都是文件 在linux系统中&#xff0c;几乎所有的…...

2024-11-5 学习人工智能的Day22 openCV(4)

face_recognition 介绍 face_recognition 是一个非常流行的 Python 库&#xff0c;专门用于人脸识别任务。它基于 dlib 库和 HOG&#xff08;Histogram of Oriented Gradients&#xff09;特征以及深度学习模型&#xff0c;提供了简单易用的接口来进行人脸检测、面部特征点定位…...

JavaScript 网页设计详解教程

JavaScript 网页设计详解教程 引言 JavaScript 是一种广泛使用的编程语言&#xff0c;主要用于网页开发。它使得网页具有动态交互性&#xff0c;能够响应用户的操作。随着前端开发的不断发展&#xff0c;JavaScript 已成为现代网页设计中不可或缺的一部分。本文将详细介绍 Ja…...

技术复杂性导致估算不准确?5大对策

技术复杂性引发的估算不准确可能导致成本超出预算&#xff0c;不当的资源分配则可能造成人力浪费或关键任务缺乏必要支持&#xff0c;进而影响客户满意度和市场竞争力&#xff0c;增加项目失败的风险。而有效避免因技术复杂性导致的估算不准确问题&#xff0c;可以显著提升项目…...

【JavaEE初阶 — 多线程】死锁的产生原因和解决方法

目录 死锁 1.构成死锁的场景 (1) 一个线程一把锁 问题描述 解决方案(可重入锁) (2) 两个线程两把锁 问题描述 (3)N个线程 M把锁 哲学家就餐问题 2.死锁的四个必要条件 3.如何解决死锁问题 (1)避免出现请求和保持 (2)打破多个线程的循环等待关系 死锁…...

mapper.xml 使用大于号、小于号示例

<mapper namespace"com.example.EmployeeMapper"><!-- 更新employee_absent_resign_statistics表中的pre_work_date --><update id"updatePreWorkDate"><![CDATA[UPDATE employee e1JOIN employee e2ON e2.statistics_date < e1.s…...

深入了解决策树:机器学习中的经典算法

✅作者简介&#xff1a;2022年博客新星 第八。热爱国学的Java后端开发者&#xff0c;修心和技术同步精进。 &#x1f34e;个人主页&#xff1a;Java Fans的博客 &#x1f34a;个人信条&#xff1a;不迁怒&#xff0c;不贰过。小知识&#xff0c;大智慧。 &#x1f49e;当前专栏…...

Flutter鸿蒙next 的 Sliver 实现自定义滚动效果

Flutter 提供了一些非常强大的滚动组件&#xff0c;如 ListView、GridView 等&#xff0c;它们可以在滑动时自动处理内容的显示和滚动。但当我们需要更复杂的滚动效果时&#xff0c;Sliver 组件便是一个强大的工具。通过自定义 Sliver&#xff0c;我们可以实现高度定制化的滚动…...

杨中科 .Net Core 笔记 DI 依赖注入

提到依赖不得不提到&#xff0c;控制反转&#xff08;Inversion of Control,IOC&#xff09;这个概念&#xff0c;简单的来讲就是将控制对象的权限交给框架&#xff0c;不再手动完成。IOC实现方式有2种&#xff1a; 1、服务定位器&#xff08;ServiceLocator&#xff09;,主动…...

【RocketMQ】无法访问此网站 http://XXX:10080/ ERR_UNSAFE_PORT

安装完rocketmq-dashboard。打开浏览器访问地址。 问题提示&#xff1a; 无法访问此网站 网址为 http://192.168.22.197:10080/ 的网页可能暂时无法连接&#xff0c;或者它已永久性地移动到了新网址。 ERR_UNSAFE_PORT ‌无法访问10080端口的网站通常是由于Chrome浏览器的安…...

pipreqs:快速准确生成当前项目的requirements.txt,还有和freeze的对比

大家好&#xff0c;这里是程序员晚枫。 今天给大家推荐一个快速生成requirements.txt的小工具&#xff1a;pipreqs。 什么是requirements.txt&#xff1f; 我们在开发Python项目的时候&#xff0c;需要用到requirements.txt来管理项目中使用的第三方库。 当我们把项目部署到…...

Spark 中的 RDD 分区的设定规则与高阶函数、Lambda 表达式详解

Spark 的介绍与搭建&#xff1a;从理论到实践_spark环境搭建-CSDN博客 Spark 的Standalone集群环境安装与测试-CSDN博客 PySpark 本地开发环境搭建与实践-CSDN博客 Spark 程序开发与提交&#xff1a;本地与集群模式全解析-CSDN博客 Spark on YARN&#xff1a;Spark集群模式…...

redis十大数据类型

文章目录 一、redis字符串&#xff08;String&#xff09;set key value同时获取或设置多个键值获取指定区间范围内的值数字增减获取字符串长度和内容追加分布式锁getset&#xff08;先get再set&#xff09; 二、redis列表&#xff08;List&#xff09;通过索引获取列表中的元素…...

国内AI工具复现GPTs效果详解

国内AI工具复现GPTs效果详解 引言 近年来&#xff0c;随着人工智能技术的飞速发展&#xff0c;大型语言模型&#xff08;LLM&#xff09;逐渐成为研究和应用的热点。GPTs&#xff08;Generative Pre-trained Transformer&#xff09;系列模型&#xff0c;特别是GPT-4的推出&a…...

【学习笔记】SAP ABAP——OPEN SQL(一)【INTO语句】

【INTO语句】 结构体插入(插入一条语句时) SELECT...INTO [CORRESPONDING FIELDS OF] <wa> FROM <db> WHERE <condition>.内表插入(插入多条语句时) SELECT...INTO|APPENDING [CORRESPONDING FIELDS OF] TABLE <itab>FROM <db> WHERE <con…...

vscode使用之vscode-server离线安装

最近因为想要使用AI工具开始使用vscode&#xff0c;但是在内网使用vscode通过SSH连接虚拟机的centos远程目录却出现了问题&#xff0c;始终连不上&#xff0c;查看原因是centos没有安装vscode-server&#xff0c;网上找各个教程离线安装vscode-code除了浪费时间没有任何收获&am…...

字符编码和字符集

1. 字符编码和字符集 1.1. 字符编码 编码&#xff1a;字符 –>字节解码&#xff1a;字节 –>字符字符编码Character Encoding : 就是一套自然语言的字符与二进制数之间的对应规则。 1.2. 字符集 字符集 Charset&#xff1a;是一个系统支持的所有字符的集合&#xff0…...

【WRF理论第七期】WPS预处理

【WRF理论第七期】WPS预处理 运行WPS&#xff08;Running the WPS&#xff09;步骤1&#xff1a;Define model domains with geogrid步骤2&#xff1a;Extracting meteorological fields from GRIB files with ungrib步骤3&#xff1a;Horizontally interpolating meteorologic…...

Flutter鸿蒙next中的按钮封装:自定义样式与交互

在Flutter应用开发中&#xff0c;按钮是用户界面中不可或缺的组件之一。它不仅用于触发事件&#xff0c;还可以作为视觉元素增强用户体验。Flutter提供了多种按钮组件&#xff0c;如ElevatedButton、TextButton、OutlinedButton等&#xff0c;但有时这些预制的按钮样式无法满足…...

代码随想录算法训练营Day57 | 卡玛网 101.孤岛的总面积、卡玛网 102.沉没孤岛、卡玛网 103. 水流问题、卡玛网 104.建造最大岛屿

目录 卡玛网 101.孤岛的总面积 卡玛网 102.沉没孤岛 卡玛网 103. 水流问题 卡玛网 104.建造最大岛屿 卡玛网 101.孤岛的总面积 题目 101. 孤岛的总面积 思路 代码随想录&#xff1a;101.孤岛的总面积 重点&#xff1a; 首先遍历图的四条边&#xff0c;把其中的陆地及…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)

说明&#xff1a; 想象一下&#xff0c;你正在用eNSP搭建一个虚拟的网络世界&#xff0c;里面有虚拟的路由器、交换机、电脑&#xff08;PC&#xff09;等等。这些设备都在你的电脑里面“运行”&#xff0c;它们之间可以互相通信&#xff0c;就像一个封闭的小王国。 但是&#…...

脑机新手指南(八):OpenBCI_GUI:从环境搭建到数据可视化(下)

一、数据处理与分析实战 &#xff08;一&#xff09;实时滤波与参数调整 基础滤波操作 60Hz 工频滤波&#xff1a;勾选界面右侧 “60Hz” 复选框&#xff0c;可有效抑制电网干扰&#xff08;适用于北美地区&#xff0c;欧洲用户可调整为 50Hz&#xff09;。 平滑处理&…...

VB.net复制Ntag213卡写入UID

本示例使用的发卡器&#xff1a;https://item.taobao.com/item.htm?ftt&id615391857885 一、读取旧Ntag卡的UID和数据 Private Sub Button15_Click(sender As Object, e As EventArgs) Handles Button15.Click轻松读卡技术支持:网站:Dim i, j As IntegerDim cardidhex, …...

【WiFi帧结构】

文章目录 帧结构MAC头部管理帧 帧结构 Wi-Fi的帧分为三部分组成&#xff1a;MAC头部frame bodyFCS&#xff0c;其中MAC是固定格式的&#xff0c;frame body是可变长度。 MAC头部有frame control&#xff0c;duration&#xff0c;address1&#xff0c;address2&#xff0c;addre…...

渗透实战PortSwigger靶场-XSS Lab 14:大多数标签和属性被阻止

<script>标签被拦截 我们需要把全部可用的 tag 和 event 进行暴力破解 XSS cheat sheet&#xff1a; https://portswigger.net/web-security/cross-site-scripting/cheat-sheet 通过爆破发现body可以用 再把全部 events 放进去爆破 这些 event 全部可用 <body onres…...

渲染学进阶内容——模型

最近在写模组的时候发现渲染器里面离不开模型的定义,在渲染的第二篇文章中简单的讲解了一下关于模型部分的内容,其实不管是方块还是方块实体,都离不开模型的内容 🧱 一、CubeListBuilder 功能解析 CubeListBuilder 是 Minecraft Java 版模型系统的核心构建器,用于动态创…...

oracle与MySQL数据库之间数据同步的技术要点

Oracle与MySQL数据库之间的数据同步是一个涉及多个技术要点的复杂任务。由于Oracle和MySQL的架构差异&#xff0c;它们的数据同步要求既要保持数据的准确性和一致性&#xff0c;又要处理好性能问题。以下是一些主要的技术要点&#xff1a; 数据结构差异 数据类型差异&#xff…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

&#x1f50d; 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术&#xff0c;可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势&#xff0c;还能有效评价重大生态工程…...

搭建DNS域名解析服务器(正向解析资源文件)

正向解析资源文件 1&#xff09;准备工作 服务端及客户端都关闭安全软件 [rootlocalhost ~]# systemctl stop firewalld [rootlocalhost ~]# setenforce 0 2&#xff09;服务端安装软件&#xff1a;bind 1.配置yum源 [rootlocalhost ~]# cat /etc/yum.repos.d/base.repo [Base…...

GO协程(Goroutine)问题总结

在使用Go语言来编写代码时&#xff0c;遇到的一些问题总结一下 [参考文档]&#xff1a;https://www.topgoer.com/%E5%B9%B6%E5%8F%91%E7%BC%96%E7%A8%8B/goroutine.html 1. main()函数默认的Goroutine 场景再现&#xff1a; 今天在看到这个教程的时候&#xff0c;在自己的电…...