userdel - exclui uma conta de usuário e arquivos relacionados
SINTAXE
userdel [opções] LOGIN
DESCRIÇÃO
userdel é um utilitário de baixo nível para remover usuários. No Debian, os administradores geralmente devem usar
deluser(8) em vez disso.
O comando userdel modifica os arquivos de conta do sistema, excluindo todas as entradas que se referem ao nome de usuário LOGIN. O usuário especificado deve existir.
OPÇÕES
As opções que se aplicam ao comando userdel são:
-f, --force
Esta opção força a remoção da conta de usuário e quaisquer outras ações solicitadas, ignorando quaisquer verificações de segurança.
Atenção: Esta opção é perigosa e pode deixar seu sistema em um estado inconsistente.
-h, --help
Exibe a mensagem de ajuda e sai.
-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 e-mail do usuário. Os arquivos localizados em outros sistemas de arquivos terão que ser pesquisados e excluídos manualmente.
O spool de e-mail é definido pela variável MAIL_DIR no arquivo login.defs.
-R, --root CHROOT_DIR
Aplique as alterações no diretório CHROOT_DIR e use os arquivos de configuração do diretório CHROOT_DIR . Apenas caminhos absolutos são suportados.
-P, --prefix PREFIX_DIR
Aplique as alterações no diretório PREFIX_DIR e use os arquivos de configuração do diretório PREFIX_DIR . Esta opção não usa chroot e é destinada à preparação de um destino de compilação cruzada. Algumas limitações: usuários/grupos NIS e LDAP não são verificados. A autenticação PAM está usando os arquivos do host. Sem suporte SELINUX.
-Z, --selinux-user
Remova qualquer mapeamento de usuário SELinux para o login do usuário.
CONFIGURAÇÃO
As seguintes variáveis de configuração em /etc/login.defs alteram o comportamento desta ferramenta:
MAIL_DIR (string)
O diretório do spool de e-mail. Isso é necessário para manipular a caixa de correio quando sua conta de usuário correspondente é modificada ou excluída. Se não for especificado, um valor padrão em tempo de compilação será usado. O parâmetro CREATE_MAIL_SPOOL em /etc/default/useradd determina se o spool de e-mail deve ser criado.
MAIL_FILE (string)
Define a localização dos arquivos do spool de e-mail dos usuários em relação ao diretório inicial deles.
As variáveis MAIL_DIR e MAIL_FILE são usadas por useradd, usermod e userdel para criar, mover ou excluir o spool de e-mail do usuário.
MAX_MEMBERS_PER_GROUP (número)
Número máximo de membros por entrada de grupo. Quando o máximo é atingido, uma nova entrada de grupo (linha) é iniciada em /etc/group (com o mesmo nome, mesma senha e mesmo GID).
O valor padrão é 0, o que significa que não há limites no número de membros em um grupo.
Este 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 sejam maiores que 1024 caracteres.
Se você precisar impor tal limite, pode usar 25.
Atenção: grupos divididos podem não ser suportados por todas as ferramentas (mesmo no Shadow toolsuite). Você não deve usar esta variável, a menos que realmente precise.
USERDEL_CMD (string)
Se definido, este comando é executado ao remover um usuário. Ele deve remover quaisquer trabalhos at/cron/print etc. pertencentes ao usuário a ser removido (passado como o primeiro argumento).
O código de retorno do script não é considerado.
Aqui está um exemplo de script, que remove os trabalhos cron, at e print do usuário:
#! /bin/sh
# Verifica se o argumento obrigatório está presente.
if [ $# != 1 ]; then
echo "Uso: $0 nome de usuário"
exit 1
fi
# Remove os trabalhos cron.
crontab -r -u $1
# Remove os trabalhos at.
# Observe que isso removerá quaisquer trabalhos pertencentes ao mesmo UID,
# mesmo que tenha sido compartilhado por um nome de usuário diferente.
AT_SPOOL_DIR=/var/spool/cron/atjobs
find $AT_SPOOL_DIR -name "[^.]*" -type f -user $1 -delete \;
# Remove os trabalhos de impressão.
lprm $1
# Tudo pronto.
exit 0
USERGROUPS_ENAB (booleano)
Se definido como sim, userdel removerá o grupo do usuário se ele não contiver mais membros e useradd criará por padrão um grupo com o nome do usuário.
ARQUIVOS
/etc/group
Informações da conta de grupo.
/etc/login.defs
Configuração do conjunto de senhas shadow.
/etc/passwd
Informações da conta de usuário.
/etc/shadow
Informações seguras da conta de usuário.
/etc/shadow-maint/userdel-pre.d/*, /etc/shadow-maint/userdel-post.d/*
Arquivos de script a serem executados durante a exclusão de usuário. A variável de ambiente ACTION será
preenchida com userdel e SUBJECT com o nome de usuário. userdel-pre.d será executado antes
da exclusão do usuário. userdel-post.d será executado após a exclusão do usuário. Se um script retornar
um valor diferente de zero, a execução será interrompida.
/etc/subgid
IDs de grupo subordinados por usuário.
/etc/subuid
IDs de usuário subordinados por usuário.
VALORES DE SAÍDA
O comando userdel retorna os seguintes valores:
0 sucesso
1 não é possível atualizar o arquivo de senhas
2 sintaxe de comando inválida
6 o usuário especificado não existe
8 usuário atualmente conectado
10 não é possível atualizar o arquivo de grupo
12 não é possível remover o diretório home
RESSALVAS
userdel não permitirá que você remova uma conta se houver processos em execução que pertençam a
esta conta. Nesse caso, você pode ter que matar esses processos ou bloquear a senha ou a
conta do usuário e remover a conta 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
pertencente a este usuário.
Você não pode remover nenhum atributo NIS em um cliente NIS. Isso deve ser feito no servidor NIS.
Se USERGROUPS_ENAB for definido como sim em /etc/login.defs, userdel excluirá o grupo com o
mesmo nome do usuário. Para evitar inconsistências nos bancos de dados passwd e group, userdel
verificará se este grupo não está sendo usado como grupo primário para outro usuário e apenas avisará
sem excluir o grupo, caso contrário. A opção -f pode forçar a exclusão deste grupo.
VEJA TAMBÉM
chfn(1), chsh(1), passwd(1), login.defs(5), gpasswd(8), groupadd(8), groupdel(8), groupmod(8), subgid(5), subuid(5), useradd(8), usermod(8).