专栏首页Java识堂Linux下的权限管理居然这么有意思

Linux下的权限管理居然这么有意思

介绍

这篇文章是后面一篇的铺垫,用二进制来管理权限也挺有意思的。

Linux下一个文件一经创建,就具有三种访问方式 1.读,可以显示该文件的内容 2.写,可以编辑或删除它 3.执行,如果该文件是一个shell脚本或者程序

按照所针对的用户,文件的权限可以分为三类

1.文件属主,创建该文件的用户 2.同组用户,文件属主所在用户组的任何用户 3.其他用户,不包含文件属主的其他用户组中的用户

[root@VM_0_14_centos ~]# ll
total 32
drwxr-xr-x 4 root root 4096 Nov 28 00:09 group-chat
drwxr-xr-x 5 root root 4096 Oct 16 11:41 new-blog
-rwxr--r-- 1 root root 2303 Sep 17 11:31 start_sb_app.sh
...

分析一下命令的结果

输出

解释

total 32

该目录中所有文件所占的空间

drwxr-xr-x

d表示文件的类型,rwxr-xr-x9个字符表示文件的访问权限

4

该文件硬链接的数目

root

文件的属主

root

文件属主root所在的缺省组(也叫做root)

28

用字节来表示的文件长度

Nov 28 00:09

文件的更新时间

group-chat

文件名

文件的类型有如下几种

符号

介绍

d

目录

l

符号链接(指向另一个文件)

s

套接字文件

b

块设备文件

c

字符设备文件

p

命名管道文件

-

普通文件,或者更准确的说,不属于以上几种类型的文件

rwxr-xr-x9个字符表示文件的访问权限,这9个字符可以分为三组 rwx:文件属主权限 r-x:同组用户权限 r-x:其他用户权限

rwx位置上的-表示相应的访问权限被禁止 举几个例子演示一下,相信你很快就理解了

权限

所代表的的含义

r-- --- ---

文件属主可读,但不能写或执行

rwx r-- r--

文件属主可读,写,执行,同组和其他用户只可读

rwx rwx rwx

所有人可读,写,执行

改变权限

符号模式

chmod命令的一般格式为

chmod [who] operator [permission] filename

who的含义

字符

解释

u

文件属主权限

g

同组用户权限

o

其他用户权限

a

所有用户(文件属主,同组用户及其他用户)

operator的含义

字符

解释

+

增加权限

-

取消权限

=

设定权限

permission的含义

字符

解释

r

读权限

w

写权限

x

执行权限

举几个例子演示一下,假定myfile文件最开始的权限为rwx rwx rwx

命令

结果

含义

chmod a-x myfile

rw- rw- rw-

收回所有用户的执行权限

chmod go-w myfile

rw- r-- r--

收回同组用户和其他用户的写权限

chmod u+x myfile

rwx r-- r--

赋予文件属主执行权限

绝对模式

用二级制数字的0和1来表示用户的权限,这个思想很牛逼,如下图

当用户同时有读写执行权限时,二进制为是111,转为10进制就是7,所以777就表示文件属主,同组用户和其他用户都拥有读写执行权限

例子如下

命令

结果

含义

chmod 777 myfile

rwx rwx rwx

赋予所有用户读,写,执行权限

chmod 644 myfile

rw-- r-- r--

赋予文件属组读和写的权限,所有其他用户读权限

chmod 444 myfile

r-- r-- r--

赋予所有用户读权限

本文分享自微信公众号 - Java识堂(erlieStar),作者:李立敏

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-12-15

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 系统总结一波Linux下find命令,查找就是这么清晰

    Linux系统中的 find 命令在查找文件时非常有用而且方便。它可以根据不同的条件来查找文件,例如权限、拥有者、修改日期/时间、文件大小等等。

    Java识堂
  • 在Redis中使用简单强大的Lua脚本

    前段时间写Redis分布式锁,想着在小灰文章的基础上再总结一下,这样能有更深的印象,顺便把Lua脚本分享一下,如果项目中使用Redis比较多,那么Lua脚本一定...

    Java识堂
  • 帮你体系化的学习Git

    在日常工作中,经常会用到Git操作。但是对于新人来讲,刚上来对Git很陌生,操作起来也很懵逼。本篇文章主要针对刚开始接触Git的新人,理解Git的基本原理,掌握...

    Java识堂
  • Linux的文件系统(3)

    文件系统(File system)泛指储存在计算机上的文件和目录。文件系统可以有不同的格式,叫做文件系统类型(file system types)。这些格式决定...

    用户2398817
  • 快速学习-Linux权限管理

    由于Linux是多用户、多任务的操作系统,因此可能常常有多人同时在某台主机上工作,但每个人均可在主机上设置文件的权限,让其成为个人的“私密文件”,即个人所有者。...

    cwl_java
  • 一篇文章让你快速学习Python编程自动化开发学习9-paramiko模块

    第三方库的安装 下面要讲的paramiko是一个第三方库。这是第一次使用到第三方库,要使用第三方库需要先进行安装。不过现在安装过程比较简单,一条命令便可以完成库...

    企鹅号小编
  • 软件开发过程自动化原理及技术(完整示例)

    软件开发过程自动化原理及技术 一个简单完整的自动化示例 1   概述 关于本文,最开始只是想写一些关于 软件自动化测试开发 的文章,但是后来写着写着,发现不先在...

    用户1170933
  • 自动编码器优化之主成分分析

    Contents 1 引言 2 实例和数学背景 3 旋转数据 4 数据降维 5 还原近似数据 6 选择主成分个数 1. 引言 主成分分析(PCA)是一种能够极大...

    昱良
  • 纯算法AI企业最好的出路是被收购,数字化水平低的企业只有转型和淘汰两条路 | 大咖周语录

    数据猿导读 对于大数据的概念以及大数据在各行业的应用,每个人心中都有不同的看法。小编每周都会整理大数据牛人们的精彩观点,让你在最短的时间获得最精的思想荟萃。后续...

    数据猿
  • 亚马逊数据专家十年经验总结:成为数据科学家的关键四步

    编者按:本文作者 Karolis Urbonas,文章选自他个人博客。AI 研习社编译。 对于数据科学家这一职业,你了解多少? ——这是个被大公司追捧的职位,供...

    AI研习社

扫码关注云+社区

领取腾讯云代金券

玩转腾讯云 有奖征文活动