Linux中经常遇到permission denied,此意为没有权限
要用到chmod添加权限
首先看一下文件类型:
如图中看到的第一位表示文件类型,具体类型:
1.普通文本:以[-]表示,其中包括:
①纯文本档(ASCII)
②二进制文件(binary)
③数据格式文件(data)
2.目录(directory): 第一个字符为[ d ]
3.连接文件(link)第⼀一个字符为[ l ]
4.设备和设备文件,包括
①块设备文件,即一些存储文件,如硬盘、软盘等,第一个字符为 [ b ]
②字符设备文件,即一些串行端口的接口文件,如键盘、鼠标等, 第一个字符为[ c ]
5.套接字(sockets)第一个字符为[ s ] 。还被称为数据接口文件,这种类型的文件通常被用在网络上的数 据连接。我们可以启动一个程序来监听客户端的请求,而客户端就 可以通过数据接口文件来进行数据通信。
6.管道(FIFO,pipe)第一个字符为[ p ]
文件类型后面为9位可以分为三组:
第一组:rwx或者rw-,第二组:rwx或者rw-,第三组:r-x或者r--
在linux中,第一组称为拥有者,第二组称为所属组,第三组称为其他用户。即就是:
文件访问者的分类(人) a)文件和文件目录的所有者:u---User
一般为文件的创建者,谁创建了该文件,就天然的成为该文件的所有者
用ls ‐ahl命令可以看到文件的所有者
也可以使用chown 用户名 文件名来修改文件的所有者
b)文件和文件目录的所有者所在的组的用户:g---Group
· 当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组
用ls ‐ahl命令可以看到文件的所有组
也可以使用chgrp 组名 文件名来修改文件所在的组
c)其它用户:o---Others
除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组
每个权限部分可选字符选项如下:
r: read对文件而言,具有读取文件内容的权限;对目录来说,具有浏览该目录信息的权限。
w:write对文件而言,具有修改文件内容的权限;对目录来说具有删除移动目录内文件的权限。
S:set如果在所有者权限部分,表示该文件不能被执行和设置为set-user-ID模式。如果在组权限部分,表示该文件不能被执行和设置为set-group-ID模式。
s:如果该字符在所有者权限部分,表示该文件可执行和设置为set-user-ID模式。如果设置在组权限部分,表示该文件可执行和设置为set-group-ID模式。
x:execute对⽂文件⽽而⾔言,具有执⾏行⽂文件的权限; 对⺫⽬目录来说,具有进⼊入⺫⽬目录的权限
-:无某(读,写,执行,setuid等)权限
以下两个字符只能用在第三部分其他人权限部分:
T 沾滞位设置(1000模式),但不能执行或者搜索。
t 沾滞位设置(1000模式),并可以执行或搜索。(该字符较常见一般用于授予目录,作用为任何人可以在该目录中创建文件,但是该文件只有创建者可删除。见/tmp目录权限)
文件访问权限的相关设置方法 :
a)chmod
功能:设置文件的访问权限
格式:chmod [参数] 权限文件名
参数:R -> 递归修改目录文件的权限
V -> 显示指令执行过程、
reference=<参考文件或目录>:把指定文件或目录的权限全部设成与参考文件或目录的权限相同。
说明:只有文件的拥有者和root才可以改变文件的权限
chmod命令权限值的格式 :① 用户表示符+/-=权限字符
+ 向权限范围增加权限代号所表⽰示的权限
- 向权限范围取消权限代号所表⽰示的权限
= 向权限范围赋予权限代号所表⽰示的权限
用户符号:u 拥有者
g 拥有者同组用户 o 其它⽤用户
a 所有用户
b)chown
功能:修改文件的拥有者
格式:chown [参数] 用户名 文件名
c)chgrp
功能:修改文件或目录的所属组
格式:chgrp [参数] 用户组名 文件名
参数:-R 递归修改文件或目录的所属组
d)umask
功能:查看或修改文件掩码
新建文件夹默认权限=0666-权限掩码
新建目录默认权限=0777-权限掩码
格式:umask 权限值
说明: 将现有的存取权限减去权限掩码后,即可产生建立文件时预设权限。
超级用户默认掩码值为0022,普通用户默认为0002。
---------------------
作者:摩天轮的思念
来源:优快云
原文:https://blog.youkuaiyun.com/qq_36221862/article/details/56012469
版权声明:本文为博主原创文章,转载请附上博文链接!
上面读写等权限以8进制表示如下:
444 r--r--r--
600 rw-------
644 rw-r--r--
666 rw-rw-rw-
700 rwx------
744 rwxr--r--
755 rwxr-xr-x
777 rwxrwxrwx
从左至右,1-3位数字代表文件所有者的权限,4-6位数字代表同组用户的权限,7-9数字代表其他用户的权限。
而具体的权限是由数字来表示的,读取的权限等于4,用r表示;写入的权限等于2,用w表示;执行的权限等于1,用x表示;
通过4、2、1的组合,得到以下几种权限:0(没有权限);4(读取权限);5(4+1 | 读取+执行);6(4+2 | 读取+写入);7(4+2+1 | 读取+写入+执行)
以755为例:
1-3位7等于4+2+1,rwx,所有者具有读取、写入、执行权限;
4-6位5等于4+1+0,r-x,同组用户具有读取、执行权限但没有写入权限;
7-9位5,同上,也是r-x,其他用户具有读取、执行权限但没有写入权限。
rwx权限数字解释
chmod也可以用数字来表示权限如 chmod 777 file
语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。
r=4,w=2,x=1
若要rwx属性则4+2+1=7;
若要rw-属性则4+2=6;
若要r-x属性则4+1=7。
范例:
chmod a=rwx file
和
chmod 777 file
效果相同
chmod ug=rwx,o=x file
和
chmod 771 file
效果相同
若用chmod 4755 filename可使此程序具有root的权限