Se o chown pode mudar de grupo, por que o chgrp foi criado?
23
Portanto, existe o chownque permite alterar o proprietário e o grupo de arquivos e / ou diretórios. Mas há também o chgrpque apenas muda de grupo. Por que foi chgrpcriado? Não é redundante?
chowninicialmente não foi possível definir o grupo. Posteriormente, algumas implementações o adicionaram como chown user.group, outras chown user:groupaté que finalmente foram padronizadas (ênfase minha):
O método 4.3 BSD de especificar o proprietário e o grupo foi incluído neste volume do POSIX.1-2008 porque:
Há casos em que a condição final desejada não pôde ser alcançada usando os utilitários chgrp e chown (que apenas alteraram o ID do usuário). (Se o proprietário atual não for membro do grupo desejado e o proprietário desejado não for membro do grupo atual, a função chown () poderá falhar, a menos que o proprietário e o grupo sejam alterados ao mesmo tempo.)
Mesmo que eles possam ser alterados independentemente, nos casos em que ambos estão sendo alterados, há uma penalidade de 100% no desempenho causada por ser forçado a invocar os dois utilitários.
Mesmo agora, chown :groupmudar apenas o grupo não é portátil ou padrão.
chown user:(para atribuir o grupo principal do userno banco de dados do usuário) também não é padrão.
@dayuloli, obrigado pela edição, mas eu não incluir essa seção da especificação, porque eu não entendo
Stéphane Chazelas
Boa pergunta! Voto a favor!
dayuloli
É bom ver que: group ans user: foram mencionados como não padrão. Muitas pessoas aqui verificam apenas o que o fornecedor local faz e isso não é útil em um portal UNIX genérico.
Respostas:
chown
inicialmente não foi possível definir o grupo. Posteriormente, algumas implementações o adicionaram comochown user.group
, outraschown user:group
até que finalmente foram padronizadas (ênfase minha):Mesmo agora,
chown :group
mudar apenas o grupo não é portátil ou padrão.chown user:
(para atribuir o grupo principal douser
no banco de dados do usuário) também não é padrão.fonte