目录

  • chmod
  • chown
  • chgrp
  • umask

chmod

解释

命令名称:chmod
命令英文原意:change the permissions mode of a file
命令所在路径:/bin/chmod
执行权限:所有用户
功能描述:改变文件或目录权限

语法

chmod [{ugoa}{+-=}{rwx}] [文件或目录]
chmod [mode=421] [文件或目录]
-R 递归修改 # 第一种修改方式 chmod [{ugoa}{+-=}{rwx}] [文件或目录]
ugoa:
u:所有者
g:所属组
o:其他人
a:所有人
+-=:
+:针对文件或目录增加某个权限
-:针对文件或目录减少某个权限
=:赋予文件或目录全新的权限,以此刻的权限为准 # 第二种修改方式 chmod [mode=421] [文件或目录]
rwx:
r:4
w:2
x:1
rwxrw-r--
权限:764(4+2+1=7/4+2=6/4)

示例

# 第一种增加权限
chmod g+x test.txt [root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -l test.txt
-rw-r--r-- 1 root root 11 Nov 28 15:39 test.txt
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# chmod g+x test.txt
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -l test.txt
-rw-r-xr-- 1 root root 11 Nov 28 15:39 test.txt # 第二种增加权限
chmod 777 test.txt [root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -l test.txt
-rw-r-xr-- 1 root root 11 Nov 28 15:39 test.txt
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# chmod 777 test.txt
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -l test.txt
-rwxrwxrwx 1 root root 11 Nov 28 15:39 test.txt

权限特别注意

root用户进入的时候显示#,普通用户显示$

# 在/tmp下新建文件夹test
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# mkdir test # 在/tmp/test文件夹下新建test.txt
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# touch test/test.txt # 查看test文件下的文件
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -l test
total 0
-rw-r--r-- 1 root root 0 Nov 28 17:54 test.txt # 查看/tmp/test文件夹的权限
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -ld test
drwxr-xr-x 2 root root 4096 Nov 28 17:54 test # 赋予/tmp/test文件夹全部的权限
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# chmod 777 test
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -ld test
drwxrwxrwx 2 root root 4096 Nov 28 17:54 test [root@izm5e2q95pbpe1hh0kkwoiz tmp]# ls -l test/test.txt
-rw-r--r-- 1 root root 0 Nov 28 17:54 test/test.txt # 新增加一个普通用户并修改密码
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# useradd eternity
[root@izm5e2q95pbpe1hh0kkwoiz tmp]# passwd eternity # 使用eternity帐号,密码123456,登录服务器
# 查看当前目录
[eternity@izm5e2q95pbpe1hh0kkwoiz ~]$ pwd
/home/eternity # 进入/tmp目录
[eternity@izm5e2q95pbpe1hh0kkwoiz ~]$ cd /tmp # 查看/tmp/test目录的权限,拥有全部权限
[eternity@izm5e2q95pbpe1hh0kkwoiz tmp]$ ls -ld test
drwxrwxrwx 2 root root 4096 Nov 28 17:54 test # /tmp/test目录下存在test.txt,拥有读权限
[eternity@izm5e2q95pbpe1hh0kkwoiz tmp]$ ls -l test/test.txt
-rw-r--r-- 1 root root 0 Nov 28 17:54 test/test.txt # 删除/tmp/test下的test.txt文件
[eternity@izm5e2q95pbpe1hh0kkwoiz tmp]$ rm test/test.txt
rm: remove write-protected regular empty file ‘test/test.txt’? y # 删除成功,此时/tmp/test目录下test.txt已经没有了
[eternity@izm5e2q95pbpe1hh0kkwoiz tmp]$ ls -l test/test.txt
ls: cannot access test/test.txt: No such file or directory

只有管理员拥有rw读写权限,所属组和其他人只有读权限,但是此时普通用户却删除了只有r读权限的文件,为什么????

文件目录权限总结

代表字符 权限 对文件的含义 对目录的含义
r 读权限 可以查看文件内容 可以列出目录中的内容
w 写权限 可以修改文件内容 可以在目录中创建和删除文件
x 执行权限 可以执行文件 可以进入目录

分析

对于文件有写权限,仅仅代表可以修改文件的内容,而没有删除文件的权限

对于目录有写权限,可以在目录中创建和删除文件

因为上面的/tmp/test目录的权限为777
所以普通用户对于/tmp/test目录也具有创建文件和删除文件的权限
所以,普通用户也能删除/tmp/test/test.txt文件
但是普通用户无法编辑/tmp/test/test.txt文件,使用vim编辑文件的时候,会提示Waring: Changing a readonly file

chown

解释

命令名称:chown
命令英文原意:change file ownership
命令所在路径:/bin/chown
执行权限:所有用户
功能描述:改变文件或目录的所有者

语法

chown [用户] [文件或目录]

在linux中只有root能改变文件所有者,即便是创建者都不可以

示例

# 改变文件所有者(将test.txt的所有者由eternity更改为root)
chown root /tmp/test/test.txt [root@izm5e2q95pbpe1hh0kkwoiz ~]# pwd
/root
[root@izm5e2q95pbpe1hh0kkwoiz ~]# ls -l /tmp/test/test.txt
-rw-r--r-- 1 eternity eternity 7 Nov 28 18:15 /tmp/test/test.txt
[root@izm5e2q95pbpe1hh0kkwoiz ~]# chown root /tmp/test/test.txt
[root@izm5e2q95pbpe1hh0kkwoiz ~]# ls -l /tmp/test/test.txt
-rw-r--r-- 1 root eternity 7 Nov 28 18:15 /tmp/test/test.txt

chgrp

解释

命令名称:chgrp
命令英文原意:change file group ownership
命令所在路径:/bin/chgrp
执行权限:所有用户
功能描述:改变文件或目录的所属组

语法

chgrp [用户组] [文件或目录]

示例

# 改变文件所属组(将test.txt的所属组由eternity更改为eternityz)
chgrp eternityz /tmp/test/test.txt # 当前目录
[root@izm5e2q95pbpe1hh0kkwoiz ~]# pwd
/root
# 查看详细信息
[root@izm5e2q95pbpe1hh0kkwoiz ~]# ls -l /tmp/test/test.txt
-rw-r--r-- 1 root eternity 7 Nov 28 18:15 /tmp/test/test.txt
# 增加eternityz组
[root@izm5e2q95pbpe1hh0kkwoiz ~]# groupadd eternityz
# 改变所属组
[root@izm5e2q95pbpe1hh0kkwoiz ~]# chgrp eternityz /tmp/test/test.txt
[root@izm5e2q95pbpe1hh0kkwoiz ~]# ls -l /tmp/test/test.txt
-rw-r--r-- 1 root eternityz 7 Nov 28 18:15 /tmp/test/test.txt

umask

解释

命令名称:umask
命令英文原意the user file-creation mask
命令所在路径:shell内置命令
执行权限:所有用户
功能描述:显示/设置文件的缺省权限

语法

umask [-S]
-S 以rwx形式显示新建文件缺省权限(大写的S)

示例

# 查看文件的缺省权限
umask -S # 查看umask
umask [root@izm5e2q95pbpe1hh0kkwoiz ~]# umask
0022 0022中
0 特殊权限
022 ----w--w- # 通过所有权限777和022权限进行异或操作,得到缺省权限
777 rwx rwx rwx
022 --- -w- -w-
================
目录 rwx r-x r-x
文件 rwx r-- r-- # 更改umask值,进而改变缺省权限
umask 077 # 更改umask值之后,缺省权限变为
777 rwx rwx rwx
077 --- rwx rwx
================
目录 rwx --- ---
文件 rw- --- --- # 以下实验符合更改缺省权限的设置
[root@izm5e2q95pbpe1hh0kkwoiz ~]# umask 077
[root@izm5e2q95pbpe1hh0kkwoiz ~]# mkdir /tmp/lyf
[root@izm5e2q95pbpe1hh0kkwoiz ~]# ls -ld /tmp/lyf
drwx------ 2 root root 4096 Nov 29 10:55 /tmp/lyf
[root@izm5e2q95pbpe1hh0kkwoiz ~]# touch /tmp/lyf/lyf
[root@izm5e2q95pbpe1hh0kkwoiz ~]# ls -l /tmp/lyf/lyf
-rw------- 1 root root 0 Nov 29 10:56 /tmp/lyf/lyf

在linux中只有root能改变文件所有者,即便是创建者都不可以

文件的创建者为默认的所有者,此时默认的所属组也是文件创建者

linux中文件夹的缺省权限时rwxr-xr-x,文件的缺省权限是rw-r--r--,新建文件不具备可执行权限

linux中权限管理命令(chmod/chown/chgrp/unmask)的更多相关文章

  1. linux笔记:权限管理命令chmod,chown,chgrp,umask

    权限对文件和目录的含义是不同的:对文件来说:读:可以查看文件内容写:可以修改文件内容执行:可以执行文件对目录来说:读:可以列出目录中的内容写:可以在目录中创建.删除文件执行:可以进入目录 能够更改文件 ...

  2. [Linux] 010 权限管理命令 chmod

    1. 权限管理命令:chmod 命令名称:chmod 命令英文原意:change the permissions mode of a file 命令所在路径:/bin/chmod 执行权限:所有用户 ...

  3. Linux 基础——权限管理命令chmod

    一.Linux中的文件权限与目录权限 Linux中定义了3种访问权限,分别是r.w.x.其中r表示对象是可读的,w表示对象是可写的,x表示对象是可执行的,这3种权限组成一组rwx分别对应对象的3个安全 ...

  4. 文件权限管理命令chmod,chown与文本搜索命令grep

    1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限. [root@bogon home]# cp -r /etc/sk ...

  5. Linux基本命令 权限管理命令

    1.权限管理命令chmod ================================================================================== 命令名 ...

  6. linux文件权限更改命令chmod及数字权限实践总结

     改变权限属性命令chmod chmod 是用来改变文件或目录权限的命令,但只有文件的属主和超级用户root才有这种权限.通过chmod来改变文件或目录的权限有两种方法:一种是通过权限字母和操作符表达 ...

  7. Linux 基础——权限管理命令chown、chgrp

    一.chown命令与chgrp命令的作用 有时你需要改变文件或目录的属主,比如有人离职或开发人员创建了一个在测试或生产环境中需要归属在系统账户下的应用.Linux提供了两个命令来实现这个功能:chow ...

  8. Linux权限管理命令chmod详解

    命令chmod详解 命令chmod(英文原意:change permissions mode of a file),所在路径为: 可以看到,它的路径为:/usr/bin/chmod,因此,它的执行权限 ...

  9. Linux命令-权限管理命令:chmod

    特别注意:在linux中,目录通常是有r和x两个权限的.删除文件的前题是要对文件所在的目录有w的权限才可以. cd /tmp 切换到tmp目录下面 touch chengshi.list 在当前目录中 ...

随机推荐

  1. spring Cloud-eureka的保护模式

    eureka的首页出现以下警告 EMERGENCY! EUREKA MAY BE INCORRECTLY CLAIMING INSTANCES ARE UP WHEN THEY'RE NOT. REN ...

  2. 从0到1掌握某Json-TemplatesImpl链与ysoserial-jdk7u21的前因后果

    本文首发于先知社区: https://xz.aliyun.com/t/7096 前言 作为一名安全研究人员(java安全菜鸡),知道拿到exp怎么打还不够,还得进一步分析exp构造原理与漏洞原理才行. ...

  3. MySQL多表联查以及以及架构

    多表之间关联查询:      据库操作中,多表联合查询是后台开发者常用到的查询语句. JOIN SQL JOIN 子句用于把来自两个或多个表的行结合起来,最常见的 JOIN 类型:SQL INNER ...

  4. .NET Core Install for Ubuntu 14.04

      Add the dotnet apt-get feed In order to install .NET Core on Ubuntu or Linux Mint, you need to fir ...

  5. 创建dynamics CRM client-side (六) - form & field notification

    form 和 field 的notification在开发当中会经常使用到 // Converting functions to Namespace Notation var Sdk = window ...

  6. Java容器解析系列(16) android内存优化之SparseArray

    HashMap的缺点: 自动装箱导致的性能损失; 使用拉链法来解决hash冲突,如果hash冲突较多,需要遍历链表,导致性能下降,在Java 8 中,如果链表长度>8,会使用红黑树来代替链表; ...

  7. learn more ,study less(三):超越整体性学习

    高效率的学生 成为一名高效率学生或是自学者需 要掌握减少花在书本上时间的艺术,我上学时,除了全日制的上课学习,业余时间经营一家 企业,每周写大约 7000 字,健身以及主持一家演讲俱乐部,尽管如此,我 ...

  8. 模块化系列教程 | 深入源码分析阿里JarsLink1.0模块化框架

    1. 概述 1.1 模块动态加载卸载主流程 2. 模块动态加载 2.1 模块加载源码分析 2.1.1 AbstractModuleRefreshScheduler 2.1.2 ModuleLoader ...

  9. Linux学习笔记-配置阿里云yum源

    进入目录:cd /etc/yum.repos.d 备份:mkdir repobak mv *.repo repobak/ 下载CentOS-Base.repo 到路径/etc/yum.repos.d/ ...

  10. CUDA学习(五)之使用共享内存(shared memory)进行归约求和(一个包含N个线程的线程块)

    共享内存(shared memory)是位于SM上的on-chip(片上)一块内存,每个SM都有,就是内存比较小,早期的GPU只有16K(16384),现在生产的GPU一般都是48K(49152). ...