Come usare il comando Usermod in Linux

Una guida dettagliata sugli usi del comando usermod nei sistemi Linux con vari esempi

Il usermod command è il comando più affidabile di tutte le utilità di modifica dell'account utente fornite dai sistemi Linux. Fornisce uno spazio per consentire all'utente di apportare modifiche agli account utente esistenti.

Usermod aiuta a modificare le proprietà degli utenti esistenti su un sistema Linux. Queste proprietà possono includere parametri come password, nome di accesso, directory di accesso, data di scadenza, modifica dell'ID utente e molti altri.

Gestire tutti i dettagli dell'account utente dalla riga di comando è un compito abbastanza semplice, ma non tutti conoscono i comandi per farlo. Ti guideremo attraverso tutti gli scenari possibili con usermod nell'ambiente Linux.

Nota: Eseguire usermod comando devi essere un utente root o devi avere sudo accesso.

File con dettagli utente

Come stai per usare usermod comando, è molto importante che tu conosca i file con cui potresti aver bisogno di lavorare. Questi file contengono tutte le informazioni relative agli account utente presenti nel sistema.

FileDescrizione
/etc/passwdContiene diverse informazioni sull'utente
/etc/groupContiene informazioni su ciascun gruppo utilizzato nel sistema
/etc/gshadowContiene informazioni sull'account di gruppo sicuro
/etc/login.defsDefinisce la configurazione specifica del sito per la suite di password shadow.
/etc/ombraContiene la password crittografata e altre informazioni come i valori di scadenza dell'account o della password

Sintassi di base del comando Usermod

La sintassi da usare usermod il comando è di natura piuttosto elementare. L'importante è conoscere le opzioni con cui deve essere eseguito questo comando.

Sintassi:

usermod [opzioni] nome utente 

Opzioni:

Opzioniutilizzo
-lCambia il nome dell'utente
-DModifica la directory home dell'account utente esistente
-LBlocca l'account utente disabilitando la password
-USblocca il blocco della password
-mSposta i contenuti dalla directory home esistente dell'utente a qualsiasi nuova posizione della directory
-uModificare l'ID utente dell'utente esistente
-GCambia il gruppo dell'utente
-GUn elenco di gruppi supplementari di cui l'utente è anche membro.
-SCrea shell per nuovi account
-eModifica la data di scadenza dell'account utente

Applicazioni del comando Usermod

Come indicato nella tabella sopra, usermod Il comando viene utilizzato con diverse opzioni per manipolare gli attributi relativi alle informazioni sull'account utente.

Seguire gli esempi forniti di seguito per utilizzare il usermod comando per le tue attività che coinvolgono l'account utente e la manipolazione dei suoi attributi.

Cambiare il nome utente

Il nome dell'utente è una scelta personale e può essere modificato ogni volta che un utente lo desidera. È possibile modificare il nome di accesso utente degli utenti esistenti nei sistemi Linux tramite la riga di comando e la GUI dalle Impostazioni. Puoi seguire i comandi indicati di seguito per farlo tramite la riga di comando usando il usermod comando.

Sintassi:

usermod -l [nuovo nome utente] [nome utente esistente]

Esempio:

sudo usermod -l batman temporary

Produzione:

Puoi confermare la modifica del nome utente eseguendo il pulsante ID [utente] comando di comando.

gaurav@ubuntu:~$ id batman uid=1002(batman) gid=1002(temporaneo) groups=1002(temporaneo) gaurav@ubuntu:~$ id id temporaneo: 'temporaneo': nessun utente di questo tipo gaurav@ubuntu:~$

Nell'output sopra, è chiaro che il nome utente "temporaneo" è cambiato nel nuovo nome utente "batman".

Modifica del gruppo principale di un utente esistente

Nell'ecosistema Linux, la raccolta degli utenti del sistema informatico è chiamata "Gruppo". Lo scopo principale di avere "Gruppi" è definire determinati privilegi (Lettura, Scrittura, Esecuzione) rispetto alle risorse condivise all'interno degli utenti del gruppo. Di solito, il gruppo principale di un utente ha lo stesso nome di quello del nome utente.

Con usermod, puoi modificare il gruppo principale di un utente e aggiungere l'utente a un altro gruppo.

Puoi controllare i gruppi sul tuo sistema usando il gruppi comando.

gaurav@ubuntu:~$ gruppi gaurav adm cdrom sudo dip plugdev lpadmin sambashare gaurav@ubuntu:~$

Per modificare il gruppo principale di un utente, sarà necessario il nome del gruppo principale a cui l'utente è attualmente aggiunto. Utilizzare il ID [nome utente] comando per ottenere il nome del gruppo e l'ID del gruppo principale corrente dell'utente.

gaurav@ubuntu:~$ id batman uid=1000(batman) gid=1000(batman) groups=1000(batman),128(sambashare),4(adm),24(cdrom),27(sudo) gaurav@ubuntu: ~$ 

Qui il gruppo principale è 'Batman'. Ora usa il usermod comando per modificare il gruppo principale dell'utente. Sto cambiando il gruppo principale dell'utente in "sambashare". Controlla il seguente comando.

Sintassi:

sudo usermod -g [nome gruppo] [nome utente]

Esempio:

 sudo usermod -g sambashare batman

Produzione:

gaurav@ubuntu:~$ sudo usermod -g sambashare batman gaurav@ubuntu:~$ id batman uid=1000(batman) gid=128(sambashare) groups=128(sambashare),1000(batman),4(adm),24 (cdrom),27(sudo) gaurav@ubuntu:~$ 

Utilizzando l'operazione di cui sopra, il gruppo principale dell'utente batman viene ora modificato in "sambashare".

Aggiunta di un nuovo gruppo a un utente esistente

L'account utente può appartenere a più di un gruppo nel sistema Linux. Ogni utente ha un gruppo principale. E Linux consente anche di aggiungere gruppi secondari agli utenti.

sintassi:

sudo usermod -G [nuovo gruppo] [nome utente]

Esempio:

sudo usermod -G dip batman

Produzione:

gaurav@ubuntu:~$ sudo usermod -G dip batman gaurav@ubuntu:~$ id batman uid=1000(batman) gid=128(sambashare) groups=128(sambashare), 30(dip) gaurav@ubuntu:~$ 

Qui il nuovo gruppo chiamato "dip" viene aggiunto all'utente "batman".

Nota: Per aggiungere il nuovo gruppo come "Gruppo secondario" dovresti usare -un parametro.

-un si intende aggiungere. Usando -un prima di -G aggiungerà il gruppo come "Gruppo secondario" senza modificare il "Gruppo primario" dell'utente.

Utilizzare il comando seguente per mantenere invariato il gruppo principale dell'utente.

sudo usermod -a -G [gruppo da aggiungere] [Utente]

Modifica della directory principale dell'utente

Quando accedi al tuo sistema, la tua sessione inizia nella tua home directory che è unica per il tuo account utente. Il sistema assegna questa directory univoca quando viene creato l'account utente. Linux ti offre un'opzione per cambiare la tua 'Home Directory'. Nella maggior parte dei casi, il nome della "Directory principale" è lo stesso del nome utente e si trova sotto /casa directory.

Utilizzare il seguente comando per modificare la "Directory principale" dell'utente.

Sintassi:

sudo usermod -d [nuovo_percorso_directory] [nome utente]

Per verificare se la Home Directory è cambiata, usa il grep comando. Ho visualizzato le informazioni sull'utente "batman" dal /etc/passwd file.

gaurav@ubuntu:~$ sudo usermod -d /var/hpq/ batman gaurav@ubuntu:~$ grep 'var/hpq/' /etc/passwd batman:x:1001:4::/var/hpq/:/bin /false gaurav@ubuntu:~$

Nota: Per spostare i contenuti dalla vecchia home directory alla nuova directory devi usare -m. Utilizzare la sintassi come mostrato di seguito.

sudo usermod -m -d [nuovo_percorso_directory] [nome utente]

Modifica dell'UID (identificatore dell'utente) di un utente

Uid (User Identifier) ​​è il valore numerico univoco assegnato a ciascun utente da Linux. Il sistema identifica l'utente con un unico uid ad esso assegnato. UID zero è assegnato all'utente root.

È possibile modificare l'UID di un utente utilizzando il comando seguente.

Sintassi:

sudo usermod -u [nuovo_UID] utente

Esempio:

Controllo dell'uid corrente per l'utente batman usando il ID [utente] comando.

gaurav@ubuntu:~$ id batman uid=1000(batman) gid=4(adm) groups=4(adm),30(dip)

L'uid di Batman ora è 1000. Cambiamolo in 536 usando il usermod-u comando.

gaurav@ubuntu:~$ sudo usermod -u 536 batman [sudo] password per gaurav: gaurav@ubuntu:~$

Ora, controlliamo di nuovo l'uid dell'utente batman usando il ID [utente] comando

gaurav@ubuntu:~$ id batman uid=536(batman) gid=4(adm) groups=4(adm),30(dip) gaurav@ubuntu:~$

Qui possiamo vedere che l'uid dell'utente batman è cambiato da 1000 a 536 usando il usermod -u comando.

Aggiunta di commenti personali con l'account utente

Facciamo un esempio dell'utente "batman". Questo utente lavora in un grande ufficio e ha recentemente cambiato il numero di telefono del lavoro e il numero di scrivania. Quindi può aggiungere questi dettagli modificati al suo account utente usando il usermod -c comando.

Sintassi:

sudo usermod -c "Il tuo commento" Utente 

Produzione:

gaurav@ubuntu:~$ sudo usermod -c "Tony Stark, 405, 95985475" batman gaurav@ubuntu:~$ sudo grep 'batman' /etc/passwd batman:x:536:4:Tony Stark, 405, 95985475:/ var/hpq/:/bin/false gaurav@ubuntu:~$

Le modifiche si rifletteranno nel /etc/passwd file.

Blocco/disabilitazione degli utenti

Se desideri limitare l'accesso al sistema per un determinato utente, puoi farlo bloccando la password di quel particolare utente. Quindi, anche se l'utente tenta di accedere con la password, non gli sarà concesso l'accesso al sistema. ! il simbolo verrà aggiunto davanti alla password crittografata dell'utente nel /etc/ombra file, il che significa che la password è disabilitata.

Sintassi:

sudo usermod -L [utente]

Produzione:

gaurav@ubuntu:~$ sudo usermod -L batman gaurav@ubuntu:~$ sudo grep batman /etc/shadow batman:!:17612:0:99999:7::: gaurav@ubuntu:~$

Sblocco/abilitazione degli utenti

Puoi facilmente sbloccare/abilitare la password di un utente che era precedentemente disabilitato. Puoi controllare il /etc/ombra file per la modifica. ! simbolo verrà rimosso dalla password crittografata dell'utente.

Sintassi:

sudo usermod -U [utente]
gaurav@ubuntu:~$ sudo usermod -U batman gaurav@ubuntu:~$ sudo grep batman /etc/shadow batman:t:18511:0:99999:7::: gaurav@ubuntu:~$

Modifica della shell utente

La shell GNU/Linux è una speciale utility interattiva. Fornisce un modo per gli utenti di avviare programmi, gestire i file sul filesystem e gestire i processi in esecuzione sul sistema Linux. La shell contiene una serie di comandi interni che si utilizzano per controllare cose come copiare file, spostare file, rinominare file, visualizzare i programmi attualmente in esecuzione sul sistema e arrestare i programmi in esecuzione sul sistema.

Puoi cambiare l'utente della shell usando usermod -s comando. Usa la sintassi indicata di seguito.

Sintassi:

sudo usermod -s /bin/sh [utente]
gaurav@ubuntu:~$ sudo usermod -s /bin/sh batman [sudo] password per gaurav: gaurav@ubuntu:~$ grep batman /etc/passwd batman:x:536:4:Questo è il mio account demo:/var /www/:/bin/sh

Puoi verificare la modifica usando grep comando come mostrato nell'output sopra.

Imposta la data di scadenza dell'utente

Se desideri che un determinato account utente venga utilizzato solo per un determinato periodo di tempo, puoi impostare una data di scadenza per quell'account utente. La data di scadenza è inserita nel formato di AAAA-MM-GG.

Sintassi:

usermod -e [AAAA-MM-GG] [Utente]

Per verificare la data di scadenza attuale dell'account, utilizzare il chage -l [utente] comando.

gaurav@ubuntu:~$ sudo chage -l batman [sudo] password for gaurav: Ultimo cambio password: 06 settembre 2020 Scadenza password: mai Password inattiva: mai Scadenza account: mai Numero minimo di giorni tra la modifica della password: 0 Numero massimo di giorni tra la modifica della password: 99999 Numero di giorni di avviso prima della scadenza della password: 7 gaurav@ubuntu:~$ 

Nell'output sopra, possiamo vedere che attualmente la data di scadenza dell'utente batman non è impostata. Ora useremo il usermod -e comando per impostare la data di scadenza per l'utente batman.

Esempio:

sudo usermod -e 2022-06-19 batman

Ora controlleremo di nuovo lo stato della data di scadenza dell'utente utilizzando il pulsante chage -l [utente] comando.

gaurav@ubuntu:~$ sudo chage -l batman [sudo] password per gaurav: Ultima modifica della password: 06 settembre 2020 Scadenza della password: mai Password inattiva: mai Scadenza dell'account: 19 giugno 2022 Numero minimo di giorni tra la modifica della password: 0 Numero massimo di giorni tra la modifica della password: 99999 Numero di giorni di avviso prima della scadenza della password: 7 gaurav@ubuntu:~$ 

In questo modo, abbiamo impostato una data di scadenza per l'account utente "Batman" al 19 giugno 2022.

Conclusione

In questo tutorial, abbiamo visto le applicazioni del usermod comando per modificare i dati dell'account utente di base in modo completo. Sentiti libero di contattarci nel caso in cui ci siamo persi qualcosa.

Dai un'occhiata ai nostri altri articoli qui sotto per saperne di più su Tech. Buon apprendimento!