如何更改 Mac 上的文件權限並控制對其文件和目錄的訪問

已發表: 2021-07-14

文件系統為操作系統上的文件和目錄提供屬性,以幫助您確定計算機上的哪些用戶可以讀取、修改或執行其文件和目錄的內容。

change file permissions on Mac

大多數操作系統要么使用傳統的 Unix 權限,要么使用 ACL(訪問控制列表)權限來控製文件和目錄訪問。

談到 macOS,操作系統在 10.3 及更高版本上使用 Apple 文件系統 (APFS)。 由於 APFS 支持傳統的 Unix 權限,它使您能夠為不同的用戶和組更改 Mac 上文件和目錄的權限。

因此,如果您想更改 Mac 上用戶的權限以限制他們對系統文件和目錄的訪問,本指南應該會指導您完成。

目錄

了解 macOS 文件權限

首先,我們先來看看 macOS 提供的文件和目錄權限。 macOS 源自 Unix 操作系統,支持 Unix 權限集,包括以下權限:

  • 讀取:授予讀取文件的能力。 與目錄一起使用時,此權限提供查看目錄名稱的能力; 但不是它的內容。
  • 寫入:授予修改文件的能力。 對於目錄,它通過提供修改目錄中的條目以允許創建、重命名和刪除文件的能力來工作。
  • 執行:授予執行(程序)文件的能力。 當為目錄設置時,它允許訪問目錄的內容(子目錄和文件)並提供搜索功能來訪問文件的內容——授予文件也具有讀取權限。

macOS 允許您管理 Mac 上三個類的這些權限,即usergroupothers 。 其中,用戶類是文件的創建者/所有者,而代表系統上共享相同權限的一組不同用戶,其他用戶指既不是所有者也不是任何組成員的用戶.

現在,根據您喜歡 GUI(圖形用戶界面)還是 CLI(命令行界面),您可以使用 Finder 或終端來更改 Mac 上的文件權限。

使用 Finder 在 Mac 上更改文件權限

Finder 提供了一種在 Mac 上更改文件和目錄權限(或文件夾權限)的最簡單方法。 因此,如果您是 macOS 新手並且不習慣使用終端,您可以使用 Finder 修改權限。

以下是 Mac 上不同文件和目錄權限的細分以及它們在 Finder 中的工作方式:

  • 讀寫:允許用戶打開文件或目錄並對其進行修改。
  • 只讀:允許用戶打開文件或目錄,但不能對其進行任何更改。
  • 只寫(投遞箱):允許用戶僅將項目保存到投遞箱,投遞箱是公用文件夾中的一個文件夾。
  • 無訪問權限:阻止對文件或目錄的完全訪問。

現在,一旦您對這些權限有所了解,就可以繼續執行以下步驟,使用 Finder 在 Mac 上設置文件權限。 但是請注意,您需要成為系統管理員才能更改系統上不同用戶的文件權限。

  1. 打開 Finder 並導航到要修改其權限的文件或目錄。
  2. 右鍵單擊文件/目錄,然後從上下文菜單中選擇“獲取信息”選項,以獲取 Mac 上所有帳戶和用戶組及其權限類別的列表。
  3. 信息窗口中,向下滾動到共享和權限部分的底部,以查看誰擁有哪些權限。
    changing file permissions on Mac using Finder
  4. 點擊右下角的掛鎖圖標並輸入管理員密碼以解鎖對權限修改的訪問。
  5. 根據您要修改的類的權限,在Name下選擇它,在Privilege選項卡中點擊它旁邊的箭頭按鈕,然後從彈出菜單中選擇一種權限類型。
    change file permissions on Mac using Finder

如果您想為 Mac 上未在“共享和權限”下列出的新用戶設置權限,請單擊加號按鈕並點擊“用戶”。 在下一個對話框中,輸入用戶名和密碼,然後點擊Create Account 。 添加後,從用戶菜單中選擇它,然後單擊選擇按鈕。 此後,您可以按照上述步驟設置權限設置。

完成權限設置後,再次單擊鎖定圖標以鎖定權限修改,然後關閉信息窗口。

如果您不小心弄亂了某些權限,您可以通過單擊操作彈出菜單(或三點菜單)按鈕並點擊Revert changes來撤消它們。

使用終端更改 Mac 上的文件權限

與 Finder 不同,使用終端更改文件和目錄權限有點複雜。 它需要熟悉終端命令並理解文件權限的字母和數字表示(或八進制權限符號)才能有效使用。

但是,一旦您熟悉了它,您就可以利用它提供的對權限的精細控制來有效地更改文件和目錄的權限。

也在 TechPP 上

這是讓您熟悉字母和數字權限表示的入門指南。

在 Unix 文件權限中,權限集由十一個字符組成。 其中,第一個字符標識該項目是文件還是目錄; 以下九個字符標識權限; 最後一個字符表示項目是否帶有擴展屬性。

談到它們的表示,第一個字符始終是連字符 ( ) 或字母 ( d ),其中連字符表示文件,而 d 表示目錄。

集合中接下來的九個字符分為三個組/類:用戶、組和其他。 這些組中的每一個都包含三個字符,這些字符被以下任何字符佔用:–(無權限)、 r (讀取)、 w (寫入)和x (執行)。

當放在一起時,這些字符形成以下權限:

  • 表示沒有讀、寫、執行權限。
  • r–僅顯示讀取權限。
  • rw-表示文件只能讀寫。
  • rwx表示該文件可以被讀取、寫入和執行。
  • rx表示該文件只能被讀取和執行。

另一方面,權限的數字表示將上述字符替換為數字。 它涉及使用總共八個數字,這就是它們所代表的含義:

  • 0 – 沒有權限
  • 1 – 執行
  • 2 – 寫
  • 3 – 執行和寫入
  • 4 – 閱讀
  • 5 – 讀取並執行
  • 6 – 讀寫
  • 7 – 讀、寫和執行

最後,權限表示法中的最後一個(第十一個)字符是@ 。 它被稱為擴展屬性,對於 macOS 上的特定文件和目錄是唯一的。

有了基礎知識,您可以藉助以下步驟在終端中設置文件或目錄權限:

打開終端應用程序——通過 Spotlight 搜索(命令 + 空格)或Finder > Applications > Terminal.app

導航到要修改其權限的目錄或文件。 為此,運行ls命令列出項目(文件和目錄)並cd進入它們。

進入所需目錄後,使用以下語法運行命令:

首先,讓我們通過運行來識別文件或目錄的當前權限:

ls -al file_name

change file permissions on Mac using Terminal

要更改所有類(用戶、組和其他)的讀、寫、執行權限,使用戶具有所有三個權限,組具有讀寫權限,其他只有讀權限,您需要使用chmod命令。 以下是有關如何使用它的不同語法:

chmod ugo+rwxrw-r-- file_name

在八進制權限表示法中,您將運行:

chmod 764 file_name

如果您在將權限從字母表示轉換為數字表示時遇到問題,您可以藉助 chmod 計算器進行快速轉換。

當您想為所有類提供讀寫訪問權限時:

chmod a+rw file_name

或者

chmod 666 file_name

當您要刪除組和其他人的執行權限時,請在終端窗口中運行以下命令:

chmod ug-x file_name

或者

chmod 766 file_name

為所有類啟用目錄中多個文件(相同類型)的讀取和寫入權限:

chmod a+rw *.txt

…其中標誌a用於針對所有三個類的用戶權限:用戶、組和其他。

或者

chmod 666 *.txt

當然,這些只是您可以使用終端更改 Mac 上的文件權限的幾個用例,還有許多其他場景可以派上用場。 而且,上面的示例應該可以幫助您在這種情況下更有效地理解和設置文件和目錄的權限。

在 Mac 上成功更改文件權限

如果您仔細閱讀了該指南,您應該對 macOS 上的各種文件和目錄權限有所了解。 隨後,根據您的喜好(基於命令的界面或圖形界面),您應該能夠相應地選擇一種方法來更改 Mac 上的文件權限。