linux command

chown

Linux Command – chown ใช้ในเปลี่ยนเจ้าของ file หรือ directory รวมทั้ง file owner และ group owner

 

คำสั่ง

1. เปลี่ยนเจ้าของ file

chown <user> <filename>

$ ls -ltr test
-rwx------ 1 root root 0 May 7 00:22 test
$ chown games test
$ ls -ltr test
-rwx------ 1 games root 0 May 7 00:22 test

 

2. เปลี่ยน group เจ้าของ file

chown <:group> <filename>

$ ls -ltr test
-rwx------ 1 games root 0 May 7 00:22 test
$ chown :staff test
$ ls -ltr test
-rwx------ 1 games staff 0 May 7 00:22 test

 

3. เปลี่ยนเจ้าของทั้ง directory

chown -R <user:group> <directory>

$ ls -ltr
drwxrwxrwx 2 root root 4096 May 7 00:22 testdir
$ ls -ltr testdir
total 0
-rwxrwxrwx 1 root root 0 May 7 00:22 test1
-rwxrwxrwx 1 root root 0 May 7 00:22 test2
$ chown -R games testdir
$ ls -ltr testdir
total 0
-rwxrwxrwx 1 games root 0 May 7 00:22 test1
-rwxrwxrwx 1 games root 0 May 7 00:22 test2

 

โครงสร้างคำสั่ง

 chown [OPTION]... [OWNER][:[GROUP]] FILE...
 chown [OPTION]... --reference=RFILE FILE...

 

รายละเอียด

คำสั่งที่ใช้งานการเปลี่ยนเจ้าของ file หรือ directory ซึ่งถ้ากำหนดเพียงแค่ username หรือ user ID คำสั่งจะเปลี่ยนให้ owner  เป็น username ที่ระบุ แต่ถ้ามีการระบุในส่วนของ group name หรือ group ID เพิ่มด้วยการใส่ colon (:) เช่น “staff:team” แบบนี้จะหมายความว่า เปลี่ยนเจ้า file ให้เป็นของ user staff และเปลี่ยน group owner เป็นของ team  แต่ถ้าระบุแต่ group name แต่ไม่ใส่ username ด้วยเช่น “:team” ใช้งานในลักษณะเดียวกับ chgrp คือเปลี่ยนแต่ group owner เป็น team แทน แต่เจ้าของ file ยังเป็น user เดิมต่อไป

 

Option

 -c, --changes
 like verbose but report only when a change is made

 -f, --silent, --quiet
 suppress most error messages

 -v, --verbose
 output a diagnostic for every file processed

 --dereference
 affect the referent of each symbolic link (this is the default), rather than the symbolic link itself

 -h, --no-dereference
 affect symbolic links instead of any referenced file (useful only on systems that can change the ownership of a symlink)

 --from=CURRENT_OWNER:CURRENT_GROUP
 change the owner and/or group of each file only if its current owner and/or group match those specified here. Either may be omitted, in which case a match is not required
 for the omitted attribute

 --no-preserve-root
 do not treat '/' specially (the default)

 --preserve-root
 fail to operate recursively on '/'

 --reference=RFILE
 use RFILE's owner and group rather than specifying OWNER:GROUP values

 -R, --recursive
 operate on files and directories recursively

 The following options modify how a hierarchy is traversed when the -R option is also specified. If more than one is specified, only the final one takes effect.

 -H if a command line argument is a symbolic link to a directory, traverse it

 -L traverse every symbolic link to a directory encountered

 -P do not traverse any symbolic links (default)

 --help display this help and exit

 --version
 output version information and exit

 Owner is unchanged if missing. Group is unchanged if missing, but changed to login group if implied by a ':' following a symbolic OWNER. OWNER and GROUP may be numeric as well as
 symbolic.

 

กลุ่มคำสั่ง

chown(2)

 

Reference:

Linux, Unix

 

Author: Suphakit Annoppornchai

Credit: https://saixiii.com

One Thought to “chown -Linux Command คำสั่งเปลี่ยนเจ้าของ file หรือ directory”

Leave a Reply