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

Linux 权限管理

一、权限的概念

在 Linux 系统中,权限是控制用户对文件和目录访问的一种机制。它决定了用户可以对文件或目录进行哪些操作,比如读取、写入或执行。

  • 用户(User):文件或目录的所有者,通常是创建该文件或目录的用户。

  • 用户组(Group):用户可以属于一个或多个用户组,组权限决定了组内成员对文件或目录的访问权限。

  • 其他用户(Other):既不是文件所有者,也不属于文件所属用户组的用户。

二、权限的表示

Linux 中的权限通常用字符和数字两种方式表示。

(一)字符表示法

权限分为三种基本类型:

  • 读权限(r):允许用户查看文件内容或列出目录中的文件。

  • 写权限(w):允许用户修改文件内容或对目录进行增删改操作。

  • 执行权限(x):允许用户运行文件(如果是可执行文件)或进入目录。

权限组合表示为:

  • rwx:读、写、执行权限。

  • rw-:读、写权限,无执行权限。

  • r-x:读、执行权限,无写权限。

  • r--:只有读权限。

对于文件和目录,权限分别表示为:

  • 文件权限:通常不需要执行权限(除非是可执行文件)。

  • 目录权限:执行权限允许用户进入目录,写权限允许用户修改目录内容。

(二)数字表示法

权限也可以用数字表示,每种权限对应一个数值:

  • 读权限(r)= 4

  • 写权限(w)= 2

  • 执行权限(x)= 1

将这些数值相加,可以得到不同的权限组合:

  • rwx = 4 + 2 + 1 = 7

  • rw- = 4 + 2 = 6

  • r-x = 4 + 1 = 5

  • r-- = 4

因此,权限可以用三位数字表示:

  • 777:所有用户都有读、写、执行权限。

  • 644:所有者有读写权限,组和其他用户只有读权限。

三、设置权限

Linux 提供了多种命令来设置文件和目录的权限。

(一)chmod 命令

chmod 命令用于修改文件或目录的权限。

  • 字符方式修改权限

    • 添加权限:使用 + 符号。例如:

      chmod u+x file.txt  # 给文件所有者添加执行权限
      chmod g+w directory/  # 给目录所属用户组添加写权限
    • 删除权限:使用 - 符号。例如:

      chmod o-r file.txt  # 删除其他用户对文件的读权限
      chmod u-x script.sh  # 删除文件所有者的执行权限
    • 设置权限:使用 = 符号。例如:

      chmod u=rwx,g=rx,o=r file.txt  # 设置所有者为 rwx,组为 rx,其他用户为 r
  • 数字方式修改权限

    • 使用三位数字直接设置权限。例如:

      chmod 755 file.txt  # 设置所有者为 rwx,组和其他用户为 r-x
      chmod 644 directory/  # 设置所有者为 rw-,组和其他用户为 r--
(二)chown 命令

chown 命令用于更改文件或目录的所有者。

  • 更改所有者

    chown user_name file.txt  # 将文件的所有者更改为 user_name
  • 更改所有者和用户组

    chown user_name:group_name file.txt  # 同时更改所有者和用户组
(三)chgrp 命令

chgrp 命令用于更改文件或目录的用户组。

  • 更改用户组

    chgrp group_name file.txt  # 将文件的用户组更改为 group_name
http://www.xdnf.cn/news/3013.html

相关文章:

  • API文档生成与测试工具推荐
  • 提示词工程实战指南:解锁AI创作的隐藏技巧与实例
  • AI驱动全流程基于PLUS-InVEST模型的生态系统服务多情景智能模拟与土地利用优化、论文写作
  • Python3: 函数式编程特性
  • 基于Spring Boot 电商书城平台系统设计与实现(源码+文档+部署讲解)
  • Day16(贪心算法)——LeetCode45.跳跃游戏II763.划分字母区间
  • 异步IO与Tortoise-ORM的数据库
  • Markdown转WPS office工具pandoc实践笔记
  • 从 Pretrain 到 Fine-tuning:大模型迁移学习的核心原理剖析
  • 《数据结构之美--二叉树oj题练习》
  • 数据结构每日一题day13(链表)★★★★★
  • C语言教程(二十二):C 语言头文件详解
  • kafka消息的顺序性如何保持一致的
  • HTML Picture标签详细教程
  • 使用DDR4控制器实现多通道数据读写(十)
  • SpringBoot中获取系统及硬件信息
  • I2C、SPI、UART 协议详解:优缺点与使用场景
  • Git操作指令
  • Nacos源码—2.Nacos服务注册发现分析三
  • 数据库概论速成期中版
  • RHCE第七章:SElinux
  • 初中九年级学生体测准考证照片采集软件使用说明
  • 机器学习之五:基于解释的学习
  • 【codeforces 2104D,E】欧拉筛,字符串上dp
  • 深度剖析 RocketMQ 5.0 之消息进阶:如何支撑复杂业务消息场景?
  • 飞鸟游戏模拟器 1.0.3 | 完全免费无广告,内置大量经典童年游戏,重温美好回忆
  • React 19 用到的新特性
  • CosyVoice、F5-TTS、GPT-SoVITS、Fish-Speech声音模型项目深度对比:选型指南
  • Linux 下编译BusyBox
  • SVMSPro平台获取Websocket视频流规则