20:16 test1
如果希望一次设置目录下所有文件的权限,可以用:
$chmod 664*
$ls -l
-rw-r--r-- 1 root 0 10月 19 20:16 test1
这将使文件属主和属组用户都具有读和写的权限,其他用户只具有读权限。
还可以通过使用- R选项连同子目录下的文件一起设置:
chmod -R 664 /temp/*
这样就可以一次将/ temp目录下的所有文件连同各个子目录下的文件的权限全部设置为文件属主和属组用户可读和写,其他用户只读。使用- R选项一定要谨慎,只有在需要改变目录树下全部文件权限时才可以使用。
目录
目录的权限位和文件有所不同。目录的读权限位意味着可以列出其中的内容。写权限位意味着可以在该目录中创建文件,如果不希望其他用户在你的目录中创建文件,可以取消相应的写权限位。执行权限位则意味着搜索和访问该目录.
r :可以列出该目录中的文件
w:可以在该目录中创建或删除文件
x:可以搜索或进入该目录
权限文件属主属组用户其他用户
drwx rwx r- x ( 775 ) 属主读、写、执行,属组读、写、执行,其它组读、执行
drwx r-x r- - ( 754 ) 属主读、写、执行,属组读、执行,其它组读
drwx r-x r- x ( 755 ) 属主读、写、执行,属组读、执行,其它组读、执行
如果把属组用户或其他用户针对某一目录的权限设置为- - x,那么他们将无法列出该目录中的文件。如果该目录中有一个执行位置位的脚本或程序,只要用户知道它的路径和文件名,仍然可以执行它。用户不能够进入该目录并不妨碍他的执行。
目录的权限将会覆盖该目录中文件的权限。例如,如果目录temp具有如下的权限:
drwxr--r-- 1 admin 0 10月 19 20:16 temp
而目录下的文件myfile的权限为:
-rwxrwxrwx 1 admin 0 10月 19 20:16 myfile
那么admin组的用户将无法编辑该文件,因为它所属的目录不具有这样的权限。
该文件对任何用户都可读,但由于它所在的目录并未给admin组的用户赋予执行权限,所以该组的用户都将无法访问该目录,他们将会得到“访问受限”的错 消息。
-rwxrwxrwx
9个权限位换成这样是不是更容易理解呢?
如:
-rwxrw-r-- 1 root admin 34890 10月 19 20:17 httpd.conf
前三位:rwx:它的所有者是root,即就是文件所有者,它对httpd.conf这个文件的权限是读写执行;
中间三位:rw-:表示admin组对这个文件的权限是读写
后面位:r--:就是即不是所有者,也不是属组的对文件的权限是读