Command Palette

Search for a command to run...

Chmod 權限如何運作:755、644 和 Octal

Chmod 權限如何運作:755、644 和 Octal

T
Toolz Team
|Sep 13, 2026|15 閱讀
在 Google 上首選 Toolz。dev

編碼 系列的一部分

Chmod 計算器

在八進位、符號和 rwx 複選框之間轉換 Unix 檔案權限。切換所有者、群組和其他人的讀取、寫入和執行,加上 setuid、setgid 和 sticky,並複製 chmod 指令 - 所有這些都在您的瀏覽器中。

使用Chmod 計算器

當我第一次將自己鎖定在生產伺服器上的檔案之外時,我正在遵循一個教學,其中說 "將其設為 600"沒有解釋 600 的含義。我輸入了命令,部署腳本無法再讀取該文件,我花了二十分鐘才發現我已經刪除了 Web 伺服器進程所需的群組讀取存取權限。對於私鑰來說,這個數字並沒有錯。對於該文件來說這是錯誤的,而且我沒有直覺地知道原因,因為我將許可視為魔法咒語而不是我理解的值。

Unix 檔案權限是那些看起來令人生畏的主題之一,一旦有人畫出圖片就很簡單。三類使用者、三種存取權限以及將複選框轉換為數字的少量算術 chmod 期望。問題是這兩種表示法,數字模式就像 755 還有符號模式之類的 rwxr-xr-x,看起來一點也不相似,在你的腦海中轉換它們是一項沒人喜歡練習的技能。

的 Chmod 計算器 為您進行轉換,更有用的是,同時顯示所有三個視圖。切換複選框和八進制數、符號字串和準備運行的字串 chmod 一起命令所有更新。我希望我破解部署的那一天就使用這個工具,因為同時從三個角度看到權限可以建立單一數字永遠不會的直覺。

TL;DR: Unix 權限涵蓋三個類別(所有者、群組、其他),每個類別有 3 位元(讀取=4、寫入=2、執行=1)。像 755 這樣的數字模式會將這些值加到每個類別;像 rwxr-xr-x 這樣的符號模式會將它們拼出來。此計算器即時在八進位、符號和 rwx 複選框之間進行轉換,處理 setuid、setgid 和黏性特殊位,並產生精確的 chmod 指令。它完全在您的瀏覽器中運行,無需註冊。

chmod 計算器解決了什麼問題?

核心困難在於同一個權限有兩個面,視覺上沒有相似之處。文件和 ls -l 給你看 rwxr-xr-x. 的 chmod 命令通常想要 755. 在它們之間移動需要透過將讀取、寫入和執行相加來將每個三個字母組轉換為數字,並且在壓力下在伺服器上可靠地執行此操作,只需在距離鎖定一鍵之遙的情況下進行拼字錯誤,這正是當一個人犯錯。

計算器消除了算術,同樣重要的是,消除了歧義。當你看到這一點時 755 是 rwxr-xr-x 是&引用;所有者:讀、寫、執行;群組和其他人:讀、執行和引用;權限不再是您記住的數字,而是成為您可以閱讀的聲明。這就是從教學中複製模式和了解該模式是否適合您的文件之間的區別。

還有一個安全角度。權限是少數小錯誤會產生重大後果的事情之一。設定私鑰 644 盒子上的任何用戶都可以閱讀它。設定一個網路目錄 777 你已經把寫世界的訪問權交給了你。一個用簡單的英語闡明模式允許什麼的工具,就在數字旁邊,是在提交更改之前而不是在造成事件之後進行的理智檢查。同樣的隱私優先、先懂後懂的心態貫穿其中 資料隱私線上工具 指南,它既適用於權限,也適用於您貼上到表單中的任何內容。

Unix 檔案權限如何運作?

POSIX 系統上的每個檔案和目錄都承載三類使用者的權限。所有者是擁有該文件的帳戶。該群組是一組共享存取等級的命名使用者。其他人是系統上的其他人。這三個類別中的每一個都有三個獨立的位元:讀取、寫入和執行。

這些位元的含義在檔案和目錄之間略有不同,這是一個讓人絆倒的細節。在檔案上,read 讓您查看內容,write 讓您更改內容,executive 讓您將檔案作為程式運行。在目錄上,read 讓您列出條目,write 讓您建立和刪除其中的條目,executive 讓您輸入目錄並按名稱存取其中的檔案。這就是為什麼目錄幾乎總是需要為任何應該能夠使用它進行類別的執行位元集,即使"執行目錄"聽起來很奇怪。計算器將九位中的每一位映射到複選框,這樣您就可以一目了然地看到全圖並準確地切換您想要的存取權限。

八進制權限數是如何計算的?

這是一次值得理解的算術,因為之後數字就會自行讀取。在每個類別中,讀取值為 4,寫入值為 2,執行值為 1。選擇這三個值是因為它們是 2 的冪,這意味著每個組合加起來就是 0 到 7 之間的唯一總數。這是完整的映射。

八進制數字 二進制 象徵性的 意義
7 111 rwx 讀、寫、執行
6 110 rw- 讀,寫
5 101 rx 閱讀,執行
4 100 r- 只讀
3 011 -wx 寫,執行
2 010 -w- 只寫
1 001 --x 僅執行
0 000 - - 無法訪問

完整模式是訂單擁有者、群組、其他數字中的三位。所以 755 讀作所有者 7(讀、寫、執行)、第 5 組(讀、執行)、其他 5(讀、執行)。計算器在兩個方向上進行此加法:選取方塊並觀看數字出現,或鍵入數字並觀看方框填寫。在工具中執行幾次會使上面的表格不再是您查找的內容,而是成為您知道的內容。

chmod 755 和 chmod 644 是什麼意思?

這是您將比其他任何模式使用得更多的兩種模式,因此它們值得記住,而計算器是了解為什麼每種模式都是其工作預設模式的最快方法。

chmod 755 給予所有者完全存取權限(讀取、寫入、執行),並給予群組和其他人讀取和執行。這是目錄、腳本或程式的標準模式,每個人都應該能夠運行,但只有所有者才能更改。群組和其他群組上的執行位元允許其他使用者進入目錄或執行腳本。

chmod 644 給予所有者讀寫,並給予群組和其他人只讀,在任何地方都不執行。它是常規文件(例如 HTML 頁面、圖像、應該具有世界可讀性的配置)和原始文件(所有者編輯且其他人只需要閱讀)的標準模式。沒有理由讓純文字檔案可執行,因此 644 忽略了這一點。

需要注意的模式是目錄和可執行檔得到 755,而普通檔案得到 644,唯一的區別是執行位元。在計算器中並排查看這兩種模式以及符號字串 rwxr-xr-x 和 rw-r--r-- 在下面,以一種記住兩個數字永遠不會做到的方式使這種關係變得明顯。

setuid、setgid 和黏性位元是什麼?

除了九個標準位元之外,還有三個特殊位,由模式前面的可選第四位數字設置,它們是權限真正變得微妙的地方。計算器將每個數字公開為自己的複選框,並將結果折疊為主八進位數字和符號字串,完全相同 ls -l 顯示它們。

setuid 位元在特殊數字中值 4,它以其所有者而不是啟動它的用戶的權限進行可執行檔運行。經典的例子是 passwd 命令,需要寫入普通使用者無法觸及的系統檔案。在符號清單中,setuid 將擁有者's 執行字元變成 s,所以 755 隨著 setuid 成為 rwsr-xr-x 並且模式被寫入 4755.

setgid 位元值為 2,對群組執行相同的操作,並且在目錄上執行額外的操作:在內部建立的新檔案繼承目錄's 組而不是創建者's 主組,這是共享項目資料夾需要的內容。它顯示為 s 在組's中執行位置。

黏性位值為 1,主要適用於目錄。設定後,只有一個檔案's 所有者可以刪除或重新命名目錄內的文件,即使其他人對該目錄有寫入存取權限。這就是保留的內容 /tmp 可用作共享暫存空間,使用者無需相互刪除's 檔案。它顯示為 t 在其他'執行位置,因此是全域可寫臨時目錄 1777,或者 rwxrwxrwt. 當設定特殊位元但底層執行位元關閉時,該字母大寫, S 或者 T,計算器準確地再現這一點,使其輸出始終與真實清單相符。

數字模式和符號模式有什麼差別?

兩者描述相同的權限;它們只是兩種符號,知道何時使用每種符號可以節省摩擦。數字模式,八進制數字喜歡 755,緊湊且絕對。它一次設定每一位,這就是為什麼它是您看到的大多數形式的原因 chmod 範例和部署腳本。符號模式,字母喜歡 rwxr-xr-x,是什麼 ls -l 列印,因此它是您檢查系統時閱讀的表格。

符號表示法也有一個相對形式 chmod 接受並且計算器不需要生成但值得知道: chmod u+x file 新增了為所有者執行而不觸及任何其他內容,並且 chmod go-w file 從群組和其他位置刪除寫入。當您想要更改一位並留下其餘的時,該相對形式在命令列上很方便。計算器以絕對模式進行處理,當您決定檔案和#39;s 權限應該是正確的模型,而不是推動一位,它為您提供要鍵入的八進制和要驗證反對的符號 ls -l 之後。對於權威行為,POSIX 規範 chmod 檔案模式位元是主要參考。

計算器如何保持每個視圖同步

該工具背後的設計原則是,有一個真實來源,即權限位集,並且每個表示都從中導出。切換複選框以及八進位、符號、命令和純英語描述,所有這些都從同一狀態重新計算。輸入有效的八進位或符號值以及位元更新,該更新會流回所有其他視圖。這意味著這三個符號永遠不會有分歧,這就是全部要點:可以顯示的轉換器 755 靠近錯誤的符號字串比手工數學更糟。

簡單的英語摘要是我發現自己閱讀最多的部分。它每堂課都拼出一行,準確說明當前模式允許的內容,並用文字標記任何特殊位元。在對真實系統應用權限之前,該句子是檢查我輸入的內容和我所指的內容之間差異的檢查。在我使用的其他開發人員實用程式旁邊保留一個快速、可靠的轉換器,如下所示 base64 轉換器 和 哈希生成器 其中,是 中描述的工作流程的一部分 開發人員生產力工具 指南,以及更廣泛的收藏 編碼工具指南.

獲得正確權限的快速工作流程

以下是我在實踐中使用該工具的方式。當教學或錯誤訊息給我一種模式時,我將八進位貼到計算器中並閱讀純英語摘要以確認它滿足上下文需求。當我從頭開始設定權限時,我會從接近我想要的預設開始 644 對於文件或 755 對於目錄或腳本,然後切換各個位元並觀看描述更新,直到它準確地表達了我的意圖。然後我複製生成的內容 chmod 命令並運行它。整個循環需要幾秒鐘的時間,自從我停止猜測數字以來,它讓我免於多次停擺。

預設涵蓋了每天出現的模式,特殊位元複選框適用於您確實需要在共用目錄上設定 gid 或在臨時資料夾上使用黏性位元的罕見情況。如果您還在同一伺服器上使用 JSON、YAML 和其他格式,則 JSON 格式化程式 和 CSS 格式化程式 完善了一組小型客戶端實用程序,使日常工作更快。

常見問題

什麼是 chmod 計算器?

chmod 計算器在數字八進位模式、符號 rwx 字串以及單獨的讀取、寫入和執行設定之間轉換 Unix 檔案權限。它為您提供所需的權限的精確 chmod 命令,無需手動八進位數學。

chmod 755 是什麼意思?

chmod 755 為所有者提供讀取、寫入和執行 (7),以及群組和其他人讀取和執行 (5 和 5)。這是腳本和目錄的常見模式:所有者可以更改它們,其他人都可以運行或輸入它們,但不能修改它們。

chmod 644 是什麼意思?

chmod 644 為所有者提供讀寫 (6),而群組和其他人僅讀取 (4 和 4)。它是常規文件的標準模式,應由其所有者編輯並由其他人讀取。

八進制權限數是如何計算的?

每個權限類別都是透過新增讀取(4)、寫入(2)和執行(1)而建構的一個八進位數字。因此,7 是讀取、寫入和執行,6 是讀取和寫入,5 是讀取和執行,4 是僅讀取。這三位數字依序為所有者、群組和其他數字。

setuid、setgid 和黏性位元是什麼?

它們是由第四個前導八進位數字設定的特殊權限位元。 setuid (4) 以所有者權限運行文件,setgid (2) 以群組權限運行文件或在目錄上共享群組,而黏性位元 (1) 只允許檔案擁有者在共用目錄內刪除它。

數字模式和符號模式有什麼差別?

數字模式使用八進制數字,如 755。符號模式使用字母,如 rwxr-xr-x,與 ls -l 清單相符。它們描述相同的權限;此工具會在它們之間進行轉換,以便您可以使用文件或命令期望的任何內容。

Chmod 計算器在行動裝置上運作嗎?

是的。該工具響應迅速,可在手機、平板電腦和桌面上的任何現代瀏覽器中使用。無論您使用什麼設備,轉換都是相同的。

Chmod 計算器免費嗎?

是的。它是完全免費的,沒有註冊、沒有浮水印、沒有使用限制。所有轉換都發生在您的瀏覽器中,並且沒有任何內容發送到伺服器。

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!