Linux:文件和用目录权限基础

首先,用ls -i 查看文件的信息:

红框框起来的部分:-rw-r--r-- 一共是10位,第一位表示文件类型,-表示文件,d表示文件夹/目录;后面9位则表示权限

其中前三位是该文件/目录所属者的权限,中间三位是该文件/目录所属组的权限,最后三位是其他用户权限

权限用rwx表示:

r表示读;如果是目录,则只能浏览目录就目录下结构,即ls,不能进入目录,即cd

w表示新增修改(不包含删除,删除受上级目录权限控制);如果是目录,可增加。修改。删除目录内文件名的权限(不是文件内容)。但是需要x权限,只能先cd进去,才能操作

x表示执行,但同时也得有r,否则也执行不了。但是对于root用户不需要x权限也能执行,如果是目录,就是cd

权限的修改用chmod命令,可用数字表示法或者字符表示法。数字表示法则是根据计算机的二进制进行换算的。三位rwx分别用0和1代替,又这个权限则为1,没有则为0,这样算下来,如果rwx都有,则是111,即7;只有r_x则是101,即5;以此类推

一、chmod改变用户权限

数字表示法:

chmod 777 ./a.txt   给文件a.txt赋予777权限,相当于rwxrwxrwx,即对于这个文件,拥有者、所属组、其他用户都可对他进行读、写、执行操作

chmod 555 ./a.txt  给文件a.txt赋予555权限,相当于r_xr_xr_x,即对于这个文件,拥有者、所属组、其他用户都可对他进行读、执行操作,不能进行写操作

字符表示法:

字符表示法中,所属者为a.所属组为g,其他用户为o,所有人为a

chmod u+x,o+w  ./a.txt    给文件的所属者增加x权限,给其他用户增加w权限

chmod u-x,g+w,o-x  ./a.txt   为文件的所属者去掉x权限,给所属组增加w权限,给其他用户去掉x权限

chmod  u=rwx,g=wx  ./a.txt  给文件的所属者更新权限为rw,给所属组更新权限为wx

-R参数,递归修改

二、chown该表用户属组

chown  用户  文件或目录     更改文件或目录的所属用户

chown :组  文件或目录(冒号也可以写成点.)  更改文件或目录的所属组,也可以写成chgrp  组  文件或目录

chown 用户:组 文件或目录(冒号也可以写成点.)  更改文件或目录的所属用户和组

-R参数,递归修改

文件的属性都放在inode中,文件名放在上级目录的block中

删除文件的时候,删的是文件名,文件名在上级目录的block中放着,指向上级目录的inode(属性信息放在inode中,属性信息包括权限),所以删除的时候要看上级目录的相应权限

 3、默认权限umask

root默认的umask是022

root用户:

文件夹的权限默认是755

文件的权限默认是644

普通用户:

文件夹的权限默认是775 

文件的权限默认是664

原文地址:https://www.cnblogs.com/bendouyao/p/10072020.html