O grupo principal de um usuário será excluído quando você excluir o usuário?

1

Eu criei um usuário chamado paul usando o seguinte comando:

sudo adduser paul

adduser também criou um novo grupo chamado paul e transformou o grupo principal no usuário paul .

Eu criei um arquivo usando o usuário paul e exibi suas informações usando ls-l :

-rw-r--r-- 1 paul paul 25 2017-05-14 15:30 1.txt

Então eu deletei o usuário paul usando o seguinte comando:

sudo userdel paul

Em seguida, exibi as informações do arquivo criado anteriormente usando ls -l :

-rw-r--r-- 1 1001 1001 25 2017-05-14 15:30 1.txt

O usuário paul foi substituído por seu ID (que é 1001 ), pois acabei de excluir esse usuário. Mas por que o ID do grupo também é exibido em vez do nome do grupo, o grupo também foi excluído?

    
por user7681202 10.12.2017 / 04:09

1 resposta

1

Resumo

Aqui está a resposta curta: Quando um usuário é excluído, seu grupo principal também é excluído, a menos que esse grupo também contenha outros usuários. Neste último caso, o usuário é excluído, mas o grupo não é.

Podemos verificar isso com facilidade.

Caso 1: Nenhum outro usuário no grupo principal de usuário excluído

Primeiro, consideramos o caso em que o grupo primário não contém outros usuários.

Crie o paul user:

root@host:~# useradd paul

Verifique o grupo paul usando getent :

root@host:~# getent group paul
paul:x:1001:

Exclua o paul user:

root@host:~# userdel paul

Verifique o grupo paul usando getent :

root@host:~# getent group paul

root@host:~#

Observe que não há saída deste comando. Também podemos tentar excluir o grupo paul :

root@host:~# groupdel paul
groupdel: group 'paul' does not exist

Isso confirma que o grupo paul não existe mais.

Caso 2: usuários adicionais no grupo principal do usuário excluído

Agora, verificaremos o que acontece se tentarmos excluir um usuário cujo grupo contenha outros usuários:

root@host:~# useradd user1

root@host:~# useradd user2

root@host:~# usermod -a -G user1 user2

root@host:~# groups user2
user2 : user2 user1

root@host:~# userdel user1
userdel: group user1 not removed because it has other members.

root@host:~# groups user2
user2 : user2 user1

root@host:~# getent group user1
user1:x:1002:user2

root@host:~# getent passwd user1

root@host:~# deluser user1
/usr/sbin/deluser: The user 'user1' does not exist.

Nesse caso, o user1 usuário é excluído, mas o grupo user1 permanece.

    
por 10.12.2017 / 04:14