Como Administrador de Sistemas en Linux, es posible que tenga que eliminar la cuenta de un usuario después de algún tiempo cuando una cuenta de usuario pueda estar inactiva durante tanto tiempo, o el usuario puede abandonar la organización o empresa por cualquier otro motivo.
Al eliminar cuentas de usuario en un sistema Linux, también es importante eliminar su directorio personal para liberar espacio en los dispositivos de almacenamiento para nuevos usuarios del sistema u otros servicios.
En este tutorial, voy a guiarte a través de los pasos que puedes usar para eliminar la cuenta de un usuario junto con su directorio personal en un sistema Linux.
Para aprender cómo crear cuentas de usuario y administrarlas en sistemas Linux, lee los siguientes artículos desde los enlaces a continuación:
Cómo Eliminar/Quitar una Cuenta de Usuario con Directorio Personal
Para fines demostrativos, primero comenzaré creando dos cuentas de usuario en mi sistema que son el usuario tecmint y el usuario linuxsay con sus directorios de inicio /home/tecmint y /home/linusay respectivamente usando el comando adduser.
adduser tecmint passwd tecmint adduser linuxsay passwd linuxsay

Desde la captura de pantalla anterior, he utilizado el comando adduser para crear cuentas de usuario en Linux. También puede usar el comando useradd, ambos son iguales pero la principal diferencia entre estos comandos radica en su uso previsto y la interfaz de usuario.
El comando ” adduser” es una interfaz de nivel superior para agregar usuarios a un sistema, realiza cualquier configuración necesaria y crea un directorio de inicio para el usuario utilizando configuraciones predeterminadas.
Por otro lado, ” useradd” es una utilidad de nivel inferior para agregar usuarios a un sistema y actualizar la información del usuario. No crea el directorio de inicio del usuario de forma predeterminada y requiere que el administrador especifique opciones adicionales manualmente.
Pasemos ahora a ver cómo eliminar o eliminar cuentas de usuario en Linux usando deluser (Para Debian y sus derivados) y userdel (Para sistemas basados en RedHat) comandos.
sudo deluser --remove-home username sudo userdel -r username
El comando anterior eliminará el directorio de inicio del usuario junto con su cuenta.
Las directivas dentro del archivo de configuración para los comandos deluser y userdel determinan cómo manejará todos los archivos y directorios de usuario cuando ejecute el comando.
Veamos el archivo de configuración para el comando deluser, que es /etc/deluser.conf
en derivados de Debian como Ubuntu, Kali y Mint, y para usuarios de RHEL/CentOS/Fedora, pueden ver los archivos /etc/login.defs
.
Los valores en estas configuraciones son predeterminados y pueden ser cambiados según sus necesidades.
vi /etc/deluser.conf [On Debian and its derivatives] vi /etc/login.defs [On RedHat/CentOS based systems]

Para eliminar a un usuario con un directorio personal, puede utilizar la forma avanzada siguiendo estos pasos en su máquina de servidor Linux. Cuando los usuarios están conectados al servidor, utilizan servicios y ejecutan diferentes procesos. Es importante tener en cuenta que los usuarios solo pueden ser eliminados de manera efectiva cuando no estén conectados al servidor.
Cómo Bloquear Cuentas de Usuario en Linux
Para bloquear una cuenta de usuario en Linux, puede usar el comando passwd seguido de la opción -l o --lock
y el nombre de usuario. Bloquear una cuenta de usuario impide que el usuario inicie sesión mientras todavía retiene la cuenta y sus archivos asociados.
sudo passwd -l username OR sudo passwd -lock username

Para desbloquear la cuenta, puede usar nuevamente el comando passwd con la opción -u
.
sudo passwd -u username
Cómo Encontrar y Matar Procesos de Usuario en Ejecución en Linux
Puedes encontrar y eliminar procesos en ejecución de usuarios en Linux utilizando el comando ps para encontrar los procesos asociados con un usuario específico y el comando kill para terminarlos.
Encontrar Procesos de Usuario
Usa el comando ps con la bandera -u
seguida del nombre de usuario para listar los procesos para un usuario específico.
ps -u username
Luego, puedes listar los procesos en términos de nombre de usuario, PIDs, PPIDs (Identificadores de Proceso Padre), terminal utilizada, estado del proceso y ruta del comando en un estilo de formato completo con la ayuda del siguiente comando como se muestra:
ps -f --pid $(pgrep -u tecmint)

Eliminar Procesos de Usuario
Una vez que encuentres todos los procesos en ejecución de un usuario, puedes usar el comando killall para eliminar esos procesos en ejecución como se muestra.
killall -9 -u tecmint
El -9 es el número de señal para la SIGKILL señal o usa -KILL en lugar de -9 y -u define el nombre de usuario.
Nota: En las últimas versiones de RedHat/CentOS 7.x y Fedora 21+, recibirás un mensaje de error:
-bash: killall: command not found
Para solucionar ese error, necesitas instalar el paquete psmisc como se muestra:
yum install psmisc [On RedHat/CentOS 7.x] dnf install psmisc [On Fedora 21+ versions]
Cómo Realizar Copias de Seguridad de Datos de Usuario Antes de Eliminar
Para respaldar los datos de un usuario antes de eliminar una cuenta de usuario en un sistema Linux, puede seguir estos comandos.
sudo mkdir /backup sudo cp -r /home/username /backup
Opcionalmente, puede crear un archivo comprimido de los datos del usuario para conservar espacio de almacenamiento. He utilizado el comando tar para crear un respaldo del directorio personal del usuario de la siguiente manera:
sudo tar -zcvf /backup/username_backup.tar.gz /backup/username

Cómo Eliminar/Quitar Archivos de Usuario en Linux
Ahora puede eliminar de forma segura al usuario junto con su directorio personal, para eliminar todos los archivos de usuario en el sistema use la opción --remove-all-files
en el comando a continuación:
deluser --remove-home tecmint [On Debian and its derivatives] userdel --remove tecmint [On RedHat/CentOS based systems]

Resumen
Eso es todo lo que hay que hacer para eliminar al usuario y su directorio personal de un sistema Linux. Creo que la guía es lo suficientemente fácil de seguir, pero puede expresar una preocupación o agregar más ideas dejando un comentario.
Source:
https://www.tecmint.com/delete-remove-a-user-account-with-home-directory-in-linux/