Linux文件权限
Linux文件权限的表示是10个字符。如下:
-rw-rw-r-x: 文件所有者与同组用户对文件具有读写的权限,而其他用户仅具有读取和执行的权限。
drwx–x–x: 目录所有者具有读写与进入目录的权限,其他用户近能进入该目录,却无法读取任何数据。两种权限对象
第一个字符,标识权限对象是文件还是目录。
- ‘-‘,表示文件
- ‘d’,表示是目录
三种用户类型
第2-10的字符,表示3组权限。依次是:
- 所有者,创建文件的用户
- 用户组,用户所在用户组的成员
- 其他用户,系统内的其他所有用户
三种用户权限
每一组权限都有3个字母组成,分别代表读、写和执行。
- r,read,对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权
- w,write,对文件而言,具有新增、修改文件内容的权限;对目录来说,具有删除、移动目录内文件的权限。
- x,execute,对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限
数字表示权限
除了字符,还有数字也可以用来表示权限,3组权限9个字母只用3个数字。
- 0,对应-,表示没有权限。即000
- 1,对应x,表示执行权限。即001
- 2,对应w,表示写权限。即010
- 4,对应r,表示读权限.即100
这样表示的原因是,将rwx对应的3位,如果有就是1,没有就是0,这样的二进制表示。如上所示。
而这样,只需要0-7的3个数字就可以把3个字母的权限完整的表示出来。
开头的例子,其权限数字表示第一个就是665,第二个就是711.
改变权限
使用chmod和数字改变文件或目录的访问权限。比如修改文件
chmod 664 a.txt
即是改变a.txt的权限为-rw-rw-1–.很明显,权限全开就是777,全闭就是000.
改变目录的权限如下:
- chmod 777 /home/user 仅把/home/user目录的权限设置为rwxrwxrw
- chmod -R 777 /home/user 表示将整个/home/user目录与其中的文件和子目录的权限都设置为rwxrwxrwx
修改拥有者
change owner,简称chown。语法如下:
- chown [-R] 账号名称 文件/目录
- chown [-R] 账号名称:组群 文件/目录
修改组群
change group,简称chgrp。语法如下:
chgrp 组群 文件名/目录