在Linux中執行檔案必需先給予執行權限才可執行。例如: 在當前目錄下執行名為file.sh 檔案( ./file.sh) ,執行結果卻出現Permission denied(沒有權限),是因為在執行檔案前要先給予檔案執行權限,
chmod +x file.sh,這樣才可順利執行。
Linux的檔案權限是控制檔案和目錄存取的重要組成部分。在Linux裡面,任何一個檔案都具有『User, Group及Others』三種身份的個別權限,這些設定定義了誰可以讀取、寫入和執行它們。Linux檔案權限包括以下三個主要部分:使用者權限、群組權限和其他使用者權限。
• 讀取權限(Read,簡寫為r):允許使用者查看檔案的內容。如果檔案是目錄,則允許使用者列出目錄中的檔案清單。
• 寫入權限(Write,簡寫為w):允許使用者修改檔案的內容。如果檔案是目錄,則允許使用者在目錄中建立、刪除或重新命名檔案。
• 執行權限(Execute,簡寫為x):允許使用者執行可執行檔或進入目錄。如果一個目錄沒有執行權限,使用者將無法進入該目錄。
• 類似於使用者權限,但適用於檔案或目錄的所屬群組。群組權限允許群組成員執行與檔案或目錄相關的操作。
• 其他使用者權限適用於除使用者和群組之外的所有其他使用者。這些權限影響不屬於檔案所有者和檔案所屬群組的所有使用者。
Linux檔案權限的表示方式是一個由9個字符組成的字串,例如:rwxr-xr--。
這9個字符分為三組(rwx,r-x,r--),每組包含3個字符,分別表示使用者、群組和其他使用者的權限。
以下是這些字符的含義:
• 第一組(使用者權限):檔案的所有者的權限。
• 第二組(群組權限):檔案所屬群組的權限。
• 第三組(其他使用者權限):其他使用者的權限。
每個權限字母可以是以下之一:
• r:讀取權限。
• w:寫入權限。
• x:執行權限。
• -:表示沒有相應的權限。
例如rwxr-xr-- 表示:User有(rwx)讀、寫、執行權限,Group有(r-x)讀和執行權限,Others只有(r--)讀權限。
為了更改檔案或目錄的權限,可以使用 chmod 命令,語法如下:
chmod <權限設定> <檔案或目錄>
權限設定可以使用:
1.符號表示法,例如chmod u+rwx file.txt (User有rwx讀、寫、執行權限)
2.數字表示法,例如,chmod 754 file.txt。
數字表示法是一個三位數,每位分別表示User、Group和Others的權限。
其中,讀取權限是4,寫入權限是2,執行權限是1。通過將這些值相加,可以得到所需的權限設定。
例如,chmod 754 file.txt 將檔案 file.txt 設定為以下權限:
• 使用者:讀取、寫入、執行(4 + 2 + 1 = 7)
• 群組:讀取、執行(4 + 1 = 5)
• 其他使用者:讀取(4)