Linux 指南/許可權
Linux 許可權是 Unix 許可權。
在你的主目錄中,輸入
% ls -l
你將會看到你得到了關於你的目錄內容的很多詳細資訊。

每個檔案(和目錄)都有訪問許可權,可以透過輸入 ls -l 來顯示。 另外,ls -lg 會提供關於哪個組擁有檔案(在以下示例中為 istrain)的額外資訊。
-rwxrw-r-- 1 ccaajim istrain 3210 Aug15 14:25 train.doc
在左邊的列中是一個由 10 個符號組成的字串,由符號 d, r, w, x, -, 和偶爾出現的 s 或 S 組成。 現在對你來說重要的是 r 代表讀取,w 代表寫入,x 代表執行。 如果存在 d,它將位於字串的左側,表示目錄;否則字串將以 - 開頭。
剩下的 9 個符號表示許可權,或訪問許可權,被視為三組三個符號。
左邊的 3 個符號表示擁有檔案(或目錄)的使用者(以上示例中的 ccaajim)的檔案許可權。 最右邊的 3 個符號表示所有其他人的許可權(在 Unix 中稱為世界)。 中間的三個符號是賦予使用者帳戶所屬的組的許可權。
符號 r、w 等,根據它們是引用簡單檔案還是目錄,有略微不同的含義。
- r(或 -),表示讀取許可權(或否則),也就是說,存在或不存在讀取和複製檔案的許可權。
- w(或 -),表示寫入許可權(或否則),也就是說,更改檔案的許可權(或否則)。
- x(或 -),表示執行許可權(或否則),也就是說,在適當情況下執行檔案的許可權。
- r 允許使用者列出目錄中的檔案;
- w 表示使用者可以從目錄中刪除檔案或將檔案移動到目錄中;
- x 表示訪問目錄中檔案的權利。 這意味著你可以讀取目錄中的檔案,前提是你對單個檔案具有讀取許可權。
因此,為了讀取檔案,你必須對包含該檔案的目錄擁有執行許可權,因此必須對包含該目錄作為子目錄的任何目錄擁有執行許可權,等等,一直到樹的頂端。
| 許可權字串 | 效果 |
|---|---|
| -rwxrwxrwx | 每個人都可以讀取、寫入和執行(以及刪除)的檔案 |
| -rw------- | 只有所有者可以讀取和寫入的檔案 - 其他人不能讀取或寫入,並且沒有人擁有執行許可權(例如你的郵箱檔案) |
粘滯位 由 "t" 標誌表示:它表示檔案或目錄只能由其所有者(或 root)刪除。
setuid 位由 "s" 標誌表示:它表示應該使用其所有者的使用者 ID 執行該檔案。
只有檔案的擁有者可以使用 chmod 更改檔案的許可權。 chmod 的選項如下
| 符號 | 含義 |
|---|---|
| u | 使用者 |
| g | 組 |
| o | 其他 |
| a | 所有(即 u 和 g 和 o) |
| r | 讀取 |
| w | 寫入(以及刪除) |
| x | 執行(以及訪問目錄) |
| + | 新增許可權 |
| - | 取消許可權 |
例如,要刪除檔案 allcolours 對組和其他人讀取、寫入和執行許可權,請輸入
% chmod go-rwx allcolours
這將保留其他許可權不變。
要授予檔案 allcolours 對所有人讀取和寫入許可權,請輸入
% chmod a+rw allcolours
除了上面概述的語法之外,你還可以使用 chmod 和一個表示使用者和預期許可權的數字引數。 一個常見的例子是
% chmod 755 myscript.sh
此示例等同於 chmod u=wrx,g=rx,o=rx
它是如何工作的? 好吧,我們稱這個數字為三元組,以提醒我們它是一個三位數字符串。 每個數字代表 u、g 和 o 中的其中一個的許可權。 我們為每個可能的許可權分配一個數字值,如下所示
| 數字 | 含義 |
|---|---|
| 1 | 執行 |
| 2 | 寫入 |
| 4 | 讀取 |
| 0 | 清除許可權 |
在上面的示例中,數字字串為 755。 只有一個方式可以得到這個結果(可以這樣說)。
| 位置 | 值 | 組成 |
|---|---|---|
| u | 7 | 4 + 2 + 1 |
| g | 5 | 4 + 0 + 1 |
| o | 5 | 4 + 0 + 1 |
這意味著 chmod 755 filename 表示對檔案所有者具有讀取、寫入和執行許可權,對組和其他人具有讀取和執行許可權。
此命令可以獲取或設定建立檔案的預設許可權。