In questo tutorial, ti illustrerò i passaggi che puoi utilizzare per eliminare l'account di un utente insieme alla sua home directory su un sistema Linux.


Per informazioni su come creare account utente e gestirli su sistemi Linux, leggi i seguenti articoli dai collegamenti seguenti:
- 15 Esempi di comandi "useradd" per gestire gli account utente in Linux
- 15 Esempi di comandi "usermod" per cambiare/modificare i nomi degli account utente in Linux
- Come gestire utenti e gruppi con autorizzazioni file in Linux
In qualità di amministratore di sistema in Linux, potrebbe essere necessario rimuovere l'account utente dopo un momento in cui un account utente potrebbe rimanere inattivo per così tanto tempo, oppure l'utente potrebbe lasciare l'organizzazione o l'azienda o 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 i nuovi utenti del sistema o altri servizi.
Eliminazione/rimozione di un account utente con la sua home directory
1. A scopo dimostrativo, inizierò creando due account utente sul mio sistema che è l'utente tecmint e l'utente linuxsay con le loro directory home /home/tecmint e /home/linusay rispettivamente utilizzando adduser comando.
# adduser tecmint # passwd tecmint # adduser linuxsay # passwd linuxsay


Dallo screenshot sopra, ho usato adduser comando per creare account utente su Linux. Puoi anche utilizzare useradd comando, entrambi sono uguali e fanno lo stesso lavoro.
2. Andiamo ora oltre per vedere come eliminare o rimuovere gli account utente in Linux utilizzando deluser (Per Debian e i suoi derivati) e userdel (Per sistemi basati su RedHat/CentOS).
Le direttive all'interno del file di configurazione per deluser e utentedel i comandi determinano come verranno gestiti tutti i file utente e le directory quando esegui il comando.
Esaminiamo il file di configurazione per deluser comando che è /etc/deluser.conf
sui derivati Debian come Ubuntu, Kali, Mint e per gli utenti RHEL/CentOS/Fedora, puoi visualizzare il /etc/login.defs
file.
I valori in queste configurazioni sono predefiniti e possono essere modificati in base alle tue esigenze.
# vi /etc/deluser.conf [On Debian and its derivatives] # vi /etc/login.defs [On RedHat/CentOS based systems]
3. Per eliminare un utente con la home directory, puoi utilizzare il modo avanzato seguendo questi passaggi sulla tua macchina server Linux. Quando gli utenti sono connessi al server, utilizzano servizi ed eseguono processi diversi. È importante notare che l'utente può essere eliminato in modo efficace solo quando non è connesso al server.
Blocca gli account utente in Linux
Inizia bloccando la password dell'account utente in modo che non ci sia accesso per l'utente al sistema. Ciò impedirà a un utente di eseguire processi sul sistema.
La passwd comando compreso il –lock l'opzione può aiutarti a raggiungere questo obiettivo:
# passwd --lock tecmint Locking password for user tecmint. passwd: Success


Trova e interrompi tutti i processi in esecuzione dell'utente
Quindi scopri tutti i processi in esecuzione dell'account utente e uccidili determinando i PID (ID processo ) di processi di proprietà dell'utente utilizzando:
# pgrep -u tecmint 1947 1959 2091 2094 2095 2168 2175 2179 2183 2188 2190 2202 2207 2212 2214
Quindi puoi elencare i processi in termini di nome utente, PID, PPID (Parent Process IDs), terminale utilizzato, stato del processo, percorso del comando in uno stile di formattazione completo con l'aiuto del seguente comando come mostrato:
# ps -f --pid $(pgrep -u tecmint) UID PID PPID C STIME TTY STAT TIME CMD tecmint 1947 1 0 10:49 ? SLl 0:00 /usr/bin/gnome-keyring-daemon --daemonize --login tecmint 1959 1280 0 10:49 ? Ssl 0:00 mate-session tecmint 2091 1959 0 10:49 ? Ss 0:00 /usr/bin/ssh-agent /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session tecmint 2094 1 0 10:49 ? S 0:00 /usr/bin/dbus-launch --exit-with-session /usr/bin/im-launch mate-session tecmint 2095 1 0 10:49 ? Ss 0:00 //bin/dbus-daemon --fork --print-pid 6 --print-address 9 --session tecmint 2168 1 0 10:49 ? Sl 0:00 /usr/lib/dconf/dconf-service tecmint 2175 1959 0 10:49 ? Sl 0:02 /usr/bin/mate-settings-daemon tecmint 2179 1959 0 10:49 ? Sl 0:47 marco tecmint 2183 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd tecmint 2188 1959 0 10:49 ? Sl 0:00 mate-panel tecmint 2190 1 0 10:49 ? Sl 0:00 /usr/lib/gvfs/gvfsd-fuse /run/user/1000/gvfs -f -o big_writes tecmint 2202 1 0 10:49 ? S<l 0:20 /usr/bin/pulseaudio --start --log-target=syslog tecmint 2207 1959 0 10:49 ? S 0:00 /bin/sh /usr/bin/startcaja tecmint 2212 1 0 10:49 ? Sl 0:03 /usr/bin/python /usr/lib/linuxmint/mintMenu/mintMenu.py tecmint 2214 1 0 10:49 ? Sl 0:11 /usr/lib/mate-panel/wnck-applet ....


Una volta trovati tutti i processi in esecuzione dell'utente, puoi utilizzare il comando killall per terminare quei processi in esecuzione come mostrato.
# killall -9 -u tecmint
Il -9 è il numero del segnale per SIGKILL segnala o usa -KILL invece di -9 e -u definisce il nome utente.
Nota :Nelle versioni recenti delle versioni RedHat/CentOS 7.x e Fedora 21+, riceverai un messaggio di errore come:
-bash: killall: command not found
Per correggere tale errore, devi installare il pacchetto psmisc come mostrato:
# yum install psmisc [On RedHat/CentOS 7.x] # dnf install psmisc [On Fedora 21+ versions]
Backup dei dati utente prima dell'eliminazione
Successivamente puoi eseguire il backup dei file degli utenti, questo può essere facoltativo ma è consigliato per un uso futuro quando si presenta la necessità di rivedere i dettagli e i file dell'account utente.
Ho usato le utilità tar per creare un backup della home directory degli utenti come segue:
# tar jcvf /user-backups/tecmint-home-directory-backup.tar.bz2 /home/tecmint


Elimina/rimuovi account utente e file
Ora puoi rimuovere in sicurezza l'utente insieme alla sua home directory, per rimuovere tutti i file utente sul sistema usa il --remove-all-files
opzione nel comando seguente:
# deluser --remove-home tecmint [On Debian and its derivatives] # userdel --remove tecmint [On RedHat/CentOS based systems]


Riepilogo
Questo ha tutto a che fare con la rimozione dell'utente e della sua home directory da un sistema Linux. Credo che la guida sia abbastanza facile da seguire, ma puoi esprimere una preoccupazione o aggiungere altre idee lasciando un commento.