Come Eliminare Account Utente e le Relative Directory Home in Linux

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
Create New User Accounts in Linux

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]
Del User Configuration

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
Lock User Account Password in Linux

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)
Find All Running Processes of the User

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
Backup User Home Directory in Linux

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]
Delete User Account with Home Directory
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/