Linux權(quán)限基礎(chǔ)知識:一文帶你了解Linux文件權(quán)限

在本文中,我們將了解 Linux 權(quán)限的基礎(chǔ)知識,并描述它們在VPS環(huán)境中的重要性。我們將闡明用戶權(quán)限、文件所有權(quán)和訪問限制的復(fù)雜性,為您提供保護(hù)服務(wù)器及其數(shù)據(jù)所需的知識。

因此,無論您是Web開發(fā)人員、系統(tǒng)管理員,還是只是對 VPS 管理內(nèi)部工作原理感興趣的人,請繼續(xù)閱讀,我們將介紹虛擬服務(wù)器上的 Linux 權(quán)限。幫助大家能夠順利掌握權(quán)限用法,并保護(hù)您的VPS。

Linux權(quán)限基礎(chǔ)知識:一文帶你了解Linux文件權(quán)限

了解 Linux 文件權(quán)限

作為系統(tǒng)管理員,理解文件權(quán)限與理解控制和訪問語言有關(guān)。Linux 文件權(quán)限是您的守門人,決定誰可以查看、修改或執(zhí)行 VPS 上的文件和目錄。它們確保只有授權(quán)實(shí)體才能訪問您的數(shù)據(jù)和應(yīng)用程序。

三種權(quán)限類型

Linux 文件權(quán)限的核心是三個基本屬性,每個屬性控制文件訪問的特定方面:

讀?。╮):此權(quán)限允許用戶或組查看文件內(nèi)容或列出目錄內(nèi)容。在權(quán)限設(shè)置中以字母r表示。

寫入 (w):寫入權(quán)限允許用戶或組修改文件內(nèi)容或創(chuàng)建刪除目錄中的文件。它用字母 w 表示。

執(zhí)行 (x) :執(zhí)行權(quán)限,以字母 x 表示,授予運(yùn)行腳本或執(zhí)行程序的能力。如果沒有此權(quán)限,則無法執(zhí)行程序或更改目錄。

三個權(quán)限級別

在 Linux 中,權(quán)限并非普遍授予;它們是針對特定實(shí)體量身定制的。主要有三個權(quán)限級別:

用戶(u):此級別是指文件或目錄的所有者。用戶可以是創(chuàng)建文件的人,也可以是具有特定訪問權(quán)限的指定用戶。

組 (g):組權(quán)限適用于一組預(yù)定義的共享文件或目錄訪問權(quán)限的用戶。組是管理具有類似需求的多個用戶的權(quán)限的有效方法。

其他 (o):“其他”類別包括除所有者外也不是文件或目錄所關(guān)聯(lián)組的成員的其他人。這些權(quán)限是最開放的,通常適用于系統(tǒng)上的所有用戶。

數(shù)字和符號權(quán)限表示

Linux 權(quán)限可以用兩種格式表示:數(shù)字和符號表示。

數(shù)字表示法:在此格式中,每個權(quán)限都分配有一個數(shù)值。讀取用4表示,寫入2表示,執(zhí)行1表示。然后將這些值相加以創(chuàng)建一個三位數(shù),其中第一位表示用戶權(quán)限,第二位表示組權(quán)限,第三位表示其他權(quán)限。例如,權(quán)限為 644 的文件意味著用戶具有讀寫訪問權(quán)限(4+2=6),而組和其他人只有讀取訪問權(quán)限(4)。

允許數(shù)值

讀4

寫2

執(zhí)行1

符號表示法:符號表示法使用字母和符號的組合來表示權(quán)限。r 表示讀取,w 表示寫入,x 表示執(zhí)行,'-' 表示無權(quán)限。這些符號與用戶、組和其他用戶一起使用來設(shè)置權(quán)限。例如,rw-r–r–轉(zhuǎn)換為用戶 = 讀取 + 寫入、組 = 讀取、其他 = 讀取。

象征意義

r讀取權(quán)限

瓦寫入權(quán)限

十執(zhí)行權(quán)限

–沒有權(quán)限

在下一節(jié)中,我們將探討這些權(quán)限的實(shí)際應(yīng)用并仔細(xì)研究 umask。

查看文件權(quán)限

要深入了解 Linux VPS 上現(xiàn)有的文件權(quán)限,您需要利用幾個可靠的命令。讓我們看看如何使用ls -l和stat來揭示文件和目錄的復(fù)雜細(xì)節(jié)。

使用 ls 命令

帶有-l選項(xiàng)的ls命令是您以用戶友好且人性化格式查看文件權(quán)限的首選工具。只需打開終端并導(dǎo)航到包含相關(guān)文件或目錄的目錄即可。然后,執(zhí)行以下命令:

ls -l filename_or_directory?

將filename_or_directory替換為要檢查的文件或目錄的實(shí)際名稱。運(yùn)行此命令時,它將顯示詳細(xì)列表,其中包括文件權(quán)限、所有權(quán)信息、文件大小、修改日期等。

輸出將會像這樣:

lrwxrwxrwx?? 1 root root???? 7 Aug 25? 2021 filename??

此處,lrwxrwxrwx部分以符號形式表示文件的權(quán)限。user 和 group 值分別表示文件的所有者和組。

使用 stat

為了更好地檢查文件權(quán)限和其他文件信息,您可以使用stat命令。此命令提供文件屬性的全面概述。

要使用 stat,只需輸入以下命令:

stat <filename_or_directory>?

再次,將 <filename_or_directory> 替換為您要檢查的文件或目錄的實(shí)際名稱。輸出將以結(jié)構(gòu)化格式顯示大量信息,包括訪問、修改和更改時間。

這些命令將使您能夠檢查和了解 VPS 上文件和目錄的權(quán)限,這是有效管理訪問和安全的基本技能。

如何使用 chmod 修改權(quán)限

chmod 命令用于更改文件權(quán)限。它允許您使用符號表示法或八進(jìn)制表示法設(shè)置或修改文件或目錄的權(quán)限。

符號表示法:此方法使用字母(u,g,o,a)和符號(+,-,=)來添加或刪除權(quán)限。

象征意義

用戶(文件所有者)

(與文件屬于同一組的用戶)

o其他人(其他所有人)

一個全部(u、g 和 o 的組合)

+添加指定權(quán)限

刪除指定權(quán)限

=設(shè)置指定權(quán)限并刪除所有其他權(quán)限

示例:要為用戶和組添加對名為 example.txt 的文件的寫權(quán)限并刪除其他用戶的所有權(quán)限,可以使用以下命令:

chmod ug+w,o-rx example.txt?

八進(jìn)制表示法:此方法使用三位數(shù)字(0-7)來表示所有者、組和其他人的權(quán)限。每位數(shù)字對應(yīng)讀?。?)、寫入(2)和執(zhí)行(1)權(quán)限。

數(shù)字 (0-7)相應(yīng)權(quán)限

0沒有權(quán)限

1執(zhí)行(1)

2(2)

3寫入+執(zhí)行(2+1)

4閱讀(4)

5讀取+執(zhí)行(4+1)

6閱讀+寫作(4+2)

7讀取+寫入+執(zhí)行(4+2+1)

示例:要授予文件所有者對 example.txt 的讀寫權(quán)限、授予組只讀權(quán)限并且不授予其他用戶任何權(quán)限,可以使用以下命令:

chmod 640 example.txt?

了解用戶和組所有權(quán)

所有權(quán)在確定文件和目錄權(quán)限方面起著重要作用。在本章中,我們將探討所有權(quán)如何影響權(quán)限以及如何使用ls -l命令檢查文件所有權(quán)。

所有權(quán)如何影響權(quán)限

在基于 Unix 的系統(tǒng)中,每個文件和目錄都與兩個所有權(quán)級別相關(guān)聯(lián):用戶所有權(quán)組所有權(quán)。了解這些所有權(quán)級別至關(guān)重要,因?yàn)樗鼈冎苯佑绊懻l可以訪問、修改或執(zhí)行文件或目錄。

用戶所有權(quán):創(chuàng)建文件或目錄的用戶默認(rèn)成為其所有者。此用戶擁有特殊權(quán)限,可以更改文件的權(quán)限,讀取、寫入和刪除文件,而不管其他人設(shè)置的權(quán)限如何。

組所有權(quán):Unix 系統(tǒng)上的每個用戶都屬于一個或多個用戶組。可以將文件或目錄分配給特定組。屬于該組的用戶獲得文件或目錄的組所有權(quán)。組所有權(quán)允許組成員根據(jù)其組權(quán)限訪問文件。

如何使用 ls -l 命令檢查文件所有權(quán)

ls 命令列出目錄中的文件和目錄。與 -l 選項(xiàng)一起使用時,它會提供包含所有權(quán)信息的詳細(xì)列表。以下是使用它檢查文件所有權(quán)的方法:

ls -l

此命令的輸出將以如下格式顯示信息:

-rw-r--r--? 1 user1? group1? 1234 Sep? 6 10:00 file.txt?

以下是每列代表的含義的詳細(xì)說明:

– -rw-r–r–:這些字符代表文件的權(quán)限。第一個字符表示文件類型(在本例中為常規(guī)文件),后面是文件所有者、組所有者和其他人的三組權(quán)限。

– 1:此數(shù)字表示該文件的硬鏈接數(shù)。

user1:這是文件所有者的名稱。

group1:這是群組所有者的名稱。

1234:這是文件大小(以字節(jié)為單位)。

9 月 6 日 10:00:這是上次修改的日期和時間。

file.txt:這是文件或目錄名稱。

在上面的例子中,user1 擁有文件 file.txt,并且屬于組 group1。該文件的權(quán)限為 rw-r–r–,這意味著所有者具有讀寫權(quán)限,但其他人只能讀取該文件。

更改文件所有權(quán)

更改文件所有權(quán)是一項(xiàng)基本任務(wù),它允許您在用戶和組之間轉(zhuǎn)移文件和目錄的所有權(quán)。在下一章中,我們將探討如何使用 chown 和 chgrp 命令更改文件或目錄的所有者和組,并提供代碼示例。

如何使用 chown 更改文件所有權(quán)

chown 命令可更改文件或目錄的所有者。它允許您將所有權(quán)從一個用戶轉(zhuǎn)移到另一個用戶。要使用 chown,您需要超級用戶 (root) 權(quán)限或文件或目錄的所有權(quán)。

chown 的基本語法如下:

chown [new_owner:new_group] [file_or_directory]?

– new_owner:新主人的用戶名。

– new_group:新組的名稱(可選)。

– file_or_directory:您想要更改其所有權(quán)的文件或目錄。

如何使用 chgrp 更改組所有權(quán)

chgrp 命令可更改文件或目錄的組所有權(quán)。與 chown 類似,您需要擁有超級用戶權(quán)限或文件或目錄的所有權(quán)才能使用 chgrp。

chgrp 的基本語法如下:

chgrp [new_group][file_or_directory]

– new_group:新組的名稱。

– file_or_directory:您想要更改其組所有權(quán)的文件或目錄。

更改所有權(quán)的代碼示例

以下是一些更改文件和目錄所有權(quán)的實(shí)際代碼示例:

1.使用 chown 更改文件所有權(quán)

要將名為 file.txt 的文件的所有者更改為名為 newuser 的用戶,請使用以下命令:

sudo chown newuser file.txt

要更改同一文件的所有者和組所有權(quán),請使用:

sudo chown newuser:newgroup file.txt

2.使用 chown 更改目錄所有權(quán)

要將名為 mydir 的目錄及其所有內(nèi)容的所有者更改為 newuser,請使用 -R 選項(xiàng)進(jìn)行遞歸所有權(quán)更改:

sudo chown -R newuser mydir?

3.使用 chgrp 更改組所有權(quán)

要將名為 file.txt 的文件的組所有權(quán)更改為名為 newgroup 的組,請使用以下命令:

sudo chgrp newgroup file.txt?

4.使用 chgrp 更改目錄的組所有權(quán)

要將名為 mydir 的目錄及其所有內(nèi)容的組所有權(quán)更改為 newgroup,請使用 -R 選項(xiàng)進(jìn)行遞歸組所有權(quán)更改:

sudo chgrp -R newgroup mydir?

請務(wù)必記住將 newuser 和 newgroup 替換為您要分配的實(shí)際用戶名和組名。此外,使用 sudo 以超級用戶權(quán)限執(zhí)行這些命令,因?yàn)楦乃袡?quán)通常需要提升權(quán)限。更改所有權(quán)時要小心謹(jǐn)慎,因?yàn)樗赡軐ο到y(tǒng)的訪問控制和安全性產(chǎn)生重大影響。

?著作權(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)容