当前位置:   article > 正文

Linux的基础知识(2)-权限&命令_linux权限 575

linux权限 575

一、前言:

“一封书信只为墙,让它三尺又何妨”

“长城万里今尤在,不见当年秦始皇”

这句话其实来自于名为“六尺巷”的典故,主要意思是说:从千里之外寄一封家书回来只是为了自家的墙能多占几尺土,那么让人家几尺又能怎么样呢?

这句诗表现了不要太过于斤斤计较得失,要有宽以待人的胸怀!

二、权限&权限命令

权限管理

权限的讲解:

ls -l 文件名

[root@Master data]# ll test.passwd

-rw-r--r--. 1 root root 1336 1月 1 21:33 test.passwd

-rw-r--r--

第一位:

-:文件

d:目录

l:链接文件

c:字符设备文件

b:块设备文件

s:套接字文件

p:管道文件

第2-4位:所有者权限u

第5-7位:所属组权限g

第8-10位:其他人权限o

基本权限:

r:可读

w:可写

x:可执行

chmod命令

作用:修改文件的权限

语法:

chmod 【选项】 {u、g、o、a} {+-=} rwx 文件名

u:所有者

g:所属组

o:其他人

a:所有

+:添加权限

-:减少权限

=:直接赋予权限

数字权限:

r=4

w=2

x=1

rwx==>7

满权限:rwxrwxrwx==>777

默认文件权限:rw-r--r--==> 644

默认目录权限:rwxr-xr-x==>755

选项:

-R:递归修改权限

  1. #文件直接赋予满权限
  2. [root@Master data]# chmod a=rwx test.passwd
  3. [root@Master data]# ll test.passwd
  4. -rwxrwxrwx. 1 root root 1336 1月 1 21:33 test.passwd
  5. #数字法修改权限
  6. [root@Master data]# chmod 644 test.passwd
  7. [root@Master data]# ll test.passwd
  8. -rw-r--r--. 1 root root 1336 1月 1 21:33 test.passwd
  9. #递归修改权限
  10. [root@Master data]# mkdir aa
  11. [root@Master data]# touch aa/a.txt
  12. [root@Master data]# chmod -R 777 aa/
  13. [root@Master data]# ll -d aa/ aa/a.txt
  14. drwxrwxrwx. 2 root root 4096 1月 5 08:29 aa/
  15. -rwxrwxrwx. 1 root root 0 1月 5 08:29 aa/a.txt
  16. #普通用户可以修改所有者和所属组的权限
  17. [zhangsan@Master ~]$ touch test
  18. [zhangsan@Master ~]$ ll test
  19. -rw-rw-r--. 1 zhangsan zhangsan 0 1月 7 06:42 test
  20. [zhangsan@Master ~]$ chmod 755 test
  21. [zhangsan@Master ~]$ ll test
  22. -rwxr-xr-x. 1 zhangsan zhangsan 0 1月 7 06:42 test

基本权限作用

权限对于文件的作用:

读(r):代表可以查看文件的内容,可以cat、more、less、head、tail等等

写(w):可以修改文件的内容,可以vim、echo等操作,但是不能删除 文件,删除文件需要上级目录具有w权限

底层逻辑:文件或者目录都会由inode和block组成,文件的inod记录的属性、而block记录的就是文件内容,但是文件名存在于上级目录的block模块

执行(x):对文件有执行权限,代表这个文件可以运行,对文件来说这个文件最危险

权限对于目录的作用:

读(r):代表可以查看目录下的内容,可以ls

写(w):代表可以touch、rm、cp、mv等等、对于目录来说最危险

执行(x):代表可以cd命令,目录没有运行的概念;

对于目录来说:目录的一般的权限只有:0,5,7权限

  1. #切换用户到zhangsan
  2. [zhangsan@Master data]$ ll -d /data
  3. drwxrwxrwx. 3 root root 4096 1月 5 08:29 /data
  4. #zhangsan创建了一个目录,并且创建一个文件
  5. [zhangsan@Master data]$ mkdir zhangsan
  6. [zhangsan@Master data]$ touch zhangsan/zhangsan.txt
  7. [zhangsan@Master data]$ ll -d zhangsan zhangsan/zhangsan.txt
  8. drwxrwxr-x. 2 zhangsan zhangsan 4096 1月 7 06:59 zhangsan
  9. -rw-rw-r--. 1 zhangsan zhangsan 0 1月 7 06:59 zhangsan/zhangsan.txt
  10. #把目录和文件的所有者权限改为0
  11. [zhangsan@Master data]$ chmod 064 zhangsan/zhangsan.txt
  12. [zhangsan@Master data]$ ll zhangsan/zhangsan.txt
  13. ----rw-r--. 1 zhangsan zhangsan 0 1月 7 06:59 zhangsan/zhangsan.txt
  14. [zhangsan@Master data]$ chmod 075 zhangsan
  15. [zhangsan@Master data]$ ll -d zhangsan/
  16. d---rwxr-x. 2 zhangsan zhangsan 4096 1月 7 06:59 zhangsan/
  17. [zhangsan@Master data]$ cd zhangsan/
  18. -bash: cd: zhangsan/: 权限不够
  19. #开放目录权限475
  20. [zhangsan@Master data]$ chmod 475 zhangsan
  21. [zhangsan@Master data]$ ll zhangsan/
  22. ls: 无法访问zhangsan/zhangsan.txt: 权限不够
  23. 总用量 0
  24. -????????? ? ? ? ? ? zhangsan.txt
  25. #把目录改为575权限
  26. [zhangsan@Master data]$ chmod 575 zhangsan/
  27. [zhangsan@Master data]$ ll -d zhangsan
  28. dr-xrwxr-x. 2 zhangsan zhangsan 4096 1月 7 06:59 zhangsan
  29. [zhangsan@Master data]$ cd zhangsan/
  30. [zhangsan@Master zhangsan]$ ls
  31. zhangsan.txt
  32. #把文件改为464
  33. [zhangsan@Master zhangsan]$ cat zhangsan.txt
  34. cat: zhangsan.txt: 权限不够
  35. [zhangsan@Master zhangsan]$ chmod 464 zhangsan.txt
  36. [zhangsan@Master zhangsan]$ cat zhangsan.txt
  37. #把文件赋予w权限
  38. [zhangsan@Master zhangsan]$ chmod 664 zhangsan.txt
  39. [zhangsan@Master zhangsan]$ ll zhangsan.txt
  40. -rw-rw-r--. 1 zhangsan zhangsan 0 1月 7 06:59 zhangsan.txt
  41. [zhangsan@Master zhangsan]$ echo 123 >> zhangsan.txt
  42. [zhangsan@Master zhangsan]$ ll zhangsan.txt
  43. -rw-rw-r--. 1 zhangsan zhangsan 4 1月 7 07:06 zhangsan.txt
  44. #但是不能删除文件
  45. [zhangsan@Master zhangsan]$ rm -rf zhangsan.txt
  46. rm: 无法删除"zhangsan.txt": 权限不够
  47. #开放上级目录的w权限
  48. [zhangsan@Master zhangsan]$ chmod 755 ../zhangsan/
  49. [zhangsan@Master zhangsan]$ ll -d ../zhangsan/
  50. drwxr-xr-x. 2 zhangsan zhangsan 4096 1月 7 06:59 ../zhangsan/
  51. [zhangsan@Master zhangsan]$ rm -rf zhangsan.txt

chown命令

作用:修改文件的所有者和所属组

语法:

chown 【选项】 所有者:所属组 文件名

选项:

-R:递归修改权限

所有者和所属组之间使用.也可以

  1. -rwxrwxrwx. 1 root root 1336 1月 1 21:33 test.passwd
  2. [root@Master data]# chown :lisi test.passwd
  3. [root@Master data]# ll test.passwd
  4. -rwxrwxrwx. 1 root lisi 1336 1月 1 21:33 test.passwd
  5. #修改所有者
  6. [root@Master data]# ll test.passwd
  7. -rwxrwxrwx. 1 zhangsan lisi 1336 1月 1 21:33 test.passwd
  8. #普通用户不能修改所有者和所属组,哪怕是属于它的文件
  9. [zhangsan@Master ~]$ chown lisi:lisi test
  10. chown: 正在更改"test" 的所有者: 不允许的操作

chgrp命令

作用:修改文件的所属组

语法:

chgrp “所有组” 文件名

  1. [root@Master data]# chgrp root test.passwd
  2. [root@Master data]# ll test.passwd
  3. -rwxrwxrwx. 1 zhangsan root 1336 1月 1 21:33 test.passwd

umask讲解

什么是umask?

为什么我们创建的文件默认是644?

问什么创建的目录默认的是755?

对于目录来说,w权限是最危险的

对于文件来说,x权限是最危险的

所以系统默认就定义了umask权限;

umask的计算方法:

文件的最大权限是666;umask值是022

“rw-rw-rw” 减去 ‘----w--w-’ 的得出:rw-r--r--

文件的最大权限是777;umask值是022

“rwxrwxrwx” 减去“----w--w-”得出:“rwxr-xr-x”

  1. #如果umask为042,则得出的文件或者目录默认的权限是多少?
  2. 文件:
  3. rw-rw-rw-减去---r---w- 得出: rw-w-r--
  4. 目录:
  5. rwxrwxrwx减去---r---w- 得出:rwx-wxr-x
  6. #定义
  7. [root@Master data]# vim /etc/profile
  8. ###########################
  9. if [ $UID -gt 199 ] && [ "`id -gn`" = "`id -un`" ]; then
  10. umask 002
  11. else
  12. umask 022
  13. fi
  14. 如果UID大于等于199 或者gid=uid,则umask为002
  15. 否则是022

umask命令

作用:查看系统的umask权限

语法:

umask

选项:

-S:用字母表示权限

  1. [root@Master data]# umask
  2. 0022
  3. [root@Master data]# umask -S
  4. u=rwx,g=rx,o=rx

三、结束

“人生的道路漫长而多彩。我学会在阳光中欢笑,在乌云中坚强。”

“在狂风中,我紧紧抓住我的希望。当我站在尽头回头看时,我走出了我生命中的一条路。”

“记忆就像倒入手掌的水。不管你把它摊开还是紧紧握住,它仍然会一滴一滴地从你的手指间流过。”

 

互勉~!

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/凡人多烦事01/article/detail/319493
推荐阅读
相关标签
  

闽ICP备14008679号