Linux中可以用 ll ls -l 来显示一个文件的属性以及所属的用户和组
属性有十位(0-9)
如 dr-xr-xr-x
第一个字符代表这个文件的类型 :
d :目录 / -:文件/ l:链接文档/ b:装置文件里可供储存的接口设备/c:装置文件里的串行端口设备(如键鼠)
接下来的字符,三位一组,均为 r(read)w(write)x(execute) 三个参数的组合。位置不变,没权限就显示 -
对于文件来说,它都有一个特定的所有者,也就是对该文件具有所有权的用户。
同时,在Linux系统中,用户是按组分类的,一个用户属于一个或多个组。
文件所有者以外的用户又可以分为文件所有者的同组用户和其他用户。
因此,Linux系统按文件所有者、文件所有者同组用户和其他用户来规定了不同的文件访问权限。
对于root用户来说,一般情况下,文件的权限对其不起作用。
更改文件属性
1、更改文件属组
chgrp [-R] 属组名 文件名
- -R:递归更改文件属组,就是在更改某个目录文件的属组时,如果加上-R的参数,那么该目录下的所有文件的属组都会更改。
2、更改文件属主,也可以同时更改属组
chown [-R] 属主名 文件名
chown [-R] 属主名:属组名 文件名
举例:将/root 目录下的install.log 的拥有者改为bin这个账号,在将这个文件的拥有者和群组改为root
cd ~/chown bin install.log /chown root:root intall.log
3、更改文件9个属性(三个rwx),两种方法:数字和符号
用数字代表各个权限(r:4 w:2 x:1 -:0 )
举例:一个文件的权限为 -rwxrwx--- 权限数字则是 7 7 0(各自权限的分值相加)
语法:chmod [-R] xyz 文件/目录
xyz:权限数字
-R : 联通次目录下的所有文件都会变更
举例:chmod 777 .bashrc(将.bashrc属性改为 -rwxrwxrwx)
用符号代表各个权限
u:user g:group o:others a:all
chmod | u g o a | +(加入) -(除去) =(设定) | r w x | 文件或目录 |
举例:将文件权限设置为 -rwxr-xr--
chmod u=rwx,g=rx,o=r 文件名
去除所有人读取权限而不改变其他权限
chmod a-r 文件名(--wx--x---)