文件或目录的权限

使用ls -l来查看文件与目录的详细权限(文件拥有x权限才能执行,目录拥有x权限才能打开)

[root@shu-test home]# ls -l
总用量 0
-rw-r--r--. 1 root root 0 11月 14 00:33 shu32
[root@shu-test home]#

-rw-r--r-- 除开前面- 分三段(最前面的一个表示文件的类型,也就是之前讲到的文件类型)详细数下总共10个字符
r=可读 w=可写 x=可执行
r=4 w=2 x=1 rwx=7 rw-=6 --x=1
rw-r--r--=644 rw-r-xr-x=655
第一段:所有者的权限
第二段:所属组 属于哪个用户组
第三段:所有者与所属组以外的用户的权限

chmod命令

更改文件或目录的权限
格式:
chmod [参数][权限数字][文件名]
更改权限:

[root@shu-test home]# chmod 777 shutest.txt
[root@shu-test home]# ls -l
总用量 0
-rw-r--r--. 1 root root 0 11月 14 00:33 shu32
-rwxrwxrwx. 1 root root 0 11月 14 00:44 shutest.txt

实验:赋予1.txt权限700(root用户可执行可读写,其他用户以及root组都不行),切换到user01用户,无法操作1.txt;

[root@shu-test abc]# chmod 700 1.txt
[root@shu-test abc]# ls -la
总用量 0
drwxr-xr-x. 2 root root  19 12月 20 21:13 .
dr-xr-x---. 8 root root 256 12月 20 21:13 ..
-rwx------. 1 root root   0 12月 20 21:13 1.txt[root@shu-test abc]# su user01
[user01@shu-test abc]$ ls -la
总用量 4
drwxr-xr-x. 2 root root  19 12月 20 21:14 .
dr-xr-x---. 8 root root 256 12月 20 21:13 ..
-rwx------. 1 root root   5 12月 20 21:14 1.txt[user01@shu-test abc]$ cat 1.txt
cat: 1.txt: 权限不够
[user01@shu-test abc]$

-R:更改整个目录下的所有文件权限(所有该目录下的子文件子目录的权限都更改)(批量更改)

[root@shu-test /]# chmod -R 770 shu32/
[root@shu-test shu32]# ls -l
总用量 8
-rwxrwx---. 1 root root 9 11月 14 00:58 shuzonglu001.txt
-rwxrwx---. 1 root root 8 11月 14 00:58 shuzonglu002.txt

chown

更改文件所有者和所属组
格式:
chown [参数] [用户名] [目录或文件]

更改文件所有者:chown user01 2.txt

[root@shu-test b]# ls -l
总用量 4
-rwx------. 1 root root 889 12月 20 21:19 2.txt
drwx------. 2 root root   6 12月 20 21:19 c
[root@shu-test b]# chown user01 2.txt
[root@shu-test b]# ls -l
总用量 4
-rwx------. 1 user01 root 889 12月 20 21:19 2.txt
drwx------. 2 root   root   6 12月 20 21:19 c
[root@shu-test b]#

chown 用户名:用户组 文件名
更改文件的所有者和所有组

[root@shu-test b]# ls -l
总用量 4
-rwx------. 1 user01 user01 889 12月 20 21:19 2.txt
drwx------. 2 root   root     6 12月 20 21:19 c
[root@shu-test b]# chown root:root 2.txt
[root@shu-test b]# ls -l
总用量 4
-rwx------. 1 root root 889 12月 20 21:19 2.txt
drwx------. 2 root root   6 12月 20 21:19 c
[root@shu-test b]#

chown -R 用户名:用户组 目录名
更改目录的所有者和所有组(子目录、子文件全部更改)

[root@shu-test a]# ls -l
总用量 0
drwx------. 3 root root 28 12月 20 21:19 b
[root@shu-test a]# chown -R user01:user01 b/
[root@shu-test a]# ls -l
总用量 0
drwx------. 3 user01 user01 28 12月 20 21:19 b
[root@shu-test a]# cd b/
[root@shu-test b]# ls -l
总用量 4
-rwx------. 1 user01 user01 889 12月 20 21:19 2.txt
drwx------. 2 user01 user01   6 12月 20 21:19 c
[root@shu-test b]#

chgrp命令

chgrp 用户组 目录或文件
更改所有组(不更改所有者)

[root@shu-test a]# ls -l
总用量 0
drwx------. 3 user01 user01 28 12月 20 21:19 b
[root@shu-test a]# chgrp root b/
[root@shu-test a]# ls -l
总用量 0
drwx------. 3 user01 root 28 12月 20 21:19 b
[root@shu-test a]#

-R:更改子目录下的所有文件的所有组(这里不做实验)


umask命令

当我们创建一个文件的时候默认权限为rw-r--r--(644)权限,目录为rwxr-xr-x(755),如果我们想创建一个文件默认值为777,那么就得用到umask命令了;
决定创建文件的默认权限
实验:

[root@shu-test a]# touch 1.txt
[root@shu-test a]# mkdir k
[root@shu-test a]# ls -ls
总用量 0
0 -rw-r--r--. 1 root root  0 12月 20 22:04 1.txt
0 drwxrwxrwx. 3 root root 28 12月 20 22:03 b
0 drwxr-xr-x. 2 root root  6 12月 20 22:07 k

查询umask值

[root@shu-test a]# umask
0022
[root@shu-test a]#

更改umask值

(改值后新建2.txt文件与S目录,查看默认权限文件为664,目录为775)
那么规律就来了
我们更改的文件权限是umask 0002 就是002 文件满权限是666 目录满权限是777 通过满权限减
必须使用权限号一位位相减,而不是数字减
文件最低满权限 :666=(rw-rw-rw-)
目录最低满权限:777=(rwxrwxrwx)
umask 0002 =002 (-------w-)
New文件默认权限=【文件满权限】-【umask值】=(rw-rw-rw-)-(-------w-)=(rw-rw-r--)
New目录默认权限=【目录满权限】-【umask值】=(rwxrwxrwx)-(-------w-)=(rwxrwxr-x)

[root@shu-test a]# umask
0022
[root@shu-test a]# umask 0002
[root@shu-test a]# ls -ls
总用量 0
0 -rw-r--r--. 1 root root  0 12月 20 22:04 1.txt
0 drwxrwxrwx. 3 root root 28 12月 20 22:03 b
0 drwxr-xr-x. 2 root root  6 12月 20 22:07 k
[root@shu-test a]# touch 2.txt
[root@shu-test a]# mkdir s
[root@shu-test a]# ls -ls
总用量 0
0 -rw-r--r--. 1 root root  0 12月 20 22:04 1.txt
0 -rw-rw-r--. 1 root root  0 12月 20 22:12 2.txt
0 drwxrwxrwx. 3 root root 28 12月 20 22:03 b
0 drwxr-xr-x. 2 root root  6 12月 20 22:07 k
0 drwxrwxr-x. 2 root root  6 12月 20 22:12 s

隐藏权限lsattr、chattr

当你是该文件的拥有者、所有组、权限也有读写权限,但是无法编辑它,那么就要考虑它是否有隐藏权限;

lsattr命令

检查文件隐藏权限
lsattr 文件名

[root@shu-test a]# lsattr 1.txt
---------------- 1.txt

chattr命令

修改异常权限
chattr +i 文件名
不容许操作(无法保存)

[root@shu-test a]# lsattr 1.txt
---------------- 1.txt
[root@shu-test a]# chattr +i 1.txt
[root@shu-test a]# lsattr 1.txt
----i----------- 1.txtchattr -i 文件名
取消I属性
[root@shu-test a]# lsattr 1.txt
----i----------- 1.txt
[root@shu-test a]# chattr -i 1.txt
[root@shu-test a]# lsattr 1.txt
---------------- 1.txt

chattr +a 文件名
只能在文件尾追加文字,不能修改,不能删除,不能改名字

[root@shu-test a]# lsattr 1.txt
-----a---------- 1.txt
[root@shu-test a]# rm 1.txt
rm:是否删除普通文件 "1.txt"?y
rm: 无法删除"1.txt": 不允许的操作
[root@shu-test a]#
[root@shu-test a]# echo aaaaaaaaa>>1.txt
[root@shu-test a]# cat 1.txt
222222222222221111
aaaaaaaaa
[root@shu-test a]#

转载于:https://blog.51cto.com/shuzonglu/2052717

文件目录权限(chmod、chown、chgrp)umask、隐藏权限(lsattr、chattr)相关推荐

  1. linux基础篇-10,权限管理chown chgrp chmod umask

    linux用户及权限详解 权限管理 chown chgrp chmod umask ################################################ chown:修改属 ...

  2. 26期20180606 chmod chown umask 隐藏权限

    6月6日任务 2.14 文件和目录权限chmod 2.15 更改所有者和所属组chown 2.16 umask 2.17 隐藏权限lsattr/chattr 2.14 文件和目录权限chmod 每个文 ...

  3. 【Linux基础】四、常用基本命令——文件权限类(ls -al,chmod,chown,chgrp)、搜索查找类(find,locate,grep,wc,which)

    文件权限命令.搜索查找命令 4.6 ```文件权限类``` 4.6.1 文件属性 4.6.2 chmod 改变权限 4.6.3 chown 改变所有者 4.6.4 chgrp 改变所属组 ```4.7 ...

  4. linux更改文件权限chown,Linux 文件权限 chmod chown

    1. Linux 文件访问权限 chmod 是change mode 的缩写.同理chown是change owner的缩写,一个是改变文件的访问权限,一个是改变文件的所有者. 2. 改变文件访问权限 ...

  5. Linux系统chmod,chown,chgrp和setfacl的区别

    1.chgrp(转变文件所属用户组) chgrp 用户组 文件名 .若是整个目录下的都改,则加-R参数用于递归. 如:chgrp -R user aaa.txt 2.chown(转变文件拥有者) 格式 ...

  6. chgrp -r mysql_简说LINUX 下chmod|chown|chgrp和用法和区别

    1.chgrp(改变文件所属用户组) chgrp 用户组    文件名    ###就是这个格了.如果整个目录下的都改,则加-R参数用于递归. 如:chgrp  -R    user  smb.con ...

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

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

  8. Linux Unix 的档案存取权限,Ubuntu设置目录的读写权限(Linux命令chmod 777 dirName)

    更改文件所有者 sudo chown system_username /location_of_files_or_folders 更改文件的权限 鼠标右按钮点击文件/目录 -> 属性 权限 分页 ...

  9. Linux笔记(更改权限chmod,更改所有组chown,umask,隐藏权限chattr)

    一.文件或目录权限chmod rw-             r--           r--           . ---       ---     ---    -- 所有者         ...

  10. 文件/目录权限相关命令:chmod、chown、umask、lsattr/chattr命令解析

    2019独角兽企业重金招聘Python工程师标准>>> 本文索引: 文件/目录权限修改:chmod 预备知识 几种具体用法 重要参数: -R 所有者/所属组修改: chown 几种具 ...

最新文章

  1. 专访高磊:安卓APK安全加固的引领者
  2. 中继技术助威 Wi-Fi网路涵盖范围三级跳
  3. [题解]Codeforces Round #519 - B. Lost Array
  4. java合并sheet行_java poi Excel循环合并行
  5. 【Python成长之路】python 基础篇 -- global/nonlocal关键字使用
  6. postgresql 数据库的备份和还原
  7. html css回顾总结
  8. RequireJS进阶(一)
  9. 网站设计必备:网页经典代码(转)
  10. 移动支付走入线下商家
  11. 自然语言处理中的词袋模型
  12. 东南大学计算机程光,东南大学计算机科学与工程学院硕导介绍:程光
  13. 梯形波c语言程序利用tlc5615,TLC5615 10Bit DA正弦波信号发生器仿真原理图及源程序...
  14. 抖音+今日头条副业项目,新玩法,后期收益月入过万
  15. 计算机网络的对学生的利弊英语作文,网络的利与弊英语作文范文
  16. 英国脑科学领域_来自英国A级算法崩溃的数据科学家的4课
  17. 三元锂电池 VS 磷酸铁锂电池
  18. 【Linux】Supervisor使用详解
  19. 华为云CDN的初次实践总结
  20. 物联网应用入门--利用虚拟硬件模拟土壤湿度传感器应用编写

热门文章

  1. python里我最容易搞不清楚问题之一的encode和decode
  2. python 全栈开发,Day81(博客系统个人主页,文章详情页)
  3. Educational Codeforces Round 10 B. z-sort
  4. UML类图几种关系的总结,泛化 = 实现 组合 聚合 关联 依赖
  5. 信息图:iOS 7开发者需要知道的事
  6. DIY远程控制开关(tiny6410+LED+yeelink+curl)
  7. mysql数据倾斜_sqoop数据倾斜解决实战
  8. go mockweb接口_GitHub - duxiaoman/AnyMock: 通用接口Mock平台
  9. python下列数据中不属于字符串的是_下列数据中,不属于字符串的是( )。 (6.0分)_学小易找答案...
  10. python的抽象类详解_Python抽象类以及元类