Linux常用命令之用户权限管理chmod、chown、chgrp、umask命令讲解
这节课我们重点来学习权限管理命令,说到权限大家可能第一时间能想到的就是读、写、执行 rwx 三种权限,在正式讲解权限命令之前,先简单的介绍一下rwx权限对于文件和目录的不同含义。
| 权限字符 | 权限 | 对文件的权限意义 | 对目录的权限意义 |
|---|---|---|---|
| r | 读权限 | 可以查看文件内容 | 可以列出目中的内容 |
| w | 写权限 | 可以修改文件内容 | 可以在目录中创建和删除文件 |
| x | 执行权限 | 可以执行文件(如命令、脚本) | 可以进入目录 |
1、chmod 命令解释
- 命令名称:
chmod - 命令英文全称:
change the permissions mode of a file - 命令所在路径:
/bin/chmod - 执行权限:所有用户
- 命令功能:修改文件或目录的权限
- 语法:
chmod [ugoa] [+-=] [rwx] [文件或目录]
参数说明
[ugo] : u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个所属组(group),o 表示其他以外的人,a 表示这三者皆是。
[+-=] : + 表示增加权限、- 表示取消权限、= 表示覆盖之前的权限。
[rwx] : r 表示可读取,w 表示可写入,x 表示可执行
举例
$ chmod u+wx file1#将file1的所有者添加可写和可执行权限
$ chmod o-r file1#将file1给其他人去掉可读权限
$ chmod g=rwx#将所属组的权限设置为可读、写、执行权限,不管之前是的权限是什么
比如我们目录下面有file1文件,目前所有者权限是 rw,现在给所有者增加 x 权限,执行 $ chmod u+x file1 即可:

虽然这种方法很方便,但是我们在实际过程中,并不太用这种方式,而是通过数字的方法来设置权限,语法如下:
$ chmod [mode=421] [文件或目录]#其中4代表r读权限,2代表w写权限,1代表x执行权限
我们知道一个文件的权限是由rwx来表示,比如 rwxr-xr--,在前的文章我们有提到,把这个权限每三个分为一组,分别代表所有者权限、所属组权限以及其他人权限。
拿 rwxr-xr--举例,每三个分为一组,那么可以分为:所有者权限是 rwx,所属组权限是 r-x,其他人权限是 r--。如果用数组来代替,所有者权限rwx:4+2+1=7,依次类推,所属组权限是5,其他人权限是4。因此用数字来表示权限的命令就是:chmod 754 file
比如我目录下有个 file2文件,目前权限是rw-r--r--(644),现在要改成 rwxr-xr-x(755),执行命令
$ chmod 755 file2 即可:

其他参数说明
-c: 若该档案权限确实已经更改,才显示其更改动作-f: 若该档案权限无法被更改也不要显示错误讯息-v: 显示权限变更的详细资料-R: 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)--help: 显示辅助说明--version: 显示版本
比如我要对当前目录下所有的文件及目录修改为
777权限,执行$ chmod -R 777 *
2、chown 命令解释
- 命令名称:
chown - 命令英文全称:
change file ownership - 命令所在路径:
/bin/chown - 执行权限:所有用户
- 命令功能:修改文件或目录的所有者
- 语法:
chown [用户] [文件或目录]
举例
比如我test目录下面有个file1文件,目前所有者是 root,我想改成我安装系统的时候定义的用户chuan,执行命令:
$chown chuan file1

3、chgrp 命令解释
- 命令名称:
chgrp - 命令英文全称:
change file group ownership - 命令所在路径:
/bin/chgrp - 执行权限:所有用户
- 命令功能:修改文件或目录的所属组
- 语法:
chgrp [用户组] [文件或目录]
使用方法和chown一样,这里就不多做说明了。
4、umask 命令解释
- 命令名称:
umask - 命令所在路径:
/bin/umask - 执行权限:所有用户
- 命令功能:在建立文件时预设缺省的权限掩码
- 语法:
umask [-S]
参数说明
-S以文字的方式来表示权限掩码
举例
可以使用命令 umask 来查看umask值:
$ umask

可以看到umask值为0022,其中第一个0与特殊权限有关,可以暂时不用理会,后三位002则与普通权限(rwx)有关,即权限掩码值,其中002中:
第一个0与用户(user)权限有关,表示从用户权限减0,也就是权限不变,所以文件的所有者的权限是默认权限(rwx)
第二个2与组权限(group)有关,由于w=2,所以需要从其他用户默认权限(rw)减去2,也就是去掉写(w)权限
所属组的权限(r-x)最后一位2则与系统中其他用户(others)的权限有关,也是一样的去掉写(w)权限。
因此最后我们查看它的权限应该是:rwxr-xr-x
其实这样看起来不太直观,我们可以使用:
$ umask -S
用户权限管理命令主要就是以上几个命令了,下一节课我们来继续学习Linux的常用其他命令。

Linux常用命令之用户权限管理chmod、chown、chgrp、umask命令讲解的更多相关文章
- Linux_CentOS用户管理 和 用户权限管理 chmod、ACL、 visudo
一.用户管理 Linux 系统同时可以支持多个用户,每个用户对自己的文件设备有特殊的权利,能够保 证用户之间互不干扰.就像手机开了助手一样,同时登陆多个 qq 账号,当硬件配置非常高 时,每个用户还可 ...
- linux用户权限管理, chmod, ln
1 /etc/passwd文件 用户名 密码 UID GID Full Name 主目录 ...
- linux笔记:权限管理命令chmod,chown,chgrp,umask
权限对文件和目录的含义是不同的:对文件来说:读:可以查看文件内容写:可以修改文件内容执行:可以执行文件对目录来说:读:可以列出目录中的内容写:可以在目录中创建.删除文件执行:可以进入目录 能够更改文件 ...
- Linux第四节 组管理、用户管理、权限管理 / chmod /chown / umask / vim
三期第三讲1.组管理/用户管理(重要文件系统会实时备份 file-) vim/etc/group: 组管理文件://组名:密码控位键:组id:成员 vim/etc/gshadow:组密码管理文件:// ...
- Linux命令(19)用户权限管理:chown
linux用户权限: Linux/Unix 是多人多工作业系统,所有的档案皆有拥有者.利用 chown 可以将档案的拥有者加以改变. 一般来说,这个指令只有是由系统管理者(root)所使用,一般使用者 ...
- Linux命令之用户权限管理
1.创建组.删除组.修改组名.查看组 groupadd 组名 #添加用户组 groupdel 组名 #删除用户组 groupmod -n 新组名 原组名 #修改用户组名称 groups 用户名 #查看 ...
- Ubuntu用户权限管理(chown, chmod)
改变文件所有权chown 例如 sudo chown username myfile myfile文件的所有权变为username. chown -R username /files/work 加入参 ...
- linux中权限管理命令(chmod/chown/chgrp/unmask)
目录 chmod chown chgrp umask chmod 解释 命令名称:chmod 命令英文原意:change the permissions mode of a file 命令所在路径:/ ...
- 目录(cd mkdir rmdir rm pwd ls) 文件(ln touch mv rm cat more head rail) 文件权限(chmod chown chgrp) 文件通配符(* ? [])
记住Linux目录树的结构是一个称职Linux系统管理员的必备素质! 目录漫游cd cd - 目录显示pwd 目录管理 mkdir -p a/b/c/1 parent创建多层目录 -m 700 ...
随机推荐
- flutter学习01-flutter起步安装配置(window, vscode开发)
从零开始配置flutter环境,如果直接去看官方文档配置的话,太过复杂,其实正式没有那么多步骤,记录一下: 1.首先,前往下面这个网站,下载flutter sdk https://flutter.d ...
- 用nodejs实现向文件的固定位置插入内容
往文件的固定的行写入数据: 需要用到时nodejs的fs模块和path模块 用到fs模块的方法 readFileSync & writeFileSync : readFileSync 是读取文 ...
- redis(十):Redis 列表(List)
Redis 列表(List) Redis列表是简单的字符串列表,按照插入顺序排序.你可以添加一个元素到列表的头部(左边)或者尾部(右边) 一个列表最多可以包含 232 - 1 个元素 (4294967 ...
- Cordova总是弹出Connection to server was Unsuccessful
开发环境:Cordova版本:6.x 安卓版本:6.0 解决方案一: 在config.xml中添加以下内容: <preference name="LoadUrlTimeoutValue ...
- bzoj3211花神游历各国&&bzoj3038上帝造题的七分钟2*
bzoj3211花神游历各国 题意: n个数的序列,m个操作,操作两种:区间开根(向下取整)和区间求和.n≤100000,m≤200000,序列中的数非负且≤109. 题解: 一个≤109的数开6次根 ...
- Kafka 是如何管理消费位点的?
Kafka 是一个高度可扩展的分布式消息系统,在实时事件流和流式处理为中心的架构越来越风靡的今天,它扮演了这个架构中核心存储的角色.从某种角度说,Kafka 可以看成实时版的 Hadoop 系统.Ha ...
- js&jsp规范问题
1.js初始化问题 一般与数据库交互的需要进行初始化,固定控件一般不需要初始化.有些需要整体浏览器页面校准的可能需要初始化. //初始化操作按钮 $(function(){ ...
- Java数组倒置
Java数组之 -- 数组倒置 方法一 : package mytest; public class test2 { public static void main(String[] args ...
- OSCP Learning Notes - Buffer Overflows(3)
Finding Bad Characters 1. Find the bad charaters in the following website: https://bulbsecurity.com/ ...
- 肝了两天IntelliJ IDEA 2020,解锁11种新姿势, 真香!!!
IDEA2020版本正式发布已经有3个月了,当时由于各方面原因(太懒)也没有去尝试新功能.于是这个周末特意去在另一个电脑上下载了最新版的IDEA,并尝试了一下.总的来说呢,体验上明显的提升. 作为一个 ...