History

如果 chown 可以更改組,為什麼要創建 chgrp?

  • September 22, 2021

因此chown,您可以更改文件和/或目錄的所有者和組。但也chgrp有隻改變組的。為什麼被chgrp創造?不是多餘的嗎?

chown最初無法設置組。後來,一些實現將其添加為chown user.group,一些chown user:group直到最終標準化(強調我的):

指定所有者和組的 4.3 BSD 方法包含在本卷 POSIX.1-2008 中,因為:

在某些情況下,使用 chgrp 和 chown(僅更改使用者 ID)實用程序無法實現所需的結束條件。(如果目前所有者不是所需組的成員,並且所需所有者不是目前組的成員,則 chown() 函式可能會失敗,除非同時更改所有者和組。)

即使它們可以獨立更改,在兩者都被更改的情況下,由於被迫呼叫這兩個實用程序會導致 100% 的性能損失。

即使是現在:

  • chown :group只改變組是不可移植的或標準的。
  • chown user:在使用者數據庫中分配主組user也不是標準的。

引用自:https://unix.stackexchange.com/questions/136987