chown,全名 change owner,是一個在 Linux 系統中很有用的指令,主要是用來變更檔案或目錄的權限。這個指令讓你可以更改檔案或目錄的擁有者,也就是誰可以對它進行操作,以及所屬的群組,讓不同的使用者可以一起共享資源。
如果你想要對某個檔案或目錄進行權限的調整,這是一個相當方便的工具。讓我們來看一下它的使用方法和一些常見的選項:
chmod [選項] [使用者:群組] 檔案或目錄
-c, --changes
:效果類似 -v
,但只顯示更改的部分。-f, --silent, --quiet
:不顯示錯誤訊息,運作在安靜模式。-v, --verbose
:顯示指令執行的過程。--dereference
:效果和 -h
參數相同。-h, --no-dereference
:只對軟連結的檔案進行修改,不更動其他相關檔案。--from=CURRENT_OWNER:CURRENT_GROUP
:確認修改前的擁有者和群組正確才進行修改。--no-preserve-root
:不特別對待根目錄 '/'
(預設行為)。--preserve-root
:遞迴地在根目錄 '/'
上操作會失敗。--reference=RFILE
:把指定檔案或目錄的擁有者和群組都設成和參考檔案或目錄一樣。-R, --recursive
:遞歸地處理,將指定目錄下的所有檔案和子目錄一併處理。-H
:如果命令行參數是一個指向目錄的符號連結,則遞迴處理它。-L
:遞歸處理每個指向目錄的符號連結。-P
:不遞歸處理任何符號連結(預設行為)。chown alan file1
2. 將檔案或目錄修改所屬群組
chown :alangroup file1
3. 同時修改擁有者及所屬組
chown alan:alangroup file1
4. 遞歸修改整個資料夾裡的所有檔案
chown -R alan:alangroup dir
5. 顯示執行結果
chown -v alan:alangroup file1
6. 不顯示錯誤訊息
chown -f alan:alangroup file1
7. 參考文件屬性進行修改
chown --reference=reffile file1
8. 事先確認擁有者與群組在進行修改
chown --from=root:root alan:alangroup file1
9. 只確認擁有者或是群組
# 只確認擁有者
chown --from=root alan:alangroup file1
# 只確認所屬組
chown --from=:root alan:alangroup file1