Introduzione
Il usermod
command è uno dei numerosi comandi Linux a disposizione degli amministratori di sistema per la gestione degli utenti. Viene utilizzato per modificare i dettagli dell'account utente esistente, come nome utente, password, posizione della home directory, shell predefinita e altro.
In questo tutorial imparerai come usare usermod
comando in Linux per modificare le informazioni di accesso dell'utente.
Prerequisiti
- Un sistema che esegue Linux
- Accesso alla riga di comando
Sintassi Linux mod utente
La sintassi di base per usermod
il comando è:
usermod [options] [username]
Il usermod
il comando modifica i file di configurazione contenenti informazioni sull'account utente. Questi file sono:
/etc/passwd
– informazioni sugli account degli utenti/etc/shadow
– informazioni relative alla sicurezza dell'utente/etc/group
– informazioni sui gruppi/etc/gshadow
– informazioni relative alla sicurezza del gruppo/etc/login.defs
– configurazione della suite di password shadow
È possibile modificare direttamente i suddetti file, utilizzando un editor di testo come nano o vim. Tuttavia, usermod
rende il processo più rapido e semplice.
Esempi di comandi usermod
Di seguito è riportato un elenco di usermod
opzioni, insieme alla sintassi e agli esempi specifici dell'opzione.
Aggiungi informazioni a un utente
Usa usermod
con il -c
opzione per aggiungere un'informazione su un utente al /etc/passwd
file. Questo aiuta a identificare l'utente e fornisce spazio per commenti temporanei relativi all'utente.
sudo usermod -c "[information]" [username]
Usa il getent
comando per controllare la voce relativa all'utente nel /etc/passwd
file.
La voce ora contiene il commento aggiunto con usermod
.
Imposta la directory principale dell'utente
Quando crei un utente in Linux, il sistema crea automaticamente una cartella home per lui in /home/[username]
. Per modificare la posizione della cartella Inizio dell'utente, utilizza il -d
opzione:
sudo usermod -d [directory-location] [username]
L'esempio sopra ha cambiato la cartella home dell'utente da /home/mike
a /var/mike
. Il getent
il comando conferma l'avvenuta modifica.
Il -d
l'opzione non sposta il contenuto della cartella Inizio nella nuova posizione. Se l'utente ha utilizzato in precedenza la cartella home per archiviare i propri file, aggiungere il -m
opzione per spostare il contenuto della home directory dell'utente:
sudo usermod -d [location] -m [username]
Nel caso dell'utente dell'esempio sopra, il comando è simile al seguente:
sudo usermod -d /var/mike -m mike
Imposta la data di scadenza dell'account utente
Gli account utente non scadono in Linux per impostazione predefinita. Usa il chage -l
comando per controllare le informazioni sull'invecchiamento dell'account per un utente:
sudo chage -l [username]
Come mostra l'esempio sopra, l'account è impostato per non scadere. Modificalo utilizzando usermod
con il -e
opzione. Ti consente di specificare l'anno, il mese e il giorno di scadenza dell'account:
sudo usermod -e [YYYY-MM-DD] [username]
Conferma la modifica riuscita controllando l'account con il chage -l
comando di nuovo:
Imposta shell utente
Usa usermod -s
per cambiare la shell predefinita per un singolo utente:
sudo usermod -s [shell] [username]
Se la modifica ha avuto esito positivo, getent
mostra la nuova shell predefinita alla fine della voce.
Modifica l'UID dell'utente
Un UID (identificatore utente) è il numero univoco assegnato all'utente al momento della creazione dell'account con il useradd
comando. Il /etc/login.defs
file definisce l'intervallo di valori UID. Modifica l'UID di un utente con usermod -u
comando:
sudo usermod -u [new-UID] [username]
Nel passwd
voce, trova l'UID subito dopo il nome utente e la password:
Modifica il nome di accesso dell'utente
Modifica un nome utente aggiungendo il -l
opzione. La sintassi è la seguente:
sudo usermod -l [newname] [oldname]
Come mostra l'esempio sopra, usando il vecchio nome utente per controllare il /etc/passwd
il file non restituisce più dati. Tuttavia, gli stessi dati sono ora disponibili con il nuovo nome.
Blocca e sblocca un utente
Blocca un account utente utilizzando il -L
opzione.
sudo usermod -L [username]
Una volta che l'account è stato bloccato con -L
, i tentativi di accesso dell'utente falliscono dopo aver digitato la password:
Per sbloccare l'account precedentemente bloccato, digita usermod -U
seguito dal nome dell'account:
sudo usermod -U [username]
Come puoi vedere nell'esempio sopra, la password ora funziona di nuovo e la shell zsh viene avviata.
Imposta la password per un utente
Il modo più comune per impostare una password per un utente è utilizzare il comando passwd. usermod
ha anche il -p
dedicato opzione per creare una password:
sudo usermod -p [password] [username]
Tuttavia, questo metodo di creazione di una password non è consigliato poiché la password è visibile nel /etc/shadow
file. Se usi il comando grep per cercare un nome utente nel /etc/shadow
file, la voce contiene la versione in testo normale della password creata con usermod
:
Cambia il gruppo principale dell'utente
Modifica il gruppo principale di un utente con usermod -g
:
sudo usermod -g [group] [username]
L'id
il comando conferma l'avvenuta modifica del gruppo principale:
Aggiungi un utente a un gruppo supplementare
A parte il loro gruppo principale, gli utenti possono essere membri di un numero qualsiasi di gruppi supplementari. Il -G
l'opzione aggiunge l'utente a un gruppo supplementare:
sudo usermod -G [group] [username]
Tuttavia, se l'utente appartiene già ad alcuni gruppi supplementari, usermod -G
li rimuove da quei gruppi e li aggiunge solo a quelli specificati dopo il comando.
Nell'esempio seguente, l'utente è già membro di un gruppo supplementare. La combinazione di -a
e -G
options aggiunge l'utente al gruppo specificato e lo lascia nel gruppo supplementare di cui era già membro.
sudo usermod -a -G [group] [username]
Cambia l'account utente utilizzando più opzioni
Usa più opzioni in un comando per modificare un utente in modo più conveniente. L'esempio seguente mostra un usermod
comanda che:
- cambia la cartella home e la shell,
- imposta una data di scadenza dell'account,
- aggiunge un commento,
- modifica l'UID e
- aggiunge l'utente a un gruppo supplementare.
sudo usermod -d [home-folder] -s [shell] -e [YYYY-MM-DD] -c "[comment]" -u [UID] -aG [group] [username]
Visualizza tutti i comandi e gli argomenti di usermod
Per leggere usermod
aiuto, usa il --help
argomento:
usermod --help
Per un elenco più dettagliato di opzioni e funzioni, utilizzare il comando man:
man usermod