Linux系統中的檔案和目錄都屬於某個人。您可以使用chown命令更改它們的所有權。我們教你怎麼做。
Linux是一個多使用者系統。作業系統允許定義多個使用者帳戶,並允許任何有效使用者登入到計算機。而且,多個使用者可以同時使用一臺計算機。
為了維護哪些檔案屬於哪個使用者的記錄並實施某種安全性,Linux使用了所有權的概念。每個檔案都屬於一個所有者—一個使用者和一個組。
建立檔案時,其所有者是建立該檔案的使用者。檔案屬於“擁有”組的組是使用者的當前組。使用者和組有名稱,它們也有數字標識,稱為使用者(或唯一)識別符號(UID)和組識別符號(GID)。
建立檔案時,它歸您所有,並且屬於您當前的組。通常,這是您已登入的組。預設情況下,這是一個與您的使用者名稱共享同一名稱的組,是在您作為系統上的使用者建立時建立的。
可以使用chown命令將所有權值更改為其他值。您可以設定新所有者、新組或同時設定新所有者和新組。檔案的所有者可以更改組所有權,但只有root使用者可以更改使用者所有權,因為這涉及到另一個使用者。如果沒有root許可權,就不能讓系統上的其他使用者無意中“採用”檔案。
以下是一些您可能希望這樣做的情況的示例:
要列出您所在的組,可以使用groups命令。
groups要獲取組的列表、它們的數字id以及您的UID和GID,請使用id命令:
id您可以使用一些ID為的選項來最佳化輸出。
要檢視檔案或目錄的所有者,請將-l(長列表)選項與ls一起使用。
ls -l我們可以看到dave這個名字在列表中出現了兩次。最左邊的外觀告訴我們檔案所有者是一個名為dave的使用者。最右邊的dave告訴我們這個檔案屬於一個也叫dave的組。
預設情況下,建立Linux使用者時,會將其新增到以使用者名稱命名的私有組中。他們是那個團體中唯一的成員。
此可執行檔案歸使用者mary所有,檔案所屬的組是mary的私有組。
ls -l此檔案歸使用者oscar所有,但該檔案所屬的組稱為researchlab。這意味著researchlab組的其他成員可以根據為該組成員設定的檔案許可權訪問此檔案。
我們來舉幾個例子。此命令將把while.c檔案的使用者所有權更改為使用者mary。
sudo chown mary while.c我們可以使用ls來檢視對檔案屬性的更改。
ls -l while.c可以使用chown一次更改多個檔案的所有權。
sudo chown mary getval.c global.c goto.c這將更改所有三個檔案的使用者所有權。
ls -l getval.c global.c goto.c可以使用萬用字元選擇檔案組。此命令將更改以字母“c”開頭的所有檔案的使用者所有權
sudo chown mary c*.*所有的檔案現在都將有瑪麗作為它們的所有者。請注意,沒有更改任何組所有權。
ls -l mary c*.*讓我們更改目錄的所有權。我們只需將目錄名傳遞給chown而不是檔名。
sudo chown mary ./archive/要檢查目錄的所有權屬性,我們使用ls,但也要使用-d(directory)選項。這將列出目錄的屬性,而不是其中的檔案。
ls -l -d ./archive/要更改目錄中所有檔案的所有權,可以使用-R(遞迴)選項。此選項將更改存檔資料夾中所有檔案的使用者所有權。
sudo chown -R mary ./archive/現在讓我們看看歸檔目錄中的檔案。
ls -l ./archive/不出所料,所有的檔案現在都屬於瑪麗了。
有不同的方法可以更改組所有權。
要在更改使用者所有權的同時更改組所有權,請用冒號“:”分隔新所有者名稱和新組名稱。組必須已存在。
sudo chown mary:researchlab charm.c檔案所屬的使用者所有者和組都已更改。
ls -l charm.c要將組所有權更改為新所有者的當前組,只需提供冒號並省略組名。
sudo chown mary: caps.cls -l caps.c使用者所有權和組所有權都已更改為mary。
要僅更改組所有權,請在其前面加一個冒號並省略使用者名稱。不會更改使用者所有者。
sudo chown :researchlab at.cls -l at.c組所有權已更改,但使用者所有權保持不變。
可以透過chown命令使用數字UID和GID值。此命令將使用者和組的所有權設定為mary。
sudo chown 1001:1001 at.cls -l at.c或者他們這麼說。但在Linux中,所有權是檔案安全的一個重要部分,其餘部分由檔案許可權提供。使用chown和chmod命令保護系統上的檔案訪問。
...。然而,在此之前,值得考慮的是第六種選擇,以及它是如何絕對錯誤的方式。 ...
... 在您真正充分利用終端之前,您需要知道如何導航它。這就是為什麼我們認為這些是最基本的Linux命令:如果你不能更改目錄或者在一個你不記得如何使用的命令上獲得幫助,那麼再多的終端知識也幫不了你。 ...
... 在本文中,我將向您展示如何在Linux上安裝、執行和使用PowerShell! ...
...(可能是與數碼相機一起使用的裝置)時,系統會提示您如何繼續操作。為了方便起見,我喜歡將裝置開啟到檔案管理器中。 ...
... 下面介紹如何在本地和web上的Raspberry Pi和宿主網站上設定Apache、MySQL和PHP。 ...
... 無論如何,要學習的最基本的Linux命令之一是一個稱為chmod的小而強大的命令。但是在解釋這個命令的作用之前,我們必須先了解一下Linux是如何處理檔案安全的。 ...
想在Linux系統上新增使用者但不知道如何新增?在Linux上使用命令列介面管理使用者無疑是一項複雜的工作。而對於初學者來說,即使新增新使用者也是一場噩夢。 ...
...改其目錄,您可以控制他們可以訪問哪些命令。下面介紹如何在Linux上設定受限shell。 受限炮彈 受限shell不是另一個shell。這是標準外殼的另一種模式。Bash、Korn、Fish和其他shell都可以在受限shell模式下啟動。在本文中,我們將...
...用,不需要對檔案系統有詳細、低階的瞭解。讓我們看看如何使用它! 相關:你想知道的關於Linux上inodes的一切 安裝測試盤 要在Ubuntu上安裝testdisk,請使用以下命令: sudo apt-get install testdisk 在Fedora上,您需要鍵入: sudo dnf insta...