chown命令範例


chown將指定檔案的擁有者改為指定的使用者或組,使用者可以是使用者名或者使用者ID;組可以是組名或者組ID;檔案是以空格分開的要改變許可權的檔案列表,支援萬用字元。系統管理員經常使用chown命令,在將檔案拷貝到另一個使用者的名錄下之後,讓使用者擁有使用該檔案的許可權。

1.命令格式

chown [選項]... [所有者][:[組]] 檔案...

2.命令功能

通過chown改變檔案的擁有者和群組。在更改檔案的所有者或所屬群組時,可以使用使用者名稱和使用者識別碼設定。普通使用者不能將自己的檔案改變成其他的擁有者。其操作許可權一般為管理員。

3.命令引數:

必要引數:

  • -c 顯示更改的部分的資訊
  • -f 忽略錯誤資訊
  • -h 修復符號連結
  • -R 處理指定目錄以及其子目錄下的所有檔案
  • -v 顯示詳細的處理資訊
  • -deference 作用於符號連結的指向,而不是連結檔案本身

選擇引數:

  • --reference=<目錄或檔案> 把指定的目錄/檔案作為參考,把操作的檔案/目錄設定成參考檔案/目錄相同擁有者和群組
  • --from=<當前使用者:當前群組> 只有當前使用者和群組跟指定的使用者和群組相同時才進行改變
  • --help 顯示幫助資訊
  • --version 顯示版本資訊

4.使用範例

範例1:改變擁有者和群組

命令:

chown yiibai:yiibai newfile.txt

輸出:

[root@localhost scripts]# ll
total 4
-rw-r--r--. 1 root   root   11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.sh
[root@localhost scripts]#  chown yiibai:yiibai newfile.txt
[root@localhost scripts]# ll
total 4
-rw-r--r--. 1 yiibai yiibai 11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.sh
[root@localhost scripts]

範例2:改變檔案擁有者和群組

命令:

chown root: newfile.txt

輸出:

[root@localhost scripts]# ll
total 4
-rw-r--r--. 1 yiibai yiibai 11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.sh
[root@localhost scripts]# chown root: newfile.txt
[root@localhost scripts]# ll
total 4
-rw-r--r--. 1 root   root   11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.sh
[root@localhost scripts]#

範例3:改變檔案群組

命令:

chown :yiibai newfile.txt

輸出:

[root@localhost scripts]# ll
total 4
-rw-r--r--. 1 yiibai nobody 11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.sh
[root@localhost scripts]# chown :yiibai newfile.txt
[root@localhost scripts]# ll
total 4
-rw-r--r--. 1 yiibai yiibai 11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.sh
[root@localhost scripts]#

範例4:改變指定目錄以及其子目錄下的所有檔案的擁有者和群組

命令:

chown -R -v root:yiibai scripts/

輸出:

[root@localhost yiibai]# ll scripts/
total 4
-rw-r--r--. 1 yiibai yiibai 11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 yiibai nobody  0 Feb 17 02:10 run.sh
[root@localhost yiibai]# chown -R -v root:yiibai scripts/
changed ownership of ‘scripts/run.py’ from yiibai:nobody to root:yiibai
changed ownership of ‘scripts/run.sh’ from yiibai:nobody to root:yiibai
changed ownership of ‘scripts/run.pl’ from yiibai:nobody to root:yiibai
changed ownership of ‘scripts/newfile.txt’ from yiibai:yiibai to root:yiibai
changed ownership of ‘scripts/’ from yiibai:nobody to root:yiibai
[root@localhost yiibai]# ll scripts/
total 4
-rw-r--r--. 1 root yiibai 11 Feb 17 02:38 newfile.txt
-rw-rw-r--. 1 root yiibai  0 Feb 17 02:11 run.pl
-rw-rw-r--. 1 root yiibai  0 Feb 17 02:10 run.py
-rw-rw-r--. 1 root yiibai  0 Feb 17 02:10 run.sh
[root@localhost yiibai]#