Linux運維基礎之chown命令詳解

Linux運維基礎之chown命令詳解

chown 命令是 “Change Owner” 的縮寫,用於更改系統中檔案、目錄和符號連結的所有者和組。

要更好地理解它的功能,必須知道在 Linux 中,每個檔案和目錄都被分配了三種所有者屬性:

  • User:使用者是檔案的所有者、
  • Group:包括檔案所在組的其他使用者,以及 、
  • Others:不在檔案組中的使用者。

每個類別都有不同的讀取、寫入和執行檔案的許可權級別。

使用 chown 命令可以更改檔案或目錄的使用者和組所有權。

chown 通常需要管理員(root)許可權才能執行。如果你不是以 root 身份登入,可能需要在命令前使用 sudo,如 sudo chown user:group filename ,才能進行更改。

下面是一些使用 chown 命令的方法:

1. 更換所有者

更改所有者的基本語法是 chown owner filename

示例 :

要將名為 file.txt 的檔案的所有者更改為 user1,可以使用:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
chown user1 file.txt
chown user1 file.txt
chown user1 file.txt

2. 更改所有者和組

您可以同時更改所有者和組,方法是用 :(冒號)分隔所有者和組。

示例 :

要將 file.txt 的所有者更改為 user1 ,將 group 更改為 group1 ,可以使用:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
chown user1:group1 file.txt
chown user1:group1 file.txt
chown user1:group1 file.txt

3. 更改目錄及其內容的所有者

使用 -R(或 --recursive)選項可以更改目錄及其所有內容的所有者。

示例:

要將名為 dir 的目錄及其所有內容的所有者更改為 user1,可以使用:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
chown -R user1 dir
chown -R user1 dir
chown -R user1 dir

4. 更改目錄中所有檔案的所有者

要更改目錄中所有檔案的所有者,而不更改目錄本身或任何子目錄的所有者,可以使用 * 萬用字元。例如

示例:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
chown user1 dir/*
chown user1 dir/*
chown user1 dir/*

5. 只更改組

如果要更改組而不更改所有者,可以在組的字首加上 :(冒號)。例如

示例:

要將 file.txt 的組更改為 group1,可以使用:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
chown :group1 file.txt
chown :group1 file.txt
chown :group1 file.txt

6. 將所有者和組更改為登入使用者

您可以將檔案或目錄的所有者和組更改為登入使用者,而無需指定使用者名稱。

示例:

Plain text
Copy to clipboard
Open code in new window
EnlighterJS 3 Syntax Highlighter
chown $USER:$USER file.txt
chown $USER:$USER file.txt
chown $USER:$USER file.txt

更多 Linux 命令

下面羅列了最常見的一些 Linux 命令,您可以根據自己的需要查閱對應命令的詳細解析:

目錄操作 rmdir · cd · pwd · exa · ls
檔案操作 cat · cp · dd · less · touch · ln · rename · more · head
檔案系統操作 chown · mkfs · locate
網路 ping · curl · wget · iptables · mtr
搜尋和文字處理 find · grep · sed · whatis · ripgrep · fd · tldr
系統資訊和管理 env · history · top · who · htop · glances · lsof
使用者和會話管理 screen · su · sudo · open

此外,我們還整理 Linux 命令列大全,以幫助大家全面深入地學習 Linux。

評論留言