Por que usar os comandos chown e chgrp?

4

Entendo, no entanto, que os comandos chown e chgrp não entendem por que você gostaria de usá-los além de atribuir a propriedade a outro usuário ou grupo? Isso é para fins de segurança ou por algum outro motivo?

    
por PeanutsMonkey 27.03.2012 / 21:33

4 respostas

12

Linux ou outros sistemas de estilo Unix são construídos como sistemas multi-usuário.

Você precisa entender que, nesse conceito, não apenas pessoas singulares contam como usuários, daemons ou outros programas que podem ser executados como seus próprios usuários.

Por exemplo: faz sentido criar um usuário dedicado para o serviço apache, se você deseja executar um servidor da web. Desta forma, o apache não pode corromper arquivos para os quais ele não tem permissão, principalmente porque ele não possui diretamente os arquivos nem está em nenhum grupo em que o usuário esteja.

Basicamente, você separa o acesso aos arquivos, atribuindo vários grupos aos usuários, e você pode definir especificamente quem e como eles podem acessar certos arquivos.

Btw chown :group /path/file faz a mesma coisa que chgrp , observe os dois pontos na frente do nome do grupo, usando chown user:group /path/file você pode fazer os dois.

Devo acrescentar que as permissões de arquivo precisam ser definidas de acordo. Usando chmod , você pode definir os sinalizadores de permissão (ler, gravar, executar) nos arquivos para usuário, grupo e mundo.

    
por 27.03.2012 / 21:49
1

Você entendeu exatamente: você usa chown para alterar a propriedade ou o grupo de um arquivo para entregar a propriedade a outra pessoa. Você usa chmod para alterar as permissões associadas a um dos proprietários.

Não há uma necessidade mais profunda que você tenha perdido, apenas o conjunto geral de necessidades superficiais expressas por essas operações. Milhões de razões pelas quais algum outro usuário deve possuir um arquivo, mas nenhum deles é mais profundo do que "porque fazemos dessa maneira".

    
por 27.03.2012 / 21:35
1

Se você tiver vários arquivos salvos em uma unidade flash USB criada em um sistema operacional e precisar usar alguns desses arquivos ou todos eles em outro SO (Linux), talvez seja necessário executar um comando de localização e em um exemplo percorrer uma árvore de diretórios para chown todos os arquivos e, em seguida, em outro comando find, seguir com um comando chgrp usando o recurso -exec do comando find para usar os arquivos (presumivelmente com ids de usuário e grupo diferentes) para que os arquivos podem ser usados em diferentes sistemas operacionais Linux.

    
por 27.03.2012 / 21:41
1

É devido a uma coisa simples chamada Filosofia Unix .

Write programs that do one thing and do it well. Write programs to work together. Write programs to handle text streams, because that is a universal interface.

Pelo menos é o que eu suponho:)

    
por 27.03.2012 / 21:45

Tags