linux命令--基本權限命令

1、權限介紹

使用ls命令查看時,發現長格式顯示的第一列就是文件的權限

權限位一共有 10 位,這 10 位權限位的含義以下圖所示。

  • 第 1 位表明文件類型。Linux 不像 Windows 使用擴展名錶示文件類型,而是使用權限位的第 1 位表示文件類型。雖然 Linux 文件的種類不像 Windows 中那麼多,可是分類也很多,詳細狀況 可使用「info ls」命令查看。
    「-」:普通文件。
    「b」:塊設備文件。這是一種特殊設備文件,存儲設備都是這種文件,如分區文件/dev/sda1 就是這種文件。
    「c」:字符設備文件。這也是特殊設備文件,輸入設備通常都是這種文件,如鼠標、鍵盤 等。
    「d」:目錄文件。Linux 中一切皆文件,因此目錄也是文件的一種。
    「l」:軟連接文件。
    「p」:管道符文件。這是一種很是少見的特殊設備文件。
    「s」:套接字文件。這也是一種特殊設備文件,一些服務支持 Socket 訪問,就會產生這樣的文件。
若是有字母,則表明擁有對應的權限;若是是「-」,則表明沒有對應的權限。
  • 第 2~4 位表明文件全部者的權限
    r:表明 read,是讀取權限。
    w:表明 write,是寫權限。
    x:表明 execute,是執行權限
  • 第 5~7 位表明文件所屬組的權限,一樣擁有「rx」權限。
  • 第 8~10 位表明其餘人的權限,一樣擁有「rx」權限

2、基本權限命令。

一、chmod,修改權限的命令 。

命令名稱:chmod。
英文原意:change file mode bits。
所在路徑:/bin/chmod。
執行權限:全部用戶。
功能描述:修改文件的權限模式算法

1.一、命令格式
chmod 選項 命令模式 文件...
-R:  遞歸設置權限,也就是給子目錄中的全部文件設定權限
1.二、權限模式

chmod 命令的權限模式的格式是「[ugoa][[+-=][perms]]」,也就是「[用戶身份][[賦予方式][權限]]」 的格式。vim

用戶身份。
  • u:表明全部者(user)。
  • g:表明所屬組(group)。
  • o:表明其餘人(other)。
  • a:表明所有身份(all)。安全

    賦予方式。
  • +:加入權限。
  • -:減去權限。
  • =:設置權限。服務器

    權限。
  • r:讀取權限(read)。
  • w:寫權限(write)。
  • x:執行權限(execute)。
    例如
chmod  o-w a.txt
#把a.txt針對其餘人寫權限移除。
1.三、數字權限

數字權限的賦予方式是最簡單的,可是不如以前的字母權限好記、直觀。
4:表明「r」權限。
2:表明「w」權限。
1:表明「x」權限。
例如less

chmod 644 a.txt 
# 爲a.txt 設置 rw-r--r-- 權限
1.4.經常使用權限

數字權限的賦予方式更加簡單,可是須要用戶對這幾個數字更加熟悉。其實經常使用權限也並很少,只有以下幾個。code

  • 644:這是文件的基本權限,表明全部者擁有讀、寫權限,而所屬組和其餘人擁有隻讀權限。
  • 755:這是文件的執行權限和目錄的基本權限,表明全部者擁有讀、寫和執行權限,而所屬組和其餘人擁有讀和執行權限。
  • 777:這是最大權限。在實際的生產服務器中,要盡力避免給文件或目錄賦予這樣的權限,這會形成必定的安全隱患。

3、基本權限的做用

3.一、權限含義的解釋 首先,讀、寫、執行權限對文件和目錄的做用是不一樣的
權限對文件的做用。
  • 讀(r):對文件有讀(r)權限,表明能夠讀取文件中的數據。若是把權限對應到命令上,那麼一旦對文件有讀(r)權限,就能夠對文件執行 cat、more、less、head、tail 等文件查看命令。
  • 寫(w):對文件有寫(w)權限,表明能夠修改文件中的數據。若是把權限對應到命令上,那麼一旦對文件有寫(w)權限,就能夠對文件執行 vim、echo 等修改文件數據的命令。注 意:對文件有寫權限,是不能刪除文件自己的,只能修改文件中的數據。若是要想刪除文件, 則須要對文件的上級目錄擁有寫權限。
  • 執行(x):對文件有執行(x)權限,表明文件擁有了執行權限,能夠運行。在 Linux 中,只要文件有執行(x)權限,這個文件就是執行文件了。只是這個文件到底能不能正確執行, 不只須要執行(x)權限,還要看文件中的代碼是否是正確的語言代碼。對文件來講,執行(x)權限是最高權限。blog

    權限對目錄的做用。
  • 讀(r):對目錄有讀(r)權限,表明能夠查看目錄下的內容,也就是能夠查看目錄下有哪些子文件和子目錄。若是把權限對應到命令上,那麼一旦對目錄擁有了讀(r)權限,就可 以在目錄下執行 ls 命令,查看目錄下的內容了。
  • 寫(w):對目錄有寫(r)權限,表明能夠修改目錄下的數據,也就是能夠在目錄中新建、 刪除、複製、剪切子文件或子目錄。若是把權限對應到命令上,那麼一旦對目錄擁有了寫(w) 權限,就能夠在目錄下執行 touch、rm、cp、mv 命令。對目錄來講,寫(w)權限是最高權限。
  • 執行(x):目錄是不能運行的,那麼對目錄擁有執行(x)權限,表明能夠進入目錄。若是 把權限對應到命令上,那麼一旦對目錄擁有了執行(x)權限,就能夠對目錄執行 cd 命令,進入目錄。遞歸

    3.二、目錄的可用權限 目錄的可用權限其實只有如下幾個。
  • 0:任何權限都不賦予。
  • 5:基本的目錄瀏覽和進入權限。
  • 7:徹底權限。ip

4、全部者和所屬組命令

4.一、chown 命令

chown 是修改文件和目錄的全部者和所屬組的命令,
命令名稱:chown。
英文原意:change file owner and group。
所在路徑:/bin/chown。
執行權限:全部用戶。
功能描述:修改文件和目錄的全部者和所屬組。it

命令格式
[root@love2 ~]# chown [選項] 全部者:所屬組 文件或目錄 
-R:  遞歸設置權限,也就是給子目錄中的全部文件設置權限
4.2.chgrp 命令 chgrp 是修改文件和目錄的所屬組的命令

命令名稱:chgrp。
英文原意:change group ownership。
所在路徑:/bin/chgrp。
執行權限:全部用戶。
功能描述:修改文件和目錄的所屬組

命令格式
[root@love2 ~]# chgrp [選項] 組名 文件或目錄 
-R:  遞歸設置權限,也就是給子目錄中的全部文件設置權限

5、umask 默認權限

當咱們登陸系統以後建立一個文件或者目錄老是有一個默認權限的,那麼這個權限是怎麼來的呢?這就是umask乾的事情。umask設置了用戶建立文件的默認 權限,它與chmod的效果恰好相反 。

5.1查看umask權限。
# 用八進制數值顯示 umask權限
[root@love2 ~]# umask
0022

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

#設置umask值
umask 033
5.2 umask 權限的計算方法 咱們須要先了解一下新建文件和目錄的默認最大權限。
  • 對文件來說,新建文件的默認最大權限是 666,沒有執行(x)權限。這是由於執行權限對文件 來說比較危險,不能在新建文件的時候默認賦予,而必須經過用戶手工賦予

  • 對目錄來說,新建目錄的默認最大權限是 777。這是由於對目錄而言,執行(x)權限僅僅表明 進入目錄,因此即便創建新文件時直接默認賦予,也沒有什麼危險。
    按照官方的標準算法,umask 默認權限須要使用二進制進行邏輯與和邏輯非聯合運算才能夠獲得正確的新建文件和目錄的默認權限。這種方法既很差計算,也很差理解,
    因此這裏仍是按照權限字母來說解 umask 權限的計算方法。咱們就按照默認的 umask 值是 022 來分別計算一下新建文件和目錄的默認權限吧。
  • 文件的默認權限最大隻能是 666,而 umask 的值是 022
    「-rw-rw-rw-」減去 「-----w--w-」等於「-rw-r--r—」
  • 目錄的默認權限最大能夠是 777,而 umask 的值是 022
    「drwxrwxrwx」減去「d----w--w-」等於「drwx-r-xr-x」

注意:umask 默認權限的計算毫不是數字直接相減。
例如 umask 是 033

  • 文件的默認權限最大隻能是 666,而 umask 的值是 033
    「-rw-rw-rw-」減去「-----wx-wx」等於「-rw-r--r—」
  • 目錄的默認權限最大能夠是 777,而 umask 的值是 033 「drwxrwxrwx」減去「d----wx-wx」等於「drwx-r--r--」
相關文章
相關標籤/搜索