Linux权限理解

本文主要介绍linux系统中的权限管理和用户切换机制。权限是限制用户操作的关键,理解和正确使用权限有助于维护系统安全。

Linux权限理解

前言

本节主要讲解Linux的权限管理。权限是控制用户行为的机制,例如,你可以在力扣上刷题,但不能听音乐,这是由平台的权限设置决定的。如果你是VIP用户,你可以在QQ音乐上听任何音乐,而普通用户只能听非VIP的音乐。

概述

Linux系统中有两种类型的用户:

超级用户(root):可以在Linux系统中执行任何操作,不受限制。普通用户:在Linux系统中只能执行有限的操作。

超级用户的命令提示符是“#”,普通用户的命令提示符是“$”。

用户切换

用户之间可以通过以下命令进行切换:

命令:su [用户名]功能:切换到指定用户。

root用户切换到普通用户user,使用su user。从普通用户user切换到root用户,使用susu root,此时需要输入root用户的密码。

示例:超级用户切换到普通用户

root用户切换到普通用户gwj

[root@iZf8zhv7mi2thjdxsptkb8Z ~]# su gwj[gwj@iZf8zhv7mi2thjdxsptkb8Z root]$ whoamigwj[gwj@iZf8zhv7mi2thjdxsptkb8Z root]$

Linux权限理解

示例:普通用户切换到超级用户

从普通用户gwj切换到root用户,直接使用su,并输入root用户的密码:

[gwj@iZf8zhv7mi2thjdxsptkb8Z root]$ suPassword: [root@iZf8zhv7mi2thjdxsptkb8Z ~]# whoamiroot[root@iZf8zhv7mi2thjdxsptkb8Z ~]#

Linux权限理解

另一种切换方式

除了su命令,还可以使用su -命令。两者的区别在于,前者仅切换用户身份,不改变当前路径,而后者会切换到root用户的家目录。

使用sudo提升权限

普通用户可以通过sudo + 命令来临时提升权限,输入的是普通用户的密码:

[gwj@iZf8zhv7mi2thjdxsptkb8Z root]$ whoamigwj[gwj@iZf8zhv7mi2thjdxsptkb8Z root]$ sudo whoami[sudo] password for gwj: gwj is not in the sudoers file.  This incident will be reported.[gwj@iZf8zhv7mi2thjdxsptkb8Z root]$

Linux权限理解

初次使用sudo时会有如下提示:

Linux权限理解

Linux权限的理解

权限是角色与事物属性的结合。例如,某人有QQ音乐的会员身份,可以听会员专享的音乐,这是因为他有会员身份,而不是因为他叫什么名字。

因此,权限 = 角色 + 事物的属性。

Linux权限管理

文件访问者分为:

文件和目录的所有者(u – User)文件和目录的所有者所在组的用户(g – Group)其他用户(o – Others)

文件属性可以通过ls -l命令查看,属性从第二个字母开始,三个为一组。

Linux权限理解

权限字符表示:

r:可读w:可写x:可执行-:不具备该权限

Linux权限理解

权限值:

读(r/4):对文件可读取内容,对目录可浏览信息。写(w/2):对文件可修改内容,对目录可删除或移动文件。执行(x/1):对文件可执行,对目录可进入。

文件权限值表示方法:

字符表示法:

Linux权限理解

8进制数值表示法:

Linux权限理解

文件类型:

d:文件夹-:普通文件l:软链接b:块设备文件p:管道文件c:字符设备文件s:套接口文件

在Linux中讨论权限时,首先要确定当前用户是谁,然后查看文件的拥有者和所属组,判断当前用户的身份,最后查看该身份下的权限。权限与身份和文件属性相关。

权限修改

使用chmod命令可以设置文件的访问权限:

格式:chmod [参数] 权限 文件名常用选项:R递归修改目录文件的权限

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

示例:对text.txt文件进行权限修改

初始权限:

网龙b2b仿阿里巴巴电子商务平台 网龙b2b仿阿里巴巴电子商务平台

本系统经过多次升级改造,系统内核经过多次优化组合,已经具备相对比较方便快捷的个性化定制的特性,用户部署完毕以后,按照自己的运营要求,可实现快速定制会费管理,支持在线缴费和退费功能财富中心,管理会员的诚信度数据单客户多用户登录管理全部信息支持审批和排名不同的会员级别有不同的信息发布权限企业站单独生成,企业自主决定更新企业站信息留言、询价、报价统一管理,分系统查看分类信息参数化管理,支持多样分类信息,

网龙b2b仿阿里巴巴电子商务平台 0 查看详情 网龙b2b仿阿里巴巴电子商务平台

-rw-rw-r-- 1 gwj gwj    0 Dec 10 15:02 text.txt

Linux权限理解

给拥有者添加执行权限:

chmod u+x text.txt

Linux权限理解

从所属组删除写权限:

chmod g-w text.txt

Linux权限理解

从拥有者删除执行权限,给所属组添加写权限,给其他人添加写和执行权限:

chmod u-x,g+w,o+w,o+x text.txt

Linux权限理解

给所有用户添加读、写、执行权限:

chmod a+rwx text.txt

Linux权限理解

使用8进制数值修改权限:

chmod 777 text.txt

Linux权限理解

Linux权限理解

chown命令

用于修改文件的拥有者:

格式:chown [参数] 用户名 文件名

示例:

chown nanqiao text.txt

Linux权限理解

同时修改文件的拥有者和所属组:

chown gwj:nanqiao text.txt

Linux权限理解

chgrp命令

用于修改文件或目录的所属组:

格式:chgrp [参数] 用户组名 文件名常用选项:-R – 递归修改文件或目录的所属组

示例:

chgrp gwj text.txt

Linux权限理解

umask命令

用于查看或修改文件掩码:

新建文件的默认权限为0666新建目录的默认权限为0777

实际创建的文件和目录权限会受到umask的影响:

实际权限 = 起始权限 & (~umask)

格式:

umask 权限值

超级用户默认掩码值为0022,普通用户默认为0002

普通用户创建的文件默认权限为664,目录为775

Linux权限理解

通过umask查看掩码:

Linux权限理解

掩码会影响初始权限,凡是在权限掩码中出现的权限,不会出现在最终文件权限中:

666 -> 110 110 110002 -> 000 000 010~umask:     111 111 101666 -> 110 110 110111 111 101按位与&110 110 100 -> 664

file命令

用于辨识文件类型:

语法:file [选项] 文件或目录...常用选项:-c:详细显示指令执行过程-z:尝试解读压缩文件的内容

使用sudo分配权限

修改/etc/sudoers文件分配权限:

chmod 740 /etc/sudoersvi /etc/sudoers

格式:接受权限的用户登陆的主机 =(执行命令的用户) 命令

使用sudo调用授权的命令:

sudo –u 用户名 命令

目录权限

可执行权限:没有可执行权限无法进入目录。可读权限:没有可读权限无法查看目录中的文件内容。可写权限:没有可写权限无法在目录中创建或删除文件。

注意:只要用户具有目录的写权限,就可以删除目录中的文件,无论是否有该文件的写权限。因此引入了粘滞位的概念。

粘滞位

当一个目录被设置为“粘滞位”(用chmod +t),则该目录下的文件只能由:

超级管理员删除该目录的所有者删除该文件的所有者删除

以上就是Linux权限理解的详细内容,更多请关注创想鸟其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 chuangxiangniao@163.com 举报,一经查实,本站将立刻删除。
发布者:程序猿,转转请注明出处:https://www.chuangxiangniao.com/p/811624.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
掌握 JavaScript 数组指南
上一篇 2025年11月26日 22:54:42
多商户O2O商城系统开发多少钱?不用编程,开发本地门户论坛O2O商城
下一篇 2025年11月26日 22:54:49

相关推荐

  • 关于java打包成jar在linux上运行的一些问题「建议收藏」

    大家好,又见面了,我是你们的朋友全栈君。 关于将Java项目导出为可运行的jar文件,请参考下图: 如果在Linux上运行时,前两个选项导出的jar包报错,提示找不到依赖包,那么建议使用第三个选项。这个选项会生成一个jar包和一个文件夹,文件夹内包含jar包的所有依赖。将这两个文件一起上传到Linu…

    2026年9月23日
    000
  • VSCode如何配置生物信息开发环境 VSCode基因组数据分析工作流

    vscode在生物信息学中的核心配置是通过安装python、r、remote-ssh/containers/wsl等扩展,结合conda管理环境,实现多语言支持与远程开发;2. 处理大规模基因组数据时应避免直接打开大文件,而是通过集成终端调用命令行工具(如samtools、bcftools)在远程服…

    2026年9月23日
    000
  • go 语言版本控制器

    管理不同版本的go语言环境是一项繁琐的任务,尤其是当需要为每个go特性单独安装go环境时。为了简化这一过程,我们需要一个版本管理工具来统一管理go环境。以下是关于go版本控制器g的详细介绍。 一、Go版本控制器g简介 g是一个适用于Linux、macOS和Windows的命令行工具,旨在提供一个方便…

    2026年9月23日
    000
  • Windows 下安装和配置 WSL(Windows 10 子系统)

    前言与介绍 作为开发者,经常需要使用 Linux 环境,甚至信息学奥林匹克竞赛(NOI)也采用 Linux 作为编译环境。然而,Linux 系统上缺乏一些必备工具,如 Photoshop 和 Internet Download Manager。因此,Windows 系统同样不可或缺,频繁在两个系统间…

    2026年9月23日
    200
  • mysql怎么添加降序索引 mysql创建排序索引的语法详解

    mysql怎么添加降序索引 mysql创建排序索引的语法详解mysql怎么添加降序索引 mysql创建排序索引的语法详解mysql怎么添加降序索引 mysql创建排序索引的语法详解mysql怎么添加降序索引 mysql创建排序索引的语法详解

    mysql从8.0版本开始支持降序索引,通过在列名后添加desc关键字创建,例如create index idx_order_date_desc on orders (order_date desc);。1. 降序索引优化了order by column desc查询的性能,避免文件排序;2. 升序…

    2026年9月23日 用户投稿
    100
  • CentOS服务器安装宝塔(图文详解)

    CentOS服务器安装宝塔(图文详解)CentOS服务器安装宝塔(图文详解)CentOS服务器安装宝塔(图文详解)CentOS服务器安装宝塔(图文详解)

    一、概述 宝塔是一款安全且高效的服务器管理面板。 快速创建和管理web项目 提供方便的网站管理功能,例如域名绑定,一键部署SSL证书,调整网站配置等。 >>查看 快速查看服务器资源使用情况 监测CPU、内存、磁盘IO、网络IO数据,并可设置记录保存天数,随时查看特定日期的数据。 >…

    2026年9月23日 用户投稿
    100
  • QQ音乐会员退订后还能听吗_QQ音乐会员退订后听歌的说明

    退订QQ音乐会员后将无法享受高音质、无广告等权益,系统自动切换至免费模式。此时仅可播放标有“免费”或无版权标识的歌曲,VIP歌曲需开通会员才能畅听。已下载的加密格式会员歌曲(如.QMC、.TMF)在会员过期后无法继续播放,需重新开通会员解密。免费用户可通过观看广告解锁每日最多5首歌曲完整播放,每次看…

    2026年9月23日
    300
  • VSCode配置Java编程环境(手把手教学,环境搭建不求人)

    安装jdk并配置环境变量,推荐使用java 11或java 17等lts版本,通过命令行执行java -version和javac -version验证安装成功;2. 下载并安装vscode本体,按照默认安装流程完成;3. 在vscode中安装“extension pack for java”扩展包…

    2026年9月23日
    100
  • mysql安装完成如何事件 mysql定时任务设置教程

    mysql安装完成如何事件 mysql定时任务设置教程mysql安装完成如何事件 mysql定时任务设置教程mysql安装完成如何事件 mysql定时任务设置教程mysql安装完成如何事件 mysql定时任务设置教程

    要使用mysql的事件调度器设置定时任务,首先需开启事件调度器,其次创建定时事件,再查看管理事件,最后注意权限与时间格式等问题。具体步骤如下:1. 开启事件调度器:通过命令或配置文件启用;2. 创建事件:使用create event定义执行频率与sql操作;3. 管理事件:可查看、修改或删除已有事件…

    2026年9月23日 用户投稿
    100
  • Java Web项目在无Maven/Eclipse环境下生成WAR包的实践指南

    本文详细介绍了如何在没有Maven或Eclipse等集成开发环境或构建工具的情况下,为Java Web项目手动或通过Apache Ant工具生成WAR文件。教程涵盖了WAR文件的基本结构、使用Ant进行编译和打包的具体步骤,并提供了Ant构建脚本示例,旨在帮助开发者理解并实践WAR包的独立构建过程。…

    2026年9月23日
    100
  • 优麒麟 25.10 版本正式发布

    优麒麟 25.10 正式版现已上线,此版本将提供长达9个月的支持周期,基于最新的 linux 6.17 内核打造,在基础库、子系统及核心组件等方面实现了全面升级,显著提升了系统的稳定性与兼容性,同时推出了焕然一新的软件商店。 新增特性 1. 搭载 Linux 6.17 内核 优麒麟 25.10 集成…

    2026年9月23日
    100
  • linux如何优雅的关机

    优雅关机的三大法宝:拔电源、shutdown、poweroff 及其对硬件和数据的影响 在讨论关机方法之前,先了解一下机械硬盘的内部结构。 那固态硬盘SSD呢? FTL工作示意图。FTL表对SSD至关重要,如果在FTL写回Flash之前突然断电,内存数据丢失,FTL表也将丢失。因此,高端SSD和服务…

    2026年9月23日
    100
  • 四种获取fasta序列长度的方法

    在处理fasta序列时,我们常常需要知道每条序列的长度。今天小编将与大家分享四种获取fasta序列长度的方法。 一、使用awk 以下是使用awk获取fasta序列长度的代码: awk ‘/^>/{if (l!=””) print l; print; l=0; next}{l+=length($…

    2026年9月23日
    200
  • VSCode如何实现代码版本对比 VSCode Git差异对比的高效使用方法

    vscode通过scm视图直接对比工作区与head的差异;2. 点击已暂存文件可查看暂存区与head的差异;3. 通过命令面板、scm历史记录或右键菜单可对比任意版本或文件;4. 差异视图支持并排和内联模式,并提供跳转导航;5. 时间线视图可追溯文件级提交历史并对比各版本;6. gitlens扩展增…

    2026年9月23日
    600
  • Flink项目实践 | Flink 单机安装部署

    Flink项目实践 | Flink 单机安装部署Flink项目实践 | Flink 单机安装部署Flink项目实践 | Flink 单机安装部署Flink项目实践 | Flink 单机安装部署

    apache flink 是一个用于对无界和有界数据流进行状态计算的框架和分布式处理引擎。flink 设计旨在所有常见集群环境中运行,并以内存速度和任意规模进行计算。 为了深入了解 Flink,首先需要搭建其运行环境。 Flink 可以在所有类似 UNIX 的环境中运行,包括 Linux,Mac O…

    2026年9月23日 用户投稿
    200
  • Windows 11 截图工具更新,支持即时标注

    微软近期为其内置的截图工具带来了一项重要升级,正式引入即时标注功能,目前该功能正逐步向所有用户推送。 过去,尽管截图工具和画图应用已支持添加文本框或标记内容,但用户必须先将截图保存,或手动打开相关程序后才能进行编辑操作。 通常情况下,当用户使用鼠标拖选区域时,系统会立即完成截图并自动存入默认的库文件…

    2026年9月23日
    000
  • mysql怎么添加哈希索引 mysql创建哈希索引的使用场景

    mysql怎么添加哈希索引 mysql创建哈希索引的使用场景mysql怎么添加哈希索引 mysql创建哈希索引的使用场景mysql怎么添加哈希索引 mysql创建哈希索引的使用场景mysql怎么添加哈希索引 mysql创建哈希索引的使用场景

    mysql中可以显式添加哈希索引的场景仅限于memory存储引擎,1.创建memory表时通过using hash语法指定主键或辅助索引;2.对已有memory表使用alter table添加哈希索引。对于innodb等磁盘引擎,无法手动创建哈希索引,但其内部会自动管理自适应哈希索引(ahi)以优化…

    2026年9月23日 用户投稿
    200
  • VSCode配置MacOS C环境 详细图解VSCode搭建C++开发

    在mac++os上用vscode配置c/c++环境的关键是安装xcode command line tools以获取clang编译器和lldb调试器,然后安装vscode的c/c++扩展,接着创建项目文件夹和源文件,通过配置tasks.json定义编译任务,确保使用clang编译当前文件并生成可执行…

    2026年9月23日
    100
  • QQ阅读电子书官网_QQ阅读官方下载地址

    QQ阅读电子书官网是yuedu.reader.qq.com,该网站提供小说、杂志、漫画等多种数字内容,支持多设备同步与个性化阅读设置。 QQ阅读电子书官网地址在哪里?这是不少网友都关注的,接下来由PHP小编为大家带来QQ阅读电子书官网,感兴趣的网友一起随小编来瞧瞧吧! https://yuedu.3…

    2026年9月23日
    100
  • Java javac 命令与当前工作目录解析

    在Java编译环境中,javac命令的“当前目录”指的是命令被执行的物理位置,而非源文件所在的目录。理解这一概念对于正确配置和管理Java项目的编译路径至关重要,特别是当默认的classpath设置为.时,它决定了编译器查找类文件的起点。 1. javac 命令与当前工作目录的定义 在操作系统中,当…

    2026年9月23日
    200

发表回复

登录后才能评论
关注微信