Linux服务器如何设置⽂件和⽂件夹的权限和所有者
修改⽂件和⽂件夹所有者和组
chgrp ⽤户名路径/⽂件名 -R
chown ⽤户名路径/⽂件名 -R
-R表⽰递归⽬录下所有⽂件
修改⽂件可读写属性
例如:把index.htm ⽂件修改为可写可读可执⾏:
chmod 777 index.htm
要修改⽬录下所有⽂件属性可写可读可执⾏:
chmod 777 *.*
该命令中可以使⽤ * 作为通配符。
⽐如:修改所有htm⽂件的属性:
修改文件权限的linux命令chmod 777 *.htm
修改⽂件夹属性的⽅法
把⽬录 /images/small 修改为可写可读可执⾏:
chmod 777 /images/small
修改⽬录下所有的⽂件夹属性:
chmod 777 *
把⽂件夹名称⽤ * 来代替就可以了。
要修改⽂件夹内所有的⽂件和⽂件夹及⼦⽂件夹属性为可写可读可执⾏:
chmod -R 777 /upload
总结 Linux 下⽂件和⽬录的权限区别:
⽂件:读⽂件内容(r)、写数据到⽂件(w)、作为命令执⾏⽂件(x)。
⽬录:读包含在⽬录中的⽂件名称(r)、写信息到⽬录中去(增加和删除索引点的链接)、搜索⽬录(能⽤该⽬录名称作为路径名去访问它所包含的⽂件和⼦⽬录)
具体说就是:
(1)有只读权限的⽤户不能⽤ cd 进⼊该⽬录,还必须有执⾏权限才能进⼊。
(2)有执⾏权限的⽤户只有在知道⽂件名,并拥有读权利的情况下才可以访问⽬录下的⽂件。
(3)必须有读和执⾏权限才可以 ls 列出⽬录清单,或使⽤ cd 命令进⼊⽬录。
(4)有⽬录的写权限,可以创建、删除或修改⽬录下的任何⽂件或⼦⽬录,即使使该⽂件或⼦⽬录属于其他⽤户也是如此。
查看⽬录权限
查看⽂件权限的语句,在终端输⼊:
ls - (是⽂件名)
那么就会出现相类似的信息,主要都是这些:
-rw-rw-r--
⼀共有10位数,其中:
最前⾯那个 - 代表的是类型
中间那三个 rw- 代表的是所有者(user)
然后那三个 rw- 代表的是组(group)
最后那三个 r-- 代表的是其他⼈(other)
这⾥再解释⼀下后⾯那9位数:
r 表⽰⽂件可以被读(read)
w 表⽰⽂件可以被写(write)
x 表⽰⽂件可以被执⾏(如果它是程序的话)
-
表⽰相应的权限还没有被授予
现在该说说修改⽂件权限了
在终端输⼊:
chmod o
表⽰给其他⼈授予写这个⽂件的权限
chmod
表⽰删除中组和其他⼈的读和写的权限
其中:
u 代表所有者(user)
g 代表所有者所在的组(group)
o 代表其他⼈,但不是u和g (other)
a 代表全部的⼈,也就是包括u,g和o
r 表⽰⽂件可以被读(read)
w 表⽰⽂件可以被写(write)
x 表⽰⽂件可以被执⾏(如果它是程序的话)
其中:rwx也可以⽤数字来代替
r ------------4
w ------------2
x ------------1
- ------------0
⾏动:
表⽰添加权限
-
表⽰删除权限
= 表⽰使之成为唯⼀的权限
当⼤家都明⽩了上⾯的东西之后,那么我们常见的以下的⼀些权限就很容易都明⽩了:-rw------- (600) 只有所有者才有读和写的权限
-rw-r--r-- (644) 只有所有者才有读和写的权限,组和其他⼈只有读的权限
-rwx------ (700) 只有所有者才有读,写,执⾏的权限
-rwxr-xr-x (755) 只有所有者才有读,写,执⾏的权限,组和其他⼈只有读和执⾏的权限
-rwx--x--x (711) 只有所有者才有读,写,执⾏的权限,组和其他⼈只有执⾏的权限
-rw-rw-rw- (666) 每个⼈都有读写的权限
-rwxrwxrwx (777) 每个⼈都有读写和执⾏的权限