1、权限位的涵义

目前Llinux的权限位有10位(新版本中有些文件的权限位最后会有个.,表示该文件是受SELinux的保护的),每一位都代表着不同的涵义:

这10位的涵义如右图所描述的:

在这里插入图片描述

第1位:表示文件类型,Linux不像Windows使用扩充名表示文件类型,而是使用权限位的第1位表示。尽管Linux文件的种类不像Windows这么多,但也不少,详尽情况可使用”infols”命令查看,常见的文件类型有:

标示表示文件类型说明

普通文件

块设备文件

这是一种特殊设备文件,储存设备都是这些文件,如分区文件/dev/sda1

字符设备文件

这也是特殊设备文件,输入设备通常都是这些文件,如键盘、键盘等

目录文件

l(大写L)

软链接文件

管线符文件

这是一种极其稀少的特殊设备文件

套接字文件

这也是一种特殊设备文件,一些服务支持Socket访问,才会形成这样的文件

第2-4位:表示文件所有者(用u表示)的权限,有字母则由该权限,为-则表示没有该权限

标示涵义权限

read

读取权限

write

写权限

execute

执行权限

linux常用命令含义_linux系统chmod命令_linux命令 chmod 755的含义

第5-7位代表文件所属组(用g表示)的权限,同样用rwx表示

第8-10位代表其他人(用o表示)的权限,也用rwx表示

2、基本权限命令

①chmod:更改文件的权限模式linux命令 chmod 755的含义,命令所在路径为/bin/chmod,所有用户可执行

命令格式:

chmod [选项] 权限模式 文件名

选项:

-R:递归设置权限,也就是给子目录中的所有文件设定权限

权限模式的格式:[ugoa][+-=][perms],即[用户身分][赋于形式][权限]。

用户身分:

u——所有者(user)

g——所属组(group)

o——其他人(other)

a——代表全部(all)

赋于形式:

+——加入权限

-——减去权限

=——设置权限

示例1️⃣:表示针对cde这个文件给文件所有者(u)添加执行权限(x)

chmod u+x cde

示例2️⃣:同时给多个身分添加相应权限,中间用冒号隔开

chmod g+w,o+w cde

示例3️⃣:消除权限,使用加号

chmod u-x,g-w,o-w cde

3、数字权限

4:同r,读

2:同w,写

1:同x,执行

示例:755中的第一位7表示给文件所有者赋的权限为4+2+1,即读写执行嵌入式linux培训,同理第二位5表示给所属组赋的权限为4+1,即读和执行,最后一位则是给其他人赋于的权限

chmod 755 cde

常用数字权限:

数字权限使用场景描述

644

文件的基本权限

linux系统chmod命令_linux常用命令含义_linux命令 chmod 755的含义

所有者拥有读、写权限,所属组和其他只读

755

文件的执行权限和目录的基本权限

拥有者读、写和执行,所属组和其他人可读写

777

最大权限

所有人都对该文件拥有读写和执行权限

4、修改所有者和所属组

①chown:更改文件和目录的所有者和所属组,命令所在目录为/bin/chownlinux空间,所有用户可执行

命令格式:

chown [选项] 所有者:所属组 文件或目录

选项

-R:递归设置权限

Tip:普通用户不能更改文件的所有者,哪怕自己是这个文件的所有者也不行;普通用户只可以更改所有者是自己的文件的权限(rwx)

添加用户:添加用户的时侯会创建一个同名的该用户的初始组,即同时会添加一个名为user1的group

useradd user1

给新加用户设置密码:只有root用户可以在设置密码时忽视Linux的提示

passwd user1

在这里插入图片描述

更改文件所有者:

linux系统chmod命令_linux常用命令含义_linux命令 chmod 755的含义

chown user1 cde

②chgrp:更改文件和目录的所属组,命令所在目录/bin/chgrp,所有用户可执行

chgrp user1 cde

改回所有者和所属组:

chown root:root cde

5、权限含意的解释

首先,读、写、执行权限对文件和目录的作用是不同的。

权限对文件的作用:

读(r):对文件有读权限,代表可以读取文件中的数据。假如把权限对应到命令上,这么一旦对文件有读权限linux命令 chmod 755的含义,就可以对文件执行cat、more、less、head、tail等文件查看命令。

写(w):对文件有写权限,代表可以更改文件中的数据。假如把权限对应到命令上,这么一旦对文件有写权限,就可以对文件执行vim、echo等更改文件数据的命令。注意:对文件有写权限并不能删掉文件本身,只能更改文件中的数据;假如想删掉文件,则须要对文件的上级目录拥有写权限。

执行(x):对文件有执行权限,代表文件可以运行。在Linux中,只要文件有执行权限,这个文件就是执行文件了。只是这个文件究竟能不能正确执行,除了须要执行权限,还要看文件中的代码是不是正确。对文件来说,执行权限是最高权限。

权限对目录的作用:

读(r):对目录有读权限,代表可以查看目录下的内容,也就是可以查看目录下有什么文件和子目录。假如把权限对应到命令上,这么一旦对目录有了读权限,就可以在目录下执行ls命令,查看目录下的内容。

写(w):对目录有写权限,代表可以更改目录下的数据,也就是可以在目录中新建、删除、复制、剪切子文件或子目录。对应到命令上,就可以在目录下执行touch、rm、cp、mv命令。对目录来说,写权限是最高权限。

执行(x):目录是不能运行的,这么对目录拥有执行权限,代表可以步入目录。对应到命令上就是可以对目录执行cd命令,步入目录。

linux常用命令含义_linux命令 chmod 755的含义_linux系统chmod命令

目录的可用权限只有以下3个:

0:任何权限都不赋于

5:基本的目录浏览和步入权限

7:完全权限(读+写+进人)

6、umask默认权限

即新建文件时赋于文件的权限,在/etc/profile中定义。

查看系统的umask权限:

umask

用八补码数值显示umask权限:

umask -S

说明:上图表示root用户新建的文件对于root用户有rwx权限,对于所属组的其他用户有rx权限,对于其他用户有rx权限。

按照umask值估算新建文件或文件夹的初始权限的算法如下:

Tagged:
Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复