1. 程式人生 > >Linux文件權限設置

Linux文件權限設置

不同 pre chang 基本權限 nbsp solid rwx權限 pan --

在linux中,為了數據的安全性,權限控制是十分重要的,在這裏面可以細分成兩個部分來理解他

權限定義

linux每一個用戶都屬於一個組,不能獨立於組外。linux的文件權限需要定義三個實體對它的權限

  • 文件所有者
  • 文件所在組
  • 其他組

所有者

一般為文件的創建者,誰創建了該文件,就天然的成為該文件的所有者

可以使用chown【change owner】 用戶名 文件名來修改文件的所有者,例如更改error.log的所有者為enoch

chown enoch error.log #更改error.log的所有者為enoch

chown enoch:home error.log #更改error.log的所有者和用戶組為enoch與home

chown .home error.log #更改error.log的用戶組為home #在所有者和用戶組中使用“.”也可以,但是由於很多用戶喜歡使用小數點,可能造成系統誤判,所以建議使用":"

所在組

當用戶創建了一個文件後,這個文件的所在組就是該用戶所在的用戶組

可以使用chgrp【change group】來改變文件的所在組

chgrp home error.log #修改文件的所在組為home

其他組

除開所在組之外的其他組均為其他組

權限說明

當我們使用命令 ls -l 時候就會顯示出改文件或者文件夾相對應的權限

drwx------ 2 www  www  4096
May 5 19:35 www drwxrwxrwx 2 root root 4096 May 5 16:51 wwwlogs drwxr-xr-x 3 root root 4096 Jul 4 20:45 wwwroot

第一列規定了文件權限說明,共由十個字符分成四個部分,用www目錄來說

[d] [rwx] [---] [---]

1 234 567 890

1:代表這個文件是目錄還是文件名其中d代表目錄,如果是文件則為-,更多的文件信息如下

    d  目錄文件。
    l  符號鏈接(指向另一個文件,類似於瘟下的快捷方式)。
    s  套接字文件。
    b  塊設備文件,二進制文件。
    c  字符設備文件。
    p  命名管道文件。

234:文件所有者的權限,rwx及為可讀可寫可執行

r(Read,讀取):對文件而言,具有讀取文件內容的權限;對目錄來說,具有瀏覽目錄的權限。
w(Write,寫入):對文件而言,具有新增,修改,刪除文件內容的權限(不包含刪除該文件);對目錄來說,具有新建,刪除,修改,移動目錄內文件的權限(不論該文件的權限為何都可以進行刪除操作)。
x(Execute,執行):對文件而言,具有執行文件的權限;對目錄了來說該用戶具有進入目錄的權限(能否使用cd命令進入該目錄)。

567:文件所有組的權限,---代表沒有任何權限

890:除開所有者與所有組以外用戶的權限,此處沒有任何權限

修改權限

修改權限的命令是chmod,而改變權限的方式分為兩種

1.數字改變權限法

Linux的文件基本權限只有九個,分別是onwer,group,other三種身份,所以我們可以用數字來代表權限,其中

r : 4
w : 2
x : 1

每種身份設置權限為數字的累加,比如將error.log文件設置成所有人都有RWX權限,則

chmod 777 error.log

因為[-rwxrwxrwx]實際上是[4+2+1][4+2+1][4+2+1]也就是777了。如果我們將權限變為[-rwxr-xr--]則[4+2+1][4+0+1][4+0+0]即為754

技術分享圖片

2.符號改變法

符號改變法實際上就是對不同實體設置權限,其中我們只要懂的三個部分的含義就可以

chmod u +(加入) 文件或目錄
g =(設置)
o
a -(除去)

舉幾個例子來說明吧,設置用戶對error.log有rwx權限,所在組和其他組有rx權限。

chmod  u=rwx,go=rx  error.log

設置用戶對error.log有rwx權限,所在組有rx權限,其他組有r權限

chmod u=rwx,g=rx,o=r error.log

出去所有用戶的可執行權限

chmod a-x error.log

權限的區別

Linux文件權限設置