鍵盤俠Linux教程(五)| 基本權限管理

基本權限管理

權限的介紹

權限位的含義

前面講解ls命令時,我們已經知道長格式显示的第一列就是文件的權限,例如:

[root@es ~]# ls -l anaconda-ks.cfg
-rw-------. 1 root root 1573 May 18 23:28 anaconda-ks.cfg

第一位為文件類型

文件類型標識 文件類型
普通文件
d 目錄文件
l 軟鏈接文件
s(偽文件) 套接字文件
b(偽文件) 塊設備文件
c(偽文件) 字符設備文件
p(偽文件) 管道符文件

第一列的權限位如果不計算最後的 “.” (這個點的含義我們在後面解釋),則共有10位,這10位權限位的含義如圖所示。

基本權限介紹

修改權限的命令 chmod ,基本信息如下

命令格式

[root@es ~]#chmod [選項] 權限模式 文件名

選項:

-R : 遞歸設置權限,也就是給子目錄中的所有文件設定權限

權限模式

chmod 命令的權限模式的格式時”[ugoa][[+-=][perms]]”,也就是“[用戶身份][[賦予方式][權限]]”的格式

  • 用戶身份:

    • u:代表所有者(user)

    • g:代表所屬組(group)

    • o:代表其他人(other)

    • a:代表全部身份(all)

  • 賦予方式:

    • +:加入權限

    • -:減去權限

    • =:設置權限

  • 權限:

    • -r:讀取權限(read)

    • -w:寫權限(write)

    • -x:執行權限(execute)

数字權限

数字權限的賦予方式是最簡單的,但是不如之前的字母權限好記,直觀。我們來看看這些数字權限的含義。

  • 4:代表”r”權限

  • 2:代表”w”權限

  • 1:代表”x”權限

常用權限

数字權限的賦予方式更加簡單,但是需要用戶對這幾個数字更加熟悉。其實常用權限也並不多,只有如下幾個。

  • 644:這是文件的基本權限,代表所有者擁有讀,寫權限,而所屬組和其他人擁有隻讀權限。

  • 755:這是文件的執行權限和目錄的基本權限,代表所有者擁有讀,寫和執行權限,而所屬組和其他人擁有讀和執行權限。

  • 777:這時最大權限。在實際的生產服務器中,要儘力避免給文件或目錄賦予這樣的權限,這會造成一定的安全隱患。

基本權限的作用

權限含義的解釋

首先,讀,寫,執行權限對文件和目錄的作用是不同的。

  • 權限對文件的作用

    • 讀(r):對文件有讀(r)權限,代表可以讀取文件中的數據。如果把權限對應到命令上,那麼一旦對文件有讀(r)權限,就可以對文件執行cat,more,less,head,tail等文件查看命令。

    • 寫(w):對文件有寫(w)權限,代表可以修改文件中的數據。如果把權限對應到命令上,那麼一旦對文件有寫(w)權限,就可以對文件執行vim,echo等修改文件數據的命令。注意:對文件有寫權限,是不能刪除文件本身的,只能修改文件中的數據。如果要想刪除文件,則需要對文件的上級目錄擁有寫權限。

    • 執行(x):對文件有執行(x)權限,代表文件擁有了執行權限,可以運行。在Linux中,只要文件有執行(x)權限,這個文件就是執行文件了。只是這個文件到底能不能正確執行,不僅需要執行(x)權限,還要看文件中代碼是不是正確的語言代碼。文件夾來說,執行(x)權限是最高權限。

  • 權限對目錄的作用

    • 讀(r):對目錄有讀(r)權限,代表可以查看目錄下的內容,也就是可以查看目錄下有哪些子文件和子目錄。如果把權限對應到命令上,那麼一旦對目錄擁有了讀(r)權限,就可以在目錄下執行ls命令,查看目錄下的內容

    • 寫(w):對目錄有寫(r)權限,代表可以修改目錄下的數據,也就是可以在目錄中新建,刪除,複製,剪切子文件或子目錄。如果把權限對應到命令上,那麼一旦目錄擁有了寫(w)權限,就可以在目錄下執行touch,rm,cp,mv命令。對目錄來說寫(w)權限是最高權限。

    • 執行(x):目錄是不能運行的,那麼對目錄擁有執行(x)權限,代表可以進入到目錄。如果把權限對應到命令上,那麼一旦對目錄擁有了執行(x)權限,就可以對目錄執行cd命令,進入目錄。

目錄的可用權限

目錄的可用權限其實有以下幾個

  • 0:任何權限都不賦予

  • 5:基本的目錄瀏覽和進入權限

  • 7:完全權限

所有者和所屬組命令

chown命令

修改權限的命令 chown ,基本信息如下

[root@es ~]#chown [選項] 所有者:所屬組 文件或目錄

選項:

-R : 遞歸設置權限,也就是給子目錄中的所有文件設定權限

普通用戶不能修改文件的所有者,哪怕自己是這個文件的所有者也不行,只有超級用戶才能修改
普通用戶可以修改所有者是自己的文件的權限=

umask 默認權限

查看系統的umask權限

#用八進制數值显示umask權限
[root@centos7 ~]# umask
0022

#用字母表示文件和目錄的初始權限
[root@centos7 ~]# umask -S
u=rwx,g=rx,o=rx

umask權限的計算方法

我們需要先了解一下新建文件和目錄的默認最大權限

  • 對文件來講,新建文件的默認最大權限是666,沒有執行(x)權限。這時因為執行權限對文件來講比較危險,不能在新建文件的時候默認賦予,而必須通過用戶手工賦予。

  • 文件的默認權限最大隻能是666,而umask的值是022
    “-rw-rw-rw-“減去”—–w–w-” 等於”-rw-r–r–“

  • 對目錄來講,新建文件的默認最大權限是777。這時因為對目錄而言,執行(x)權限僅僅代表進入目錄,所以即使建立新文件時直接默認賦予,也沒有什麼危險。

  • 目錄的權人權限最大隻能是777,而umask的值是022

“drwxrwxrwx” 減去 “d—-w–w-” 等於 “drwx-r-xr-x”

寫在最後

如果文檔對你有幫助的話,留個贊再走吧 ,你的點擊是我的最大動力。

我是鍵盤俠,現實中我唯唯諾諾,網絡上我重拳出擊,關注我,持續更新Linux乾貨教程。

更多鍵盤俠Linux系列教程:鏈接地址

更多Linux乾貨教程請掃:

本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

【其他文章推薦】

網頁設計公司推薦不同的風格,搶佔消費者視覺第一線

※廣告預算用在刀口上,台北網頁設計公司幫您達到更多曝光效益

※自行創業缺乏曝光? 網頁設計幫您第一時間規劃公司的形象門面

南投搬家公司費用需注意的眉眉角角,別等搬了再說!

※教你寫出一流的銷售文案?

您可能也會喜歡…