Wenn chown Gruppen ändern kann, warum wurde chgrp erstellt?

23

So gibt es mit chowndem Sie den Besitzer und die Gruppe von Dateien ändern und / oder Verzeichnissen. Aber es gibt auch chgrpwelche, die nur die Gruppe verändern. Warum wurde chgrpgeschaffen? Ist es nicht überflüssig?

Dayuloli
quelle
Sie können auf den Link hier verweisen, um weitere Informationen zu erhalten. serverfault.com/questions/462174/…
Ramesh

Antworten:

36

chownAnfangs konnte die Gruppe nicht festgelegt werden. Später wurde es von einigen Implementierungen als hinzugefügt chown user.group, einige als, chown user:groupbis es schließlich standardisiert wurde (Schwerpunkt meiner):

Die 4.3 BSD-Methode zur Angabe von Eigentümer und Gruppe wurde in diesen Band von POSIX.1-2008 aufgenommen, weil:

Es gibt Fälle, in denen die gewünschte Endbedingung mit den Dienstprogrammen chgrp und chown (die nur die Benutzer-ID geändert haben) nicht erreicht werden konnte. (Wenn der aktuelle Besitzer kein Mitglied der gewünschten Gruppe und der gewünschte Besitzer kein Mitglied der aktuellen Gruppe ist, kann die Funktion chown () fehlschlagen, sofern nicht sowohl der Besitzer als auch die Gruppe gleichzeitig geändert werden.)

Selbst wenn sie unabhängig voneinander geändert werden könnten, besteht in Fällen, in denen beide geändert werden, eine 100% ige Leistungsbeeinträchtigung, da beide Dienstprogramme aufgerufen werden müssen.

Selbst jetzt chown :groupist es nicht üblich oder üblich , nur die Gruppe zu ändern.

chown user:(um die primäre Gruppe der userin der Benutzerdatenbank zuzuweisen ) ist auch nicht Standard.

Stéphane Chazelas
quelle
2
@dayuloli, danke für die Bearbeitung, aber ich habe diesen Abschnitt der Spezifikation nicht aufgenommen, weil ich es nicht verstehe
Stéphane Chazelas
Gute Frage! Upvoted!
Dayuloli
Schön zu sehen, dass: group und user: als nicht standard erwähnt wurden. Viele Leute hier überprüfen nur, was ihr lokaler Anbieter tut, und dies ist in einem generischen UNIX-Portal nicht hilfreich.
Schily