linux文件权限设置
Linux 权限设置
权限说明
在Linux系统中,每一位用户都有对文件或目录的读取、写入和执行权限
用"ls -l"命令可以显示文件的详细信息,其中包括权限,如下所示:
root@ubuntu~]# ls -l /root
total 96
-rw-------. 1 root root 2623 Jun 2 2014 anaconda-ks.cfg
drwxr-xr-x. 2 root root 4096 Jun 3 2014 Desktop
drwxr-xr-x. 2 root root 4096 Jun 2 2014 Documents
drwxr-xr-x. 2 root root 4096 Jun 2 2014 Downloads
-rw-r--r--. 1 root root 40730 Jun 2 2014 install.log
-rw-r--r--. 1 root root 9272 Jun 2 2014 install.log.syslog
第一个字符一搬用来区分文件的类型,详细类型如下
代表字符 | 文件类型 | |
---|---|---|
d | 文件目录,目录属于特殊的文件 | |
- | 普通文件 | |
L | 链接文件,实际上它指向另一个文件 | |
B | 表示块设备文件 | |
C | 表示字符设备文件 | |
P | 表示管道文件 |
第2~10个字符当中的每3个为一组
-
左边3个字符表示所有者权限
-
中间3个字符表示与所有者同一组的用户的权限
- 右边3个字符是其他用户的权限
(1) r (读取):对文件而言,该用户具有读取文件内容的权限;对目录来说,该用户具有浏览目录的权限。
(2) w (写入):对文件而言,该用户具有新增、修改文件内容的权限;对目录来说,该用户具有删除、移动目录内文件的权限。
(3) X (执行):对文件而言,该用户具有执行的权限;对目录来说,该用户具有进入目录的权限。
(4) - 表示不具有该项权限。
权限修改
如果需要修改权限可以通过chmod
命令来改变文件或目录权限的命令,但是只有文件的属主和超级用户root才能执行这个命令。有两种模式,一种是采用权限字母和操作符表达式;另一种是采用数字
字母操作符表达模式
u掉表用户权限、g代表用户组权限、O代表其它用户权限、a所有用户权限
权限变更字符:[+]增加权限、[-]取消权限、[=]唯一设定权限,通过组合模式进行权限修改取消操作。
chmod a=rwx 123.txt
赋予所有用户 123.txt 文件,读写执行等权限
chmod ugo+r file1.txt
chmod a+r file1.txt
将文件 file1.txt 设为所有人皆可读取 :
数字模式
[r]可读权限数字代表为4、[w]可写权限数字代表为2、[x]可执行权限数字代表为1。
通过每种身份(owner/group/others)各自的三个权限位(r/w/x)权限数字代表进行累加来修改权限
chmod 777 filename
设置所有用户,读写执行权限
同类型参数:777
表示 rwxrwxrwx (777) 所有用户都有读、写、执行权限
同类型参数:
参数名 数字 解释
rw 600 只有拥有者有读写权限
rw-r--r 644 只有拥有者有读写权限;而属组用户和其他用户只有读权限
rwx 700 只有拥有者有读、写、执行权限
rwxr-xr-x 755 拥有者有读、写、执行权限;而属组用户和其他用户只有读、执行权限
rwx--x--x 711 拥有者有读、写、执行权限;而属组用户和其他用户只有执行权限
rw-rw-rw 666 所有用户都有文件读、写权限
rwxrwxrwx 777 所有用户都有读、写、执行权限
常用命令
递归设置所有用户,读写执行权限
chmod -R 777 xxx