學習啦 > 學習電腦 > 操作系統(tǒng) > Linux教程 > Linux系統(tǒng)怎么設(shè)置文件權(quán)限

Linux系統(tǒng)怎么設(shè)置文件權(quán)限

時間: 春健736 分享

Linux系統(tǒng)怎么設(shè)置文件權(quán)限

  所謂的文件權(quán)限,是指對文件的訪問權(quán)限,包括對文件的讀、寫、刪除、執(zhí)行。那么Linux系統(tǒng)怎么設(shè)置文件權(quán)限呢?下面學習啦小編就為大家?guī)砹薒inux系么設(shè)置文件權(quán)限的方法。

  Linux系么設(shè)置文件權(quán)限方法

  你要明白的第一件事是文件權(quán)限可以用來干什么。當你設(shè)置一個分組的權(quán)限時發(fā)生了什么?讓我們將其展開來說,這個概念就真的簡單多了。那到底什么是權(quán)限?什么是分組呢?

  你可以設(shè)置的3種權(quán)限:

  1.讀 — 允許該分組讀文件(用r表示)

  2.寫 — 允許該分組寫文件(用w表示)

  3.執(zhí)行 — 允許該分組執(zhí)行(運行)文件(用x表示)

  為了更好地解釋這如何應用于一個分組,例如,你允許一個分組可以讀寫一個文件,但不能執(zhí)行?;蛘撸憧梢栽试S一個分組讀和執(zhí)行一個文件,但不能寫。甚至你可以允許一個分組有讀、寫、執(zhí)行全部的權(quán)限,也可以刪除全部權(quán)限來去除該組的權(quán)限。

  現(xiàn)在,什么是分組呢,有以下4個:

  1.user — 文件實際的擁有者

  2.group — 用戶所在的用戶組

  3.others — 用戶組外的其他用戶

  4.all — 所有用戶

  大多數(shù)情況,你只會對前3組進行操作,all 這一組只是作為快捷方式(稍后我會解釋)。

  到目前為止很簡單,對吧?接下來我們將深入一層。

  如果你打開一個終端并運行命令 ls -l,你將會看到逐行列出當前工作目錄下所有的文件和文件夾的列表

  你會留意到最左邊那列是像是 -rw-rw-r-- 這樣的。

  實際上這列表應該這樣看:

  代碼如下:

  rw- rw- r--

  正如你所見,列表將其分為如下3部分:

  1.rw-

  2.rw-

  3.r--

  權(quán)限和組的順序都很重要,順序總是:

  1.所屬者 所屬組 其他人 — 分組

  2.讀 寫 執(zhí)行 — 權(quán)限

  在我們上面示例的權(quán)限列表中,所屬者擁有讀/寫權(quán)限,所屬組擁有讀/寫權(quán)限,其他人用戶僅擁有讀權(quán)限。這些分組中賦予執(zhí)行權(quán)限的話,就用一個 x 表示。

  等效數(shù)值

  接下來我們讓它更復雜一些,每個權(quán)限都可以用一個數(shù)字表示。這些數(shù)字是:

  1.讀 — 4

  2.寫 — 2

  3.執(zhí)行— 1

  數(shù)值代替不是一個一個的替換,你不能像這樣:

  代碼如下:

  -42-42-4--

  你該把每個分組的數(shù)值相加,給用戶讀和寫權(quán)限,你該用 4 + 2 得到 6。給用戶組相同的權(quán)限,也是使用相同的數(shù)值。假如你只想給其他用戶讀的權(quán)限,那就設(shè)置它為4?,F(xiàn)在用數(shù)值表示為:

  代碼如下:

  664

  如果你想給一個文件664權(quán)限,你可以使用 chmod 命令,如:

  代碼如下:

  chmod 664 FILENAME

  FILENAME 處為文件名。

  更改權(quán)限

  既然你已經(jīng)理解了文件權(quán)限,那是時候?qū)W習如何更改這些權(quán)限了。就是使用 chmod 命令來實現(xiàn)。第一步你要知道你能否更改文件權(quán)限,你必須是文件的所有者或者有權(quán)限編輯文件(或者通過 su 或 sudo 得到權(quán)限)。正因為這樣,你不能隨意切換目錄和更改文件權(quán)限。

  繼續(xù)用我們的例子 (-rw-rw-r--)。假設(shè)這個文件(命名為 script.sh)實際是個shell腳本,需要被執(zhí)行,但是你只想讓自己有權(quán)限執(zhí)行這個腳本。這個時候,你可能會想:“我需要是文件的權(quán)限如 -rwx-rw-r--”。為了設(shè)置 x 權(quán)限位,你可以這樣使用 chmod 命令:

  代碼如下:

  chmod u+x script.sh

  這時候,列表中顯示的應該是 -rwx-rw-r-- 。

  如果你想同時讓用戶及其所屬組同時擁有執(zhí)行權(quán)限,命令應該這樣:

  代碼如下:

  chmod ug+x script.sh

  明白這是怎么工作的了嗎?下面我們讓它更有趣些。不管什么原因,你不小心給了所有分組對文件的執(zhí)行權(quán)限(列表中是這樣的 -rwx-rwx-r-x)。

  如果你想去除其他用戶的執(zhí)行權(quán)限,只需運行命令:

  [code]

  chmod o-x script.sh

  如果你想完全刪除文件的可執(zhí)行權(quán)限,你可以用兩種方法:

  代碼如下:

  chmod ugo-x script.sh

  或者

  代碼如下:

  chmod a-x script.sh

  以上就是所有內(nèi)容,能使操作更有效率。我希望能避免哪些可能會導致一些問題的操作(例如你不小心對 script.sh 使用 a-rwx 這樣的 chmod 命令)。

  目錄權(quán)限

  你也可以對一個目錄執(zhí)行 chmod 命令。當你作為用戶創(chuàng)建一個新的目錄,通常新建目錄具有這樣的權(quán)限:

  代碼如下:

  drwxrwxr-x

  注:開頭的 d 表示這是一個目錄。

  正如你所見,用戶及其所在組都對文件夾具有操作權(quán)限,但這并不意味著在這文件夾中出創(chuàng)建的文件也具有與其相同的權(quán)限(創(chuàng)建的文件使用默認系統(tǒng)的權(quán)限 -rw-rw-r--)。但如果你想在新文件夾中創(chuàng)建文件,并且移除用戶組的寫權(quán)限,你不用切換到該目錄下并對所有文件使用 chmod 命令。你可以用加上參數(shù) R(意味著遞歸)的 chmod 命令,同時更改該文件夾及其目錄下所有的文件的權(quán)限。

  現(xiàn)在,假設(shè)有一文件夾 TEST,里面有一些腳本,所有這些(包括 TEST 文件夾)擁有權(quán)限 -rwxrwxr-x。如果你想移除用戶組的寫權(quán)限,你可以運行命令:

  代碼如下:

  chmod -R g-w TEST

  運行命令 ls -l,你講看到列出的 TEST 文件夾的權(quán)限信息是 drwxr-xr-x。用戶組被去除了寫權(quán)限(其目錄下的所有文件也如此)。

看過“Linux系統(tǒng)怎么設(shè)置文件權(quán)限”的人還看了:

1.xp系統(tǒng)如何設(shè)置文件的可寫權(quán)限

2.Linux文件權(quán)限怎么備份和恢復

3.Linux怎么設(shè)置用戶通過SFTP訪問目錄的權(quán)限

4.linux文件系統(tǒng)怎么管理

5.win10系統(tǒng)怎么用管理員權(quán)限打開文件

6.Linux系統(tǒng)如何修改文件的時間

1319278