Come amministratore di sistema in Linux, potresti dover rimuovere un account utente dopo un certo periodo di tempo quando un account utente può diventare inattivo per così tanto tempo, o l’utente può lasciare l’organizzazione o l’azienda per qualsiasi altro motivo.
Quando si rimuovono gli account utente su un sistema Linux, è anche importante rimuovere la loro home directory per liberare spazio sui dispositivi di archiviazione per nuovi utenti del sistema o per altri servizi.
In questa guida, ti guiderò attraverso i passaggi che puoi utilizzare per eliminare un account utente insieme alla sua home directory su un sistema Linux.
Per imparare a creare account utente e gestirli sui sistemi Linux, leggi gli articoli seguenti dai link qui sotto:
Come eliminare/rimuovere un account utente con la home directory
Per scopi dimostrativi, inizierò creando due account utente sul mio sistema, ovvero utente tecmint e utente linuxsay con le loro directory home /home/tecmint e /home/linusay rispettivamente utilizzando il comando adduser.
adduser tecmint passwd tecmint adduser linuxsay passwd linuxsay

Dal screenshot sopra, ho utilizzato il comando adduser per creare account utente su Linux. Puoi anche utilizzare il comando useradd, entrambi sono uguali ma la principale differenza tra questi comandi sta nel loro uso inteso e interfaccia utente.
Il comando “adduser” è un’interfaccia di livello superiore per aggiungere utenti a un sistema, esegue eventuali operazioni di configurazione necessarie e crea una directory home per l’utente utilizzando impostazioni predefinite.
D’altra parte, “useradd” è uno strumento di basso livello per aggiungere utenti a un sistema e aggiornare informazioni utente. Non crea la directory home dell’utente per impostazione predefinita e richiede all’amministratore di specificare opzioni aggiuntive manualmente.
Muoviamoci ora per vedere come eliminare o rimuovere account utente in Linux utilizzando deluser (Per Debian e le sue derivate) e userdel (Per sistemi basati su RedHat) comandi.
sudo deluser --remove-home username sudo userdel -r username
Il comando sopra eliminerà la directory home dell’utente insieme al loro account.
Le direttive all’interno del file di configurazione per i comandi deluser e userdel determinano come gestirà tutti i file e le directory utente quando si esegue il comando.
Diamo un’occhiata al file di configurazione per il comando deluser, che è /etc/deluser.conf
su derivati Debian come Ubuntu, Kali e Mint, e per gli utenti di RHEL/CentOS/Fedora, è possibile visualizzare i file /etc/login.defs
.
I valori in queste configurazioni sono predefiniti e possono essere modificati secondo le tue esigenze.
vi /etc/deluser.conf [On Debian and its derivatives] vi /etc/login.defs [On RedHat/CentOS based systems]

Per eliminare un utente con una directory home, è possibile utilizzare il modo avanzato seguendo questi passaggi sul tuo server Linux. Quando gli utenti sono collegati al server, utilizzano servizi e eseguono diversi processi. È importante notare che gli utenti possono essere eliminati efficacemente solo quando non sono collegati al server.
Come bloccare gli account utente in Linux
Per bloccare un account utente in Linux, è possibile utilizzare il comando passwd seguito da -l o --lock
e il nome utente. Bloccare un account utente impedisce all’utente di accedere mentre mantiene ancora l’account e i file associati.
sudo passwd -l username OR sudo passwd -lock username

Per sbloccare l’account, è possibile utilizzare nuovamente il comando passwd con l’opzione -u
.
sudo passwd -u username
Come trovare e uccidere i processi utente in esecuzione in Linux
Puoi trovare e terminare i processi in esecuzione degli utenti in Linux utilizzando il comando ps per trovare i processi associati a un utente specifico e il comando kill per terminarli.
Trovare i processi utente
Usa il comando ps con la bandiera -u
seguita dal nome utente per elencare i processi per un utente specifico.
ps -u username
Quindi puoi elencare i processi in termini di nome utente, PID, PPID (ID del processo genitore), terminale utilizzato, stato del processo e percorso del comando in uno stile di formattazione completo con l’aiuto del seguente comando come mostrato:
ps -f --pid $(pgrep -u tecmint)

Terminare i processi utente
Una volta trovati tutti i processi in esecuzione di un utente, puoi utilizzare il comando killall per terminare quei processi in esecuzione come mostrato.
killall -9 -u tecmint
Il -9 è il numero di segnale per il segnale SIGKILL o usa -KILL al posto di -9 e -u definisce il nome utente.
Nota: Nelle recenti versioni di RedHat/CentOS 7.x e Fedora 21+, riceverai un messaggio di errore:
-bash: killall: command not found
Per risolvere questo errore, devi installare il pacchetto psmisc come mostrato:
yum install psmisc [On RedHat/CentOS 7.x] dnf install psmisc [On Fedora 21+ versions]
Come eseguire il backup dei dati utente prima di eliminare
Per eseguire il backup dei dati utente prima di eliminare un account utente in un sistema Linux, è possibile seguire questi comandi.
sudo mkdir /backup sudo cp -r /home/username /backup
Facoltativamente, è possibile creare un archivio compresso dei dati dell’utente per risparmiare spazio di archiviazione. Ho utilizzato il comando tar per creare un backup del directory home dell’utente come segue:
sudo tar -zcvf /backup/username_backup.tar.gz /backup/username

Come eliminare/rimuovere i file utente in Linux
Ora è possibile rimuovere in sicurezza l’utente insieme alla sua directory home, per rimuovere tutti i file utente nel sistema utilizzare l’opzione --remove-all-files
nel comando seguente:
deluser --remove-home tecmint [On Debian and its derivatives] userdel --remove tecmint [On RedHat/CentOS based systems]

Riepilogo
Questo è tutto riguardo la rimozione dell’utente e della sua directory home da un sistema Linux. Credo che la guida sia abbastanza semplice da seguire, ma puoi esprimere un problema o aggiungere più idee lasciando un commento.
Source:
https://www.tecmint.com/delete-remove-a-user-account-with-home-directory-in-linux/