Linux权限相关问题

news2024/9/20 20:36:24

权限

  • 1. 权限概念
    • su
  • 2.权限管理
    • 2.1 权限设置方法
      • 2.1.1 chmod(change mode)
      • chown
      • chgrp
      • umask
  • 3.目录的权限
    • 粘滞位
  • 权限总结

1. 权限概念

Linux下有两种用户:超级用户(ROOT),普通用户。

  • 超级用户:可以Linux下的系统做任何事情,不受限制。
  • 普通用户:只能做有限的事情。

su

从root 转到xtr
语法:su xty
切换用户

2.权限管理

在研究权限管理之前,我们需要首先弄明白权限是相对于人和文件的。

相对于人:

  • 文件和文件目录的所有者: u – User
  • 文件和文件目录的的所有者所在的组的用户:g – Group
  • 其他人: o – other

相对于文件:

  • r:读权限。对于文件来说,具有读取文件内容的权限;对于目录来说:具有浏览该目录的权限。
  • w:写权限。对于文件来说,具有修改文件内容的权限;对于目录来说:具有删除移动目录内文件的权限。
  • x:执行权限。对于文件来说,具有执行文件的权限;对于目录来说:具有进入目录的权限
  • - 表示不具有该权限。
    在这里插入图片描述

在这里插入图片描述
第一个xty是文件的所属用户;第二个xty时文件的所属组。

第一个红框框的“d”代表文件类型,如下:
在这里插入图片描述

2.1 权限设置方法

2.1.1 chmod(change mode)

修改文件的权限。只有root和文件的拥有者才可以改变文件的权限。

格式:chmod [参数] 权限 文件名
常用选项:-R 递归修改目录文件的权限,包括文件里面的文件。

如下图递归的修改x1目录及该目录下的权限:
在这里插入图片描述


权限处的格式:

  • 增加拥有者的权限:chmod u+wx text.txt
  • 减少所属组的权限:chmod g-wx text.txt
  • 为所有组增加权限:chmod a+xwr text.txt
  • 为拥有者和所属组同时增加权限: chmod u+x,g+r text.txt
  • 给所有组赋值x权限:chmod a=x text.txt

在这里插入图片描述


使用三位八进制数来表示:
一共有三个组,每个组分别有三个权限,分别代表八进制数。
相当于赋值的格式

  • 为三个组增加所有权限: chmod 777 text.txt
  • 拥有者和其他用户仅有写权限:chmod 272 text.txt

chown

修改文件的拥有者。仅仅在root下使用。

语法:chown [参数-R] 拥有者名字 文件名

chgrp

修改文件或者目录的所属组。仅仅在root下使用。

语法:chgrp [参数-R] 拥有者名字 文件名

umask

用来查看或者修改文件的掩码。

  • 新建文件夹的默认权限为0666
  • 新建目录的默认权限为0777
    为什么我们新建的文件不是这个权限呢?
    因为新建时的最终权限受到umask的影响。
    最终权限=起始权限 &(~umask):最终的结果为umask的那个选项为1,那个选项就被屏蔽。

语法:umask 查看系统掩码
umask 0777 把掩码修改为0777

3.目录的权限

  • 如果没有x权限,则不能cd到目录中。
  • 如果没有r权限,无法用ls等命令查看目录文件中的内容。
  • 如果没有w权限,无法再目录中创建和删除权限。

如果ljj在xty的目录中,创建了一个x1的文件,xty查看不了,但是能删除掉x1文件,很显然是不科学的!
因此引入粘滞位的概念:

粘滞位

防止上面这种情况

语法: chmod +t 目录名
为该文件名加上粘滞位

该文件只能被以下情况删除:

  • root 能删除
  • 该文件的所有者能删除

**key:**粘滞位只能加在目录上,一般是谁设置的,谁才能取消(root随意)。

如果我们在别人的目录下创建文件,只要该目录有粘滞位,就再也把不用怕别人给删除啦!

权限总结

  • 目录的可执行权限是表示你可否在目录下执行命令。

  • 如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd 进入目,即使目录仍然有-r 读权限(这个地方很容易犯错,认为有读权限就可以进入目录读取目录下的文件)

  • 而如果目录具有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读权限

  • 所以在目录下,即使可以执行ls命令,但仍然没有权限读出目录下的文档.

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/888507.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

软件测试学术顶会——ISSTA 2023 论文(网络安全方向)清单、摘要与总结

总结 本次会议涵盖的安全研究主题广泛,包括源代码分析、二进制代码分析、恶意软件检测、漏洞检测、模糊测试、程序验证等。一些热门的研究方向包括:基于机器学习的漏洞检测、大型语言模型在软件安全中的应用、区块链智能合约安全分析。这些方向都在最近几年持续发展。一些较冷门…

c++ std::shared_ptr(内存布局)

https://cplusplus.com/reference/memory/shared_ptr/

基于Redis实现点赞及排行榜功能

微信公众号访问地址:基于Redis实现点赞及排行榜功能 推荐文章: 1、SpringBoot整合多数据源,并支持动态新增与切换(详细教程) 2、​​​​​​Redis中使用lua脚本 3、SpringBoot统一标准响应格式及异常处理 4、Spr…

牛客小白月赛75D题题解

文章目录 [ 矩阵](https://ac.nowcoder.com/acm/contest/60063/D)问题建模问题分析1.分析所求代码 矩阵 问题建模 给定一个n*m的字符矩阵,字符矩阵内包含两种字符’0’和’1’,从(1,1)出发,每次可以花费一单位时间向上下左右移动…

Gradle(一)Windows下安装

目录 一、简介二、下载和安装1.下载2.配置环境变量3.指定个人用户目录4.验证 三、IDEA 设置 Gradle 官网地址:https://gradle.org/官方文档: https://docs.gradle.org/current/userguide/userguide.html下载地址: https://gradle.org/release…

16.5.3 【Linux】SELinux 三种模式的启动、关闭与观察

并非所有的 Linux distributions 都支持 SELinux 的,所以你必须要先观察一下你的系统版本为何。 目前 SELinux 依据启动与否,共有三种模式,分别如下: enforcing:强制模式,代表 SELinux 运行中,…

Codeforces算法心得——A. Array Coloring

大家好,我是晴天学长,确实全世界最大的算法竞赛平台有很多独特且创新的地方,后面我会持续的更新的!加油!💪💪💪 1 )A. Array Coloring 2) .算法思路 数组中的奇数个数一…

机器学习深度学习——自注意力和位置编码(数学推导+代码实现)

👨‍🎓作者简介:一位即将上大四,正专攻机器学习的保研er 🌌上期文章:机器学习&&深度学习——注意力分数(详细数学推导代码实现) 📚订阅专栏:机器学习…

导读-Linux简介

Linux简介 ​ 总所周知,计算机系统包含硬件和软件两部分。硬件部分被称为裸机,主要包括中央处理器(CPU)、内存、外存和各种外部设备。软件部分主要包括系统软件和应用软件两部分。系统软件包括操作系统、汇编语言、编译程序、数据…

Leetcode Top 100 Liked Questions(序号53~74)

53. Maximum Subarray 题意:一个数组,找到和最大的子串 我的思路 我记得好像On的动态规划来做的?但是想不起来了,先死做,用的前缀和——TLE超时 那就只能想想dp怎么做了 假设dp[i]表示的是以 i 为右端点的最大的…

在医疗行业数字孪生能做些什么?

数字孪生技术随着发展正在多行业遍地开花,在之前的文章中也为大家介绍过数字孪生的行业应用,今天带大家一起探讨一下数字孪生在医疗行业的表现。其实数字孪生在医疗行业已有很多应用案例,从医疗诊断到手术模拟,再到药物研发&#…

android内存分析工具记录,请利用好最后2个神器

相机见证了java内存暴增和native持续增长的问题,因此这里记录一下使用的工具情况,方便后续继续使用 一、java 内存 如果是java层的内存可以直接借助leakCanary工具,配置也很简单,直接在build.gradle中添加依赖即可: …

Java语言怎么输出有颜色的字符串呢?

在Java中,我们应该如何输出有颜色的文字字符串呢? 目录 一、使用方法 二、举例说明 三、常见的颜色及其对应的ANSI转义序列 一、使用方法 在Java中,可以使用ANSI转义序列来改变输出文本的颜色。 二、举例说明 (1&#xff…

【mysql报错解决】MySql.Data.MySqlClient.MySqlException (0x80004005)或1366

场景:c#使用mysql数据库执行数据库迁移,使用了新增inserter的语句,然后报错 报错如下: 1.MySql.Data.MySqlClient.MySqlException (0x80004005): Incorrect string value: ‘\xE6\x9B\xB4\xE6\x94\xB9…’ for column ‘Migratio…

LVS 负载均衡集群

集群 集群(Cluster)是一组相互连接的计算机或服务器,它们通过网络一起工作以完成共同的任务或提供服务。集群的目标是通过将多台计算机协同工作,提高计算能力、可用性、性能和可伸缩性,适用于大量高并发的场景。 集群…

安科瑞变电所运维平台在电力系统中应用分析

摘要:现代居民生活、工作对电力资源的需求量相对较多,给我国的电力产业带来了良好的发展机遇与挑战。探索电力系统基本构成, 将变电运维安全管理以及相应的设备维护工作系统性开展,能够根据项目实践工作要求,将满足要求…

【讨论】视频监控集中存储方案如何做?

视频监控集中存储是指将多个视频监控摄像头所捕捉到的视频信号集中存储于一个中央设备,这个中央设备可以是服务器、网络存储设备或其他专用设备。通过集中存储,可以避免因为存储设备分散而导致的管理不便和难以有效地管理和检索视频数据,同时…

iTOP-RK3568开发板ubuntu环境下安装Eclipse

eclipse 是使用 Java 语言开发的,一个 Java 应用程序,这意味着 eclipse 只能运行在 Java虚拟机上。倘若没有安装 JDK(Java Development Kit),即使在 ubuntu 上安装了 eclipse,也不能运行,所以要…

软文发布问题解答:高效宣传与推广指南

以下是一秒推小编针对软文发布的20个常见问题及回答: 1. 什么是软文? 答:软文是指用文学手法、写作技巧撰写的宣传文章,以实现对特定受众的陈述、说明和推销。 2. 发布软文的目的是什么? 答:发布软文的目…

奥威BI数据可视化工具:360度呈现数据,告别枯燥表格

随着企业数据量的不断增加,如何有效地进行数据分析与决策变得越来越重要。奥威BI数据可视化工具作为一款强大的数据分析工具,在帮助企业深入挖掘数据价值方面具有显著优势。 奥威BI数据可视化工具是一款基于数据仓库技术的数据分析工具,具有…