GNU/Linux >> Linux Esercitazione >  >> Linux

Come eliminare gli account utente con Home Directory in Linux

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:

  1. 15 Esempi di comandi "useradd" per gestire gli account utente in Linux
  2. 15 Esempi di comandi "usermod" per cambiare/modificare i nomi degli account utente in Linux
  3. 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.


Linux
  1. Come creare ed eliminare un gruppo di utenti in Linux

  2. Come eliminare una directory e una cartella in Linux?

  3. Come gestire gli utenti con useradd in Linux

  4. Come creare un utente con una home directory personalizzata in Linux

  5. Come eliminare un utilizzo non root con UID 0 in Linux

Come rimuovere (eliminare) la directory in Linux

Trova account utente con password vuota in Linux

Crea directory home per utenti esistenti in Linux

Elimina gli utenti in Linux con il comando Userdel

Come connettersi con Samba a Linux Active Directory

Come creare/aggiungere utenti in Linux