Comando Linux userdel
Em sistemas operacionais do tipo Unix, o comando userdel exclui uma conta de usuário e todos os arquivos associados .
Este documento cobre a versão Linux do userdel .
Descrição
userdel é um utilitário de baixo nível para remoção de usuários. (Não é muito fácil de usar. Na maioria dos casos, os administradores são aconselhados a usar o utilitário deluser mais amigável .)
O comando userdel modifica os arquivos da conta do sistema, excluindo todas as entradas que se referem ao nome de usuário LOGIN . O usuário nomeado deve existir.
Sintaxe
userdel [ opções ] LOGIN
Opções
-f , –force | Essa opção força a remoção da conta do usuário, mesmo que o usuário ainda esteja logado. Também força o userdel a remover o diretório pessoal e o spool de correio , mesmo que outro usuário use o mesmo diretório pessoal ou se o spool não for de propriedade. pelo usuário especificado. Se USERGROUPS_ENAB estiver definido como yes em /etc/login.defs e se um grupo existir com o mesmo nome que o usuário excluído, esse grupo será removido, mesmo que ainda seja o grupo principal de outro usuário. Nota: Esta opção é perigosa e pode deixar seu sistema em um estado inconsistente. |
-h , –help | Exiba uma mensagem de ajuda e saia. |
-r , –remove | Os arquivos no diretório inicial do usuário serão removidos juntamente com o próprio diretório inicial e o spool de correio do usuário. Os arquivos localizados em outros sistemas de arquivos deverão ser pesquisados e excluídos manualmente. O spool de email é definido pelo MAIL_DIR variável no login.defs arquivo. |
-R CHROOT_DIR , –root CHROOT_DIR | Aplique alterações no diretório chroot CHROOT_DIR e use os arquivos de configuração do mesmo diretório. |
-Z , –selinux-user | Remova qualquer mapeamento de usuário do SELinux (Security-Enhanced Linux) para o login do usuário. |
Configuração
As seguintes variáveis de configuração em /etc/login.defs alteram o comportamento desta ferramenta:
Nome | Tipo | Descrição |
---|---|---|
MAIL_DIR | corda | O diretório de spool de correio. Isso é necessário para manipular a caixa de correio quando sua conta de usuário correspondente é modificada ou excluída. Se não especificado, um padrão em tempo de compilação é usado. |
MAIL_FILE | corda | Define o local dos arquivos de spool de correio dos usuários em relação ao diretório inicial. |
MAX_MEMBERS_PER_GROUP | número | Máximo de membros por entrada do grupo. Quando o máximo é atingido, uma nova entrada de grupo (linha) é iniciada em / etc / group (com o mesmo nome, mesma senha e o mesmo ID de grupo). O valor padrão é 0 , o que significa que não há limites no número de membros em um grupo. Esse recurso (grupo dividido) permite limitar o comprimento das linhas no arquivo de grupo. Isso é útil para garantir que as linhas para grupos NIS não tenham mais que 1024 caracteres. Se você precisar aplicar esse limite, poderá usar 25 . Nota: os grupos divididos podem não ser suportados por todas as ferramentas (incluindo o pacote de ferramentas Shadow). Você não deve usar essa variável, a menos que realmente precise dela. |
USERDEL_CMD | corda | Se definido, este comando é executado ao remover um usuário. Ele deve remover todos os trabalhos at / cron / print etc. pertencentes ao usuário a serem removidos (passados como o primeiro argumento). O código de retorno do script não é levado em consideração. Aqui está um exemplo de script, que remove o usuário cron , pelo e trabalhos de impressão: #! / bin / sh # Verifique o argumento necessário. se [$ #! = 1]; então eco "Uso: $ 0 nome de usuário" saída 1 fi # Remova os trabalhos cron. crontab -r -u $ 1 # Remova nos trabalhos. # Observe que ele removerá todos os trabalhos pertencentes ao mesmo UID, # mesmo que tenha sido compartilhado por um nome de usuário diferente. AT_SPOOL_DIR = / var / spool / cron / atjobs localize $ AT_SPOOL_DIR -name "[^.] *" -type f -user $ 1 -delete \; # Remova os trabalhos de impressão. lprm $ 1 # Tudo feito. saída 0 |
USERGROUPS_ENAB | boleano | Se definido como “yes”, o userdel removerá o grupo de usuários se não houver mais membros e o useradd criará por padrão um grupo com o nome do usuário. |
Note-se que os MAIL_DIR e MAIL_FILE variáveis são usadas por cada um dos useradd , usermod e userdel para criar, mover ou excluir spool de email do usuário.
arquivos
/ etc / group | Informações da conta do grupo. |
/etc/login.defs | Configuração do conjunto de senhas sombra. |
/ etc / passwd | Informações da conta do usuário. |
/ etc / shadow | Proteja as informações da conta do usuário. |
Status de saída
O userdel sairá com um dos seguintes códigos de saída, dependendo do que ocorreu:
0 0 | Sucesso. |
1 | Não foi possível atualizar o arquivo passwd. |
2 | Sintaxe de comando inválida . |
6 | Usuário especificado não existe. |
8 | Não foi possível excluir o usuário porque o usuário especificado está conectado no momento . |
10 | Não foi possível atualizar o arquivo de grupo. |
12 | Não foi possível remover o diretório inicial. |
Notas
O userdel não permitirá que você remova uma conta se houver processos em execução que pertençam a essa conta. Nesse caso, talvez seja necessário interromper esses processos ou bloquear a senha ou a conta do usuário e removê-la posteriormente. A opção -f pode forçar a exclusão desta conta.
Você deve verificar manualmente todos os sistemas de arquivos para garantir que nenhum arquivo permaneça de propriedade deste usuário.
Você não pode remover nenhum atributo NIS em um cliente NIS. Isso deve ser realizado no servidor NIS.
Se USERGROUPS_ENAB estiver definido como “yes” em /etc/login.defs , o userdel excluirá o grupo com o mesmo nome que o usuário. Para evitar inconsistências nos bancos de dados passwd e group, o userdel verificará se esse grupo não é usado como um grupo principal para outro usuário e apenas avisará sem excluir o grupo. A opção -f pode forçar a exclusão deste grupo.
Exemplos
userdel -r nome de usuário
Exclui a conta do nome de usuário do usuário e remove o diretório inicial desse usuário e os arquivos de mensagens associados.
Comandos relacionados
useradd – Adicione um usuário ao sistema.
usermod – Modifique a conta de um usuário.