Por que o usuário root tem controle sobre os diretórios do mysql, mas não mostra como um membro do grupo mysql?

2

Desculpe se esta é uma duplicata. Parece um pouco semelhante à pergunta aqui mas eu acho que o que estou pedindo é um pouco diferente.

Eu tenho uma caixa do CentOS 5.x rodando com o mysql nela. O usuário root linux pode editar / modificar arquivos em subdiretórios /var/lib/mysql/ , mas a maioria (se não todos) desses diretórios possui propriedades de sistema de arquivos de mysql:mysql .

Quando executo groups root , vejo:

[root@foo ~]# groups root
root : root bin daemon sys adm disk wheel

Eu entendo que root é uma conta privilegiada e pode / terá acesso a tudo, mas por que não vejo mysql na lista de grupos a que pertence?

    
por Mike B 17.03.2014 / 20:16

2 respostas

1

A definição do usuário root determina que ele tenha controle sobre todos os arquivos no disco, independente do & grupos que possuem os ditos arquivos & diretórios.

Muitos Unixes, como o Solaris, costumavam ter uma limitação em que os usuários não podiam estar em mais de 15 grupos. NIS outra tecnologia para compartilhar informações de usuário / grupo / montagem automática também tinha essa limitação.

Normalmente, você não veria o usuário root nesses grupos. Por um lado, não foi possível fazê-lo (dado este limite), e também não foi necessário que o usuário root acessasse arquivos / diretórios com outras propriedades. Além disso, muitas vezes é considerado um design incorreto ter todos os serviços / daemons sendo executados como root, em vez disso, cada um deles seria governado por seus próprios usuários dedicados & grupos.

Portanto, a resposta simples à sua pergunta é que o root não precisa estar nesses grupos porque pode fazer o que quiser nos arquivos / diretórios de um sistema, é o dono principal e tem uma ditadura completa sobre os arquivos que estão local para o sistema.

Então, por que o root está em algum grupo?

Esta é mais uma prática histórica em que você costumava ver o root em vários grupos de chaves. Isso está sendo eliminado, que eu saiba, e a maioria dos sistemas mais recentes que eu suportei não tem mais isso, já que é completamente desnecessário agora.

Fedora 19
$ groups root
root : root
CentOS 6
$ groups root
root : root bin daemon sys adm disk wheel

OBSERVAÇÃO: O objetivo principal que muitas vezes você verá raiz em outros grupos é permitir que o root crie arquivos nesses grupos diretamente, sem precisar executar chgrp ou chown após criando arquivos em diretórios que são agrupados para um desses grupos posteriormente. Quando o root precisa assumir um dos outros grupos, ele pode executar um newgrp <group> simples para alternar, se necessário, ou respeitar um diretório que já tenha o bit SGID em um diretório.

Referências

por 17.03.2014 / 23:11
1

Na verdade, como root é privilegiado, ele não precisa estar em nenhum grupo - apenas ignora a propriedade do arquivo. Pense nisso em termos da conta de administrador no Windows.

    
por 17.03.2014 / 20:57