当前位置: 首页 > 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;把其中的陆地及…...

(二)TensorRT-LLM | 模型导出(v0.20.0rc3)

0. 概述 上一节 对安装和使用有个基本介绍。根据这个 issue 的描述&#xff0c;后续 TensorRT-LLM 团队可能更专注于更新和维护 pytorch backend。但 tensorrt backend 作为先前一直开发的工作&#xff0c;其中包含了大量可以学习的地方。本文主要看看它导出模型的部分&#x…...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

学校招生小程序源码介绍

基于ThinkPHPFastAdminUniApp开发的学校招生小程序源码&#xff0c;专为学校招生场景量身打造&#xff0c;功能实用且操作便捷。 从技术架构来看&#xff0c;ThinkPHP提供稳定可靠的后台服务&#xff0c;FastAdmin加速开发流程&#xff0c;UniApp则保障小程序在多端有良好的兼…...

CRMEB 框架中 PHP 上传扩展开发:涵盖本地上传及阿里云 OSS、腾讯云 COS、七牛云

目前已有本地上传、阿里云OSS上传、腾讯云COS上传、七牛云上传扩展 扩展入口文件 文件目录 crmeb\services\upload\Upload.php namespace crmeb\services\upload;use crmeb\basic\BaseManager; use think\facade\Config;/*** Class Upload* package crmeb\services\upload* …...

OpenLayers 分屏对比(地图联动)

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

MySQL用户和授权

开放MySQL白名单 可以通过iptables-save命令确认对应客户端ip是否可以访问MySQL服务&#xff1a; test: # iptables-save | grep 3306 -A mp_srv_whitelist -s 172.16.14.102/32 -p tcp -m tcp --dport 3306 -j ACCEPT -A mp_srv_whitelist -s 172.16.4.16/32 -p tcp -m tcp -…...

代理篇12|深入理解 Vite中的Proxy接口代理配置

在前端开发中,常常会遇到 跨域请求接口 的情况。为了解决这个问题,Vite 和 Webpack 都提供了 proxy 代理功能,用于将本地开发请求转发到后端服务器。 什么是代理(proxy)? 代理是在开发过程中,前端项目通过开发服务器,将指定的请求“转发”到真实的后端服务器,从而绕…...

2023赣州旅游投资集团

单选题 1.“不登高山&#xff0c;不知天之高也&#xff1b;不临深溪&#xff0c;不知地之厚也。”这句话说明_____。 A、人的意识具有创造性 B、人的认识是独立于实践之外的 C、实践在认识过程中具有决定作用 D、人的一切知识都是从直接经验中获得的 参考答案: C 本题解…...

基于IDIG-GAN的小样本电机轴承故障诊断

目录 🔍 核心问题 一、IDIG-GAN模型原理 1. 整体架构 2. 核心创新点 (1) ​梯度归一化(Gradient Normalization)​​ (2) ​判别器梯度间隙正则化(Discriminator Gradient Gap Regularization)​​ (3) ​自注意力机制(Self-Attention)​​ 3. 完整损失函数 二…...

Linux nano命令的基本使用

参考资料 GNU nanoを使いこなすnano基础 目录 一. 简介二. 文件打开2.1 普通方式打开文件2.2 只读方式打开文件 三. 文件查看3.1 打开文件时&#xff0c;显示行号3.2 翻页查看 四. 文件编辑4.1 Ctrl K 复制 和 Ctrl U 粘贴4.2 Alt/Esc U 撤回 五. 文件保存与退出5.1 Ctrl …...