Linux 文件權(quán)限命令

一、Linux權(quán)限介紹

在linux中的每一個文件或目錄都包含有訪問權(quán)限,這些訪問權(quán)限決定了誰能訪問和如何訪問這些文件和目錄。用戶可以利用Linux系統(tǒng)提供的chmod命令來重新設(shè)定不同的訪問權(quán)限。也可以利用chown命令來更改某個文件或目錄的所有者。利用chgrp命令來更改某個文件或目錄的用戶組。

可以通過以下三種方式限制方位權(quán)限:

  • 只用戶自己訪問:
  • 允許一個預(yù)先指定的用戶組中的用戶訪問
  • 允許系統(tǒng)中的任何用戶訪問

同時,用戶能夠控制一個文件或目錄的訪問程度,一個文件或目錄可能有讀、寫以及執(zhí)行權(quán)限;當(dāng)創(chuàng)建一個文件時,系統(tǒng)會自動賦予文件的所有者讀和寫的權(quán)限,這樣可以允許所有者能夠顯示文件內(nèi)容和修改文件。文件所有者可以將這些權(quán)限改變?yōu)槿魏嗡胫付ǖ臋?quán)限。

每一個用戶都有它自身的讀、寫和執(zhí)行權(quán)限。

  • 第一套權(quán)限控制訪問自己的文件權(quán)限,即所有者權(quán)限。
  • 第二套權(quán)限控制用戶組訪問其中一個用戶的文件的權(quán)限。
  • 第三套權(quán)限控制其他所有用戶訪問一個用戶的文件的權(quán)限,這三套權(quán)限賦予用戶不同類型(即所有者、用戶組和其他用戶)的讀、寫及執(zhí)行權(quán)限就構(gòu)成了一個有9種類型的權(quán)限組。

有三種不同類型的用戶可對文件或目錄進(jìn)行訪問:文件所有者,同組用戶、其他用戶。

所有者一般是文件的創(chuàng)建者。所有者可以允許同組用戶有權(quán)訪問文件,還可以將文件的訪問權(quán)限賦予系統(tǒng)中的其他用戶。在這種情況下,系統(tǒng)中每一位用戶都能訪問該用戶擁有的文件或目錄。

查看文件權(quán)限:ls -l file
?

bash-3.2# ls -l test.html 
-rw-r--r--  1 tongkun  staff  208 12 26 21:18 test.html

說明:

  • 橫線代表空許可
  • r代表只讀
  • w代表寫
  • x代表可執(zhí)行

注意這里有10個位置,第一個字符制定文件類型。如果第一個字符是橫線,表示一個非目錄文件,如果是d,表示是一個目錄。

-rw-r--r-- 說明:

test.html是一個普通文件,對屬主有讀寫權(quán)限,對屬同組用戶有只讀權(quán)限,對其他用戶有只讀權(quán)限。

二、使用chmod的字母和數(shù)字改變文件或目錄的訪問權(quán)限

  • chmod命令用于改變文件活目錄的訪問權(quán)限
  • chmod有兩種用法。一種是包含字母和操作符表達(dá)式的文字設(shè)定法;另一種是包含數(shù)字的數(shù)字設(shè)定法。
  • ?

1. 文字設(shè)定法

chmod [who] [+ | - | =] [mode] 文件名

命令中各選項的含義是:

  • u 表示用戶(user),即文件和目錄的所有者
  • g 表示同組用戶(group),即與文件屬主有相同id的所有用戶
  • o 表示其他用戶
  • a 表示所有用戶,他是系統(tǒng)的默認(rèn)值

操作符:

  • + 添加某個權(quán)限
  • - 取消某個權(quán)限
  • = 賦予給定權(quán)限并取消其他所有權(quán)限(如果有的話)

mode所表示的權(quán)限可用于下注字符的任意組合:

  • r 可讀
  • w 可寫
  • x 可執(zhí)行
  • X 只有目標(biāo)文件對某些用戶是可執(zhí)行的或該目標(biāo)文件是目錄時才追加x 屬性。
  • s 在文件執(zhí)行時把進(jìn)程的屬主或組ID置為該文件的文件屬主。方式“u+s”設(shè)置文件的用戶ID位,“g+s”設(shè)置組ID位。
  • t 保存程序的文本到交換設(shè)備上。
  • u 與文件屬主擁有一樣的權(quán)限。
  • g 與和文件屬主同組的用戶擁有一樣的權(quán)限。
  • o 與其他用戶擁有一樣的權(quán)限。

文件名:以空格分開的要改變權(quán)限的文件列表,支持通配符。

在一個命令行中可給出多個權(quán)限方式,其間用逗號隔開。例如:chmod g+r,o+r example

2. 數(shù)字設(shè)定法

用數(shù)字表示的屬性的含義:0表示沒有權(quán)限,1表示可執(zhí)行權(quán)限,2表示可寫權(quán)限,4表示可讀權(quán)限,然后將其相加。所以數(shù)字屬性的格式應(yīng)為3個從0到7的八進(jìn)制數(shù),其順序是(u)(g)(o)。

例如,如果想讓某個文件的屬主有“讀/寫”二種權(quán)限,需要把4(可讀)+2(可寫)=6(讀/寫)。

數(shù)字設(shè)定法的一般形式為:

chmod [mode] 文件名?

文件和目錄的權(quán)限表示,是用rwx這三個字符來代表所有者、用戶組和其他用戶的權(quán)限。有時候,字符似乎過于麻煩,因此還有另外一種方法是以數(shù)字來表示權(quán)限,而且僅需三個數(shù)字。

  • r:對應(yīng)數(shù)值4
  • w:對應(yīng)數(shù)值2
  • x:對應(yīng)數(shù)值1
  • -:對應(yīng)數(shù)值0

只是包rwx看成二進(jìn)制數(shù)。有則1表示,無則0表示。所以 -rwx r-x r--則表示為111 101 100 十進(jìn)制數(shù)為754

自己 同組用戶 其他用戶
可讀 是 是 是
可寫 是 是
可執(zhí)行

那么,我們先根據(jù)上表得到權(quán)限串為:rw-rw-r--,那么轉(zhuǎn)換成二進(jìn)制數(shù)就是110 110 100,再每三位轉(zhuǎn)換成為一個十進(jìn)制數(shù),就得到664,因此我 們執(zhí)行命令:

例如,我們想讓a.txt這個文件的權(quán)限為:

自己 同組用戶 其他用戶
可讀 是 是 是
可寫 是 是
可執(zhí)行

那么,我們先根據(jù)上表得到權(quán)限串為:rw-rw-r--,那么轉(zhuǎn)換成二進(jìn)制數(shù)就是110 110 100,再每三位轉(zhuǎn)換成為一個十進(jìn)制數(shù),就得到664,因此我 們執(zhí)行命令:

chmod 644 a.txt

如果一個文件的權(quán)限全部放開,則權(quán)限數(shù)字即為 777

chmod 777 a.txt

如果想一次修改某個目錄下所有文件的權(quán)限,包括子目錄中的文件權(quán)限也要修改,要使用參數(shù)-R表示啟動遞歸處理。

chomd -R 777 /Hexo

則Hexo目錄下所有文件對所有用戶授予讀寫和執(zhí)行的權(quán)限。

三、是用chown更改文件的擁有者權(quán)限

chown將指定文件的擁有者改為指定的用戶或組,用戶可以是用戶名或者用戶ID;組可以是組名或者組ID;文件是以空格分開的要改變權(quán)限的文件列表,支持通配符。系統(tǒng)管理員經(jīng)常使用chown命令,在將文件拷貝到另一個用戶的名錄下之后,讓用戶擁有使用該文件的權(quán)限。

命令說明

1.命令格式:

chown [選項]... [所有者][:[組]] 文件...

2.命令功能:

通過chown改變文件的擁有者和群組。在更改文件的所有者或所屬群組時,可以使用用戶名稱和用戶識別碼設(shè)置。普通用戶不能將自己的文件改變成其他的擁有者。其操作權(quán)限一般為管理員。

3.命令參數(shù):

必要參數(shù):

  • -c 顯示更改的部分的信息
  • -f 忽略錯誤信息
  • -h 修復(fù)符號鏈接
  • -R 處理指定目錄以及其子目錄下的所有文件
  • -v 顯示詳細(xì)的處理信息
  • -deference 作用于符號鏈接的指向,而不是鏈接文件本身

選擇參數(shù):

  • --reference=<目錄或文件> 把指定的目錄/文件作為參考,把操作的文件/目錄設(shè)置成參考文件/目錄相同擁有者和群組
  • --from=<當(dāng)前用戶:當(dāng)前群組> 只有當(dāng)前用戶和群組跟指定的用戶和群組相同時才進(jìn)行改變
  • --help 顯示幫助信息
  • --version 顯示版本信息

命令實(shí)例

實(shí)例1. 改變擁有者和群組

命令:chown tongkun:everyone Mysql日志分析.md
說明:更改擁有者為tongkun, 群組為everyone群組

實(shí)例2. 更改目錄的擁有者和群組

命令:chown -R tongkun:everyone dir
說明:更改目錄以及子目錄子文件的擁有者和群組

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容