文件權限問題彙總-Linux/Unix系統文件權限解析

使用命令ls -l或者ll時,會出現以下結果:

文件屬性   文件個數  所屬用戶 所屬組   文件大小   文件日期    文件名
drwxrwxr-x   2        userA    groupA   4096     Apr 11 2017  testDir
-rw-rw-r--    1         userA    gorupA    72       Apr 11 15:00  testFile

一、文件屬性

  d/l/-                                                                 rwx          rwx        r-x
  d代表目錄,l代表連接文件,-代表文件       擁有者權限   組權限      其它用戶權限

  第1個字符代表是否可讀,r代表是,-代表否;
  第2個字符代表是否可寫,w代表是,-代表否;
  第3個字符代表是否可執行,x代表是,-代表否。
  用數字表達,r代表4,w代表2,x代表1,加起來就是7,0-7之內的不同數字代表不同的含義,如0表示沒有任何權限,5表示4+1,就是r-x,這也是大多數目錄對其他用戶的權限。

二、改變文件權限(簡單講解):

      chmod [-R]... MODE[,MODE] ... FILE...
      chmod [-R]... OCTAL-MODE FILE...

注:只有文件所有者或者root才能執行這個命令。

-R:作用於所有子文件(子目錄)

MODE格式:[ugoa]*[+-=]([rwxXst]*|[ugo]))+

u:擁有者權限。
g:組權限。
o:其它用戶權限。
a:ugo,所有用戶權限。

r:讀權限。
w:寫權限。
x:執行權限。

例子:

1、mkdir testDir

drwxrwxr-x   2   userA    groupA   4096   Apr 11 15:00  testDir

默認權限爲775,默認擁有者爲當前用戶,默認組爲當前用戶所屬的組。

2、echo "test" > testDir/testFile

-rw-rw-r--   1   userA    groupA   5   Apr 11 15:00  testFile

3、chmod ugo-rwx testDir或者chmod a-rwx testDir或者chmod 000 testDir

d---------   2   userA    groupA   4096   Apr 11 15:00  testDir

4、chmod ugo+rwx testDir或者chmod a+rwx testDir或者chmod 777 testDir

drwxrwxrwx   2   userA    groupA   4096   Apr 11 15:00  testDir

5、chmod u+rw,g-w,o-x testDir或者chmod 756 testDir

drwxr-xrw-   2   userA    groupA   4096   Apr 11 15:00  testDir

6、chmod +w testDir(默認不會給其他用戶啓用或者禁用w的權限)

drwxrwxrw-   2   userA    groupA   4096   Apr 11 15:00  testDir

三、rwx權限具體的作用:

1、目錄:

r權限:控制訪問和刪除。去掉r權限,可以cd到該目錄,只能操作子文件。

如ls -a testDir 報Permission denied錯誤,rm -fr testDir報Permission denied錯誤。
ls -a testDir/testFile正常,cat testDir/testFile正常。子文件和子目錄可以隨意操作。

 w權限:控制新建和刪除子文件和子目錄,不影響子目錄內的目錄和文件。

 x權限:除了刪除當前目錄(如果有子文件或者子目錄則不能刪除),控制任何操作(cd/ll/cat/rm)(包括子目錄和子文件,以及子目錄裏面的所有操作)。

2、文件:

 r權限:控制讀取(cat/vi)。
 w權限:控制編輯。
 x權限:控制執行(./)。

四、所屬用戶/所屬組更改

注:只有root用戶才能執行這個命令。

chown 所屬用戶:所屬組 目錄名/文件名
chown 所屬用戶 目錄名/文件名

-R:作用於所有子文件(子目錄)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章