In qualità di amministratore di sistema Linux, una delle attività di base che dovrai eseguire è creare account per nuovi utenti e gestire gruppi di utenti. Naturalmente, ci sono utilità da riga di comando che ti consentono di farlo e in questo tutorial discuteremo le basi di due di questi comandi:adduser e aggiungi gruppo .
Prima di andare avanti, vale la pena ricordare che tutti gli esempi in questo articolo sono stati testati su Ubuntu 16.04 LTS. Inoltre, l'articolo tratta principalmente adduser, ma anche addgroup funziona allo stesso modo per la maggior parte.
Comandi Linux adduser/addgroup
Come suggerisce il nome, questi strumenti ti consentono di aggiungere nuovi utenti e gruppi al sistema. Ecco la sintassi di base di questi comandi:
adduser [options or flags] user
addgroup [options or flags] group
Di seguito è riportato come la pagina man descrive questi strumenti:
adduser and addgroup add users and groups to the system according to
command line options and configuration information in
/etc/adduser.conf. They are friendlier front ends to the low level
tools like useradd, groupadd and usermod programs, by default choosing
Debian policy conformant UID and GID values, creating a home directory
with skeletal configuration, running a custom script, and other fea?
tures.
I seguenti esempi in stile Domande e risposte dovrebbero darti una buona idea di come funzionano queste utilità.
Q1. Come utilizzare i comandi adduser e addgroup?
Aggiungere un utente o un gruppo è abbastanza semplice:tutto ciò che devi fare è passare il nome del nuovo utente (o gruppo) al comando. Ad esempio:
adduser [user-name]
Inutile dire che è necessario essere root o richiedere privilegi escalation affinché questo processo funzioni. Lo screenshot seguente mostra un nuovo utente che viene aggiunto tramite questo strumento:
Quindi puoi vedere che ti verranno poste alcune domande a cui puoi scegliere di rispondere per premere INVIO in modo che il sistema scelga i valori predefiniti da solo.
Una volta aggiunto, puoi passare al nuovo utente usando il comando su nel modo seguente:
Q2. Come fare in modo che adduser/addgroup utilizzi un file conf diverso?
Come già accennato all'inizio, per impostazione predefinita, i comandi adduser/addgroup leggono il file /etc/adduser.conf per svolgere le proprie operazioni. Tuttavia, se per qualche motivo vuoi che leggano un file personalizzato che risiede in una posizione personalizzata, puoi passare tali informazioni usando --conf opzione.
adduser --conf [new-conf-file-name-path]
Q3. Qual è la differenza tra sistema e utente/gruppo normale?
Se dai un'occhiata alla documentazione della pagina man di queste utilità, scoprirai che puoi usare adduser per aggiungere un utente normale o un utente di sistema.
Add a normal user
If called with one non-option argument and without the --system or
--group options, adduser will add a normal user.
Add a system user
If called with one non-option argument and the --system option, adduser
will add a system user.
È importante prima conoscere la differenza tra due.
Sebbene tecnicamente non vi sia alcuna differenza tra questi utenti, è necessario creare un utente di sistema durante la creazione di un account per eseguire un software di sistema come un demone o un servizio, in pratica se l'account non richiede un utilizzo interattivo. Tutto sommato, questa segregazione aiuta a mantenere separati gli account utente e software.
Q4. Come impedire a un utente di accedere?
Se vuoi disabilitare un account utente, ovvero impedire a un utente di accedere, usa il --disabled-login opzione.
adduser --disabled-login [OPTIONS] user
Questa opzione imposta la password su !, il che significa "l'accesso è disattivato, l'utente non sarà in grado di accedere".
Tieni presente che ciò impedirà solo l'accesso dell'utente:puoi comunque passare a questo account da un altro utilizzando su comando.
Q5. Come forzare adduser a creare una home directory personalizzata?
Come già discusso, il comando adduser preleva le informazioni da un file di configurazione e queste informazioni includono la directory da utilizzare come home directory dell'utente. Tuttavia, se lo desideri, puoi specificarlo tu stesso utilizzando --home opzione.
adduser --home [dire-name-path] user
--home DIR
Use DIR as the user's home directory, rather than the default
specified by the configuration file. If the directory does not
exist, it is created and skeleton files are copied.
Ci sono anche altre bandiere simili. Ad esempio, il --no-create-home opzione dice allo strumento di non creare la directory home, anche se non esiste. Poi c'è --shell che puoi utilizzare per forzare adduser a utilizzare una shell diversa come shell di accesso dell'utente, anziché quella predefinita specificata dal file di configurazione.
Q6. Come creare utenti o gruppi con ID personalizzati?
Se lo desideri, puoi forzare adduser e addgroup ad assegnare ID utente e gruppo personalizzati durante la creazione rispettivamente di un utente e di un gruppo. Questo può essere ottenuto usando --uid e --gid opzioni.
--uid ID
Force the new userid to be the given number. adduser will fail
if the userid is already taken.
--gid ID
When creating a group, this option forces the new groupid to be
the given number. When creating a user, this option will put
the user in that group.
Q7. Come fare in modo che adduser/addgroup emetta informazioni minime o massime?
Per fare in modo che questi strumenti emettano informazioni minime, usa --quiet opzione della riga di comando. E nel caso in cui desideri che questi strumenti siano dettagliati, usa il --debug opzione. Lo screenshot seguente fornisce un'idea chiara della differenza tra i due:
Conclusione
Entrambi i comandi adduser e addgroup hanno una curva di apprendimento decente, ma ciò non significa che siano difficili da capire. In effetti, puoi iniziare con l'apprendimento delle opzioni che ti aiutano a svolgere il tuo lavoro e comprendere gli altri gradualmente. Abbiamo già spiegato alcune delle opzioni qui. Una volta che hai finito con questi, vai alla pagina man comune per questi strumenti per saperne di più.