Com esborrar comptes d'usuari amb el directori d'inici a Linux
En aquest tutorial, faré els passos que podeu utilitzar per eliminar el compte d'un usuari juntament amb el seu directori d'inici en un sistema Linux.
Per saber com crear comptes d'usuari i gestionar-los en sistemes Linux, llegiu els articles següents als enllaços següents:
- 15 exemples d'ordres useradd per gestionar comptes d'usuari a Linux
- 15 exemples d'ordres usermod per canviar/modificar els noms dels comptes d'usuari a Linux
- Com gestionar usuaris i grups amb permisos de fitxers a Linux
Com a administrador del sistema a Linux, és possible que hàgiu d'eliminar el compte d'usuari després d'un moment en què un compte d'usuari pot quedar inactiu durant tant de temps, o l'usuari pot abandonar l'organització o l'empresa o qualsevol altre motiu.
Quan elimineu els comptes d'usuari en un sistema Linux, també és important eliminar el seu directori d'inici per alliberar espai als dispositius d'emmagatzematge per a usuaris nous del sistema o altres serveis.
Suprimir/eliminar un compte d'usuari amb el seu directori d'inici
1. Amb finalitats de demostració, primer començaré creant dos comptes d'usuari al meu sistema que són l'usuari tecmint i l'usuari linuxsay amb els seus directoris d'inici /home/tecmint i /home/linusay respectivament utilitzant l'ordre adduser.
# adduser tecmint # passwd tecmint # adduser linuxsay # passwd linuxsay
A la captura de pantalla anterior, he utilitzat l'ordre adduser per crear comptes d'usuari a Linux. També podeu utilitzar l'ordre useradd, tots dos són iguals i fan la mateixa feina.
2. Anem més endavant per veure com esborrar o eliminar comptes d'usuari a Linux mitjançant l'ordre deluser (per a Debian i els seus derivats) i userdel (per a sistemes basats en RedHat/CentOS).
Les directives dins del fitxer de configuració per a les ordres deluser i userdel determinen com gestionarà tots els fitxers i el directori d'usuari quan executeu l'ordre.
Vegem el fitxer de configuració de l'ordre deluser que és /etc/deluser.conf
en derivats de Debian com Ubuntu, Kali, Mint i per als usuaris de RHEL/CentOS/Fedora, podeu veure el /etc/deluser.conf
./etc/login.defs.
Els valors d'aquesta configuració són per defecte i es poden canviar segons les vostres necessitats.
# vi /etc/deluser.conf [On Debian and its derivatives] # vi /etc/login.defs [On RedHat/CentOS based systems]
3. Per suprimir un usuari amb el directori d'inici, podeu utilitzar la manera avançada seguint aquests passos a la vostra màquina servidor Linux. Quan els usuaris inicien sessió al servidor, utilitzen serveis i executen diferents processos. És important tenir en compte que l'usuari només es pot suprimir de manera efectiva quan no està connectat al servidor.
Comenceu bloquejant la contrasenya del compte d'usuari perquè l'usuari no tingui accés al sistema. Això evitarà que un usuari executi processos al sistema.
L'ordre passwd que inclou l'opció –lock us pot ajudar a aconseguir-ho:
# passwd --lock tecmint Locking password for user tecmint. passwd: Success
A continuació, esbrineu tots els processos en execució del compte d'usuari i elimineu-los determinant els PID (ID de procés) dels processos propietat de l'usuari mitjançant:
# pgrep -u tecmint 1947 1959 2091 2094 2095 2168 2175 2179 2183 2188 2190 2202 2207 2212 2214
A continuació, podeu llistar els processos intermedis de nom d'usuari, PID, PPID (ID de procés principal), terminal utilitzat, estat del procés, camí d'ordre en un estil de format complet amb l'ajuda de l'ordre següent, tal com es mostra:
# 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 ....
Un cop trobeu tots els processos en execució de l'usuari, podeu utilitzar l'ordre killall per matar aquests processos en execució tal com es mostra.
# killall -9 -u tecmint
El -9 és el número de senyal per al senyal SIGKILL o utilitzeu -KILL en comptes de -9 i -u defineix el nom d'usuari.
Nota: a les versions recents de les versions RedHat/CentOS 7.x i Fedora 21+, rebreu un missatge d'error com:
-bash: killall: command not found
Per solucionar aquest error, heu d'instal·lar el paquet psmisc tal com es mostra:
# yum install psmisc [On RedHat/CentOS 7.x] # dnf install psmisc [On Fedora 21+ versions]
A continuació, podeu fer una còpia de seguretat dels fitxers dels usuaris, això pot ser opcional, però es recomana per a un ús futur quan calgui revisar els detalls i els fitxers del compte d'usuari.
He utilitzat les utilitats tar per crear una còpia de seguretat del directori d'inici dels usuaris de la següent manera:
# tar jcvf /user-backups/tecmint-home-directory-backup.tar.bz2 /home/tecmint
Ara podeu eliminar de manera segura l'usuari juntament amb el seu directori d'inici, per eliminar tots els fitxers d'usuari del sistema, utilitzeu l'opció --remove-all-files
a l'ordre següent:
# deluser --remove-home tecmint [On Debian and its derivatives] # userdel --remove tecmint [On RedHat/CentOS based systems]
Resum
Això té a veure amb l'eliminació de l'usuari i el seu directori d'inici d'un sistema Linux. Crec que la guia és prou fàcil de seguir, però podeu expressar una preocupació o afegir més idea deixant un comentari.