程式 : chown



(a) 所在系統與路徑

系統 : RedHat 7.0 (Linux kernel 2.2.17-14)
路徑 : /bin/



(b) 使用的 shared library

/lib/libc.so.6
/lib/ld-linux.so.2



(c) 主要用途說明

chown 可以改變一個檔案的 owner 或是 group. 每個檔案都有其所屬的使用者或群組, chwon 可以改變這些設定值.

chown 主要有以下幾種用法 :  
$ chown [OPTIONS] OWNER FILE
$ chown [OPTIONS] OWNER:GROUP FILE
$ chown [OPTIONS] OWNER: FILE
$ chown [OPTIONS] :GROUP FILE

其中 [OPTIONS] 為參數, 將在下一小節說明, FILE 為我們所要修改的檔案, OWNER 與 GROUP 則是新的擁有者或群組的名字. 在第一到三種用法中, FILE 的擁有者都會被改為 OWNER; 第二種用法中, FILE 的擁有群組會被改為 GROUP; 第三種用法中, FILE 的擁有群組會被改為下該指令的使用者所屬的群組. 最後, 第四種用法中, FILE 的擁有者不會改變, 擁有群組則改為 GROUP, 此時的功能與 chgrp 一樣. 另外, OWNER 和 GROUP 可以是某個使用者或群組的名字, 也可以是他們的數字ID.



(d) 所支援的參數及其意義

-c, --changes
當檔案的 owner 和 group 真的有被改變時, 會出現執行的說明訊息.

--dereference
若我們使用 chown 的對象是一個 symbolic link 時, 這個參數會使 symbolic link 所指到的檔案的設 定值被改變, 而非改變該 link 本身的設定值. (?)

-h, --no-dereference
若我們使用 chown 的對象是一個 symbolic link 時, 這個參數會使 symbolic link 所本身的設 定值被改變, 而非改變該 link 所指到的檔案. (?)

-f, --silent, --quiet
這個參數會使大多數的錯誤訊息被隱藏.

--reference=RFILE
RFILE是一個檔案名稱. 這個用法把目標檔案的 owner 和 group, 改為 RFILE 的 woner 和 group.

-R, --recursive
若我們使用 chown 的對象是一個目錄時, 這個參數會使所有隸屬於該目錄下檔案、子目錄(也包 括了子目錄下的檔案、子目錄, 以此類推)的設定值全都被改變.

-v, --verbose
會出現執行的說明訊息.

--help
顯示 chown 的使用說明.

--version
顯示 chown 的版本資訊.



(e) 使用範例

$ chown -v is87009 chap1.pdf
owner of chap1.pdf retained as is87009 (出現說明訊息)

$ chown -c is87009 chap1.pdf
(沒有改變, 所以不出現說明訊息)

$ chown --version
chown (GNU fileutils) 4.0