Puoi creare un nuovo utente con il comando useradd ma se hai configurato in modo errato l'account, non devi necessariamente eliminare l'utente. Puoi modificare le impostazioni dell'account utente con il comando usermod in Linux.
Usermod (abbreviazione di modifica utente) consente di modificare vari aspetti di un account utente. È possibile modificare la home directory e la shell dell'utente. Puoi aggiungere l'utente a diversi gruppi o bloccare l'account.
8 Esempi pratici del comando usermod
Dal momento che hai a che fare con la gestione dell'account utente, devi essere root o disporre dei diritti sudo per eseguire il comando usermod.
sudo usermod [options] username
Lascia che ti mostri alcuni esempi.
1. Cambia nome utente
Puoi cambiare il nome utente con l'opzione -l del comando usermod:
sudo usermod -l new_username old_username
Tieni presente che a parte il nome utente, nient'altro cambia da solo. Dovrai modificare manualmente la home directory e lo spool di posta.
2. Cambia la home directory dell'utente
È possibile modificare la directory home dell'utente in un'altra directory.
sudo usermod -d new_home_dir user_name
Tieni presente che cambierà la home directory anche se la directory non esiste ma non la creerà da sola.
Un modo migliore per cambiare la home directory dell'utente è usare l'opzione -m con -d. In questo modo, creerà la nuova home directory se non esiste. Oltre a ciò, sposterà anche il contenuto della vecchia home directory nella nuova home directory con i permessi e la proprietà dei file corretti.
sudo usermod -md new_home_dir user_name
Ecco un esempio:
[email protected]:~$ sudo usermod -md /home/mynewhome myuser
[email protected]:~$ ls -l /home/mynewhome/
total 12
-rw-r--r-- 1 myuser myuser 8980 Apr 16 2018 examples.desktop
-rw-rw-r-- 1 myuser myuser 0 Jan 17 11:15 morefile.txt
-rw-rw-r-- 1 myuser myuser 0 Jan 17 11:15 myfile.txt
Anche l'ordine di m e d è importante qui.
3. Modifica la shell di accesso dell'utente
Puoi anche cambiare la shell predefinita di un utente con il comando usermod. Diciamo che vuoi cambiare la shell di accesso in zsh, ecco cosa potresti fare:
sudo usermod -s /bin/zsh username
4. Modifica il gruppo di utenti predefinito
Puoi anche modificare il gruppo predefinito di un utente. Ciò è particolarmente utile quando hai cambiato il nome utente. Sarebbe una buona idea cambiare anche il gruppo di utenti predefinito.
sudo usermod -g new_default_group_name username
5. Aggiungi l'utente ad altri gruppi
Questo è forse l'uso più comune del comando usermod. Se vuoi aggiungere un utente all'elenco sudoer, tutto ciò che devi fare è aggiungere l'utente al gruppo sudo.
sudo usermod -aG group_name username
Hai notato che ho usato l'opzione -aG qui e non solo -G. È perché se usi solo l'opzione -G, sostituirà i gruppi di utenti con il nuovo gruppo che hai fornito.
Questo è il motivo per cui dovresti utilizzare l'opzione append -a in modo che l'utente venga aggiunto al nuovo gruppo e non rimosso dai suoi gruppi precedenti.
6. Blocca e sblocca l'account utente
Puoi bloccare un account utente in Linux con l'opzione di comando usermod -L. Un utente bloccato non può accedere al sistema.
sudo usermod -L username
Puoi anche sbloccare l'utente con l'opzione -U:
sudo usermod -U username
7. Imposta una data di scadenza per l'account utente
Supponiamo che uno stagista si unisca alla tua organizzazione per due mesi. Dovrai rimuovere l'account utente una volta che lo stagista se ne sarà andato. Puoi giocare in modo intelligente qui e impostare una data di scadenza per l'account del tirocinante in modo che disabiliti automaticamente l'account.
Per impostare una data di scadenza per un account utente, puoi utilizzare l'opzione -e con data nel formato AAAA-MM-GG.
sudo usermod -e 2020-04-01 username
8. Modifica l'UID di un utente
Puoi modificare l'UID (ID utente) di un utente con l'opzione -u:
sudo usermod -u UID username
Alla fine...
Ci sono alcune altre opzioni che puoi esplorare facendo riferimento alla sua pagina man.
Secondo me, quello che hai appena visto sono gli esempi più comuni di comando usermod. Se hai domande o suggerimenti, fammi sapere.