Questa guida richiede una conoscenza di base dell'uso del terminale. Se non sai come si utilizza consulta la guida Utilizzare il terminale.
Durante l'utilizzo di Ubuntu può capitare di dover creare nuovi utenti (ad esempio nella configurazione di utenti per samba) o di dover modificare le informazioni sugli utenti già esistenti.Per farlo è possibile utilizzare l'interfaccia grafica (ad esempio in Ubuntu 12.10 basta andare sul menù di sistema -> Impostazioni di sistema... -> Account utente) oppure da terminale.
In questa breve guida spiego dei comandi base su come gestire gli utenti (compreso root) utilizzando il terminale che permette, rispetto all'interfaccia grafica, migliori possibilità di gestione.
Se sei già a conoscenza delle nozioni base dei permessi, degli utenti e dei gruppi puoi passare direttamente alla Gestione dei gruppi o Gestione degli utenti.
Introduzione agli utenti, ai gruppi e ai permessi
Per chi non avesse dimestichezza sugli utenti, i gruppi e i permessi introduco velocemente come Linux gestisce i file e le directory che vengono create.
Gli utenti sono entità su cui è possibile assegnare la proprietà dei file e delle directory e possono essere assegnati a dei gruppi.
I gruppi, oltre a raggruppare uno o più utenti, concedono dei permessi di sistema diversi agli utenti che ne fanno parte (ad esempio di amministratore).
Ad ogni file e directory viene assegnato un proprietario e un gruppo a cui possono essere assegnati permessi differenti. Oltre a questi è anche possibile stabilire i permessi per gli "altri utenti", ovvero tutti queli utenti che non sono i proprietari e non fanno parte del gruppo a cui è assegnato il file.
I permessi che possono essere assegnati alle precedenti categorie sono lettura (r), scrittura (w) ed esecuzione (x) e vengono rappresentati simbolicamente elencando i tre caratteri per ogni tipologia di utente (ovvero proprietario, gruppo e altri). Per esempio rwxrw-r-- significa che il proprietario ha permessi di lettura, scrittura ed esecuzione, il gruppo ha permessi di lettura e scrittura, gli altri utenti di sola lettura. Davanti a tale stringa è presente una d per indicare che si tratta di una directory o un - per indicare che non è una directory.
Le informazioni sui permessi, il proprietario ed il gruppo possono essere visualizzati da terminale utilizzando il comando
$ls -l [DIRECTORY]
sostituendo, se necessario, [DIRECTORY] con quella in cui si vuole che vengano visualizzati i permessi. Se non viene specificato riporterà la lista dei permessi nella directory attuale.
L'output sarà di questo tipo:
$ls -l / totale 124 drwxr-xr-x. 2 root root 4096 ott 23 22:40 bin drwxr-xr-x. 3 root root 4096 ott 24 00:37 boot drwxr-xr-x. 2 root root 4096 mar 14 2012 cdrom drwxr-xr-x 16 root root 4300 ott 30 13:00 dev drwxr-xr-x. 170 root root 12288 ott 30 15:10 etc [...]
La prima colonna riporta la lista dei permessi raggruppati per proprietario (rwx per tutti in questo esempio), gruppo (r-x) e per gli altri utenti (r-x); la seconda colonna indica il numero di collegamenti a quel file (hard links); la terza indica il proprietario; la quarta il gruppo; la quinta la dimensione del file sul disco (in blocchi); le ultime indicano la data di modifica e il nome del file/directory.
Per maggiori informazioni sull'utilizzo del comando ls consulta la guida GNU coreutils manual. Se vuoi saperne di più riguardo ai permessi sui file e sulle directory visita la guida Gestione file e directory da terminale.
Gestione dei gruppi
Attraverso il terminale è possibile gestire (creare, cancellare o modificare) i gruppi. I comandi (che bisogna eseguire da root) che permettono di farlo sono quattro:
#groupadd [opzioni] GRUPPO
serve per creare un nuovo gruppo. Al posto di GRUPPO bisogna inserire il nome del gruppo che si desidera creare.
Le opzioni principali sono:
-g, --gid GIDper impostare l'ID numerico del gruppo-o, --non-uniqueper impostare un ID non univoco-p, --password PASSWORDper impostare una password per il gruppo-r, --systemper creare un gruppo di sistema
#groupdel NOME_GRUPPO
serve per cancellare il gruppo chiamato NOME_GRUPPO
#groupmod [opzioni] GRUPPO
serve per modificare il gruppo chiamato GRUPPO.
Le opzioni principali sono:
-g, --gid GIDper cambiare l'ID numerico del gruppo-o, --non-uniqueper impostare un ID non univoco-p, --password PASSWORDper cambiare la password per il gruppo-n, --new-name NUOVOper cambiare il nome in NUOVO
#groups [NOME_UTENTE]
serve per visualizzare la lista dei gruppi di cui fa parte l'utente chiamato NOME_UTENTE. Se viene passato senza parametri verranno visualizzati i gruppi di cui fa parte l'utente che lancia il comando.
Gestione degli utenti
Come per i gruppi esistono quattro comandi (da eseguire come root) che permettono di gestire gli account utente attraverso il terminale. In particolare
#useradd [opzioni] LOGIN
serve per creare un nuovo account. Sostituisci LOGIN con il nome del nuovo utente che desideri creare.
Le principali opzioni sono:
-b BASE_DIRper impostare una base directory diversa da quella di default1-d HOME_DIRper impostare una home directory diversa da quella di default2-g GRUPPOserve per assegnare il GRUPPO principale dell'utente-G LISTAserve per assegnare all'utente una LISTA di gruppi secondari-mserve per creare la home directory-Mserve per non creare la home directory-p PASSWORDserve per impostare la PASSWORD dell'utente-rserve per creare un utente di sistema
/home2: la home direcotry di default è
/home/LOGIN; LOGIN è il nome dell'utente creato
#userdel [opzioni] LOGIN
serve per cancellare l'utente chiamato LOGIN.
Le opzioni per questo comando sono:
-r, --removeper cancellare la home directory-f, --forceper forzare la cancellazione dei file
#usermod [opzioni] LOGIN
serve per modificare l'utente chiamato LOGIN.
Le opzioni principali sono:
-a, --appendper aggiungere l'utente ai gruppi3-d HOME_DIRper cambiare la home directory-g GRUPPOserve per cambiare il GRUPPO principale dell'utente-G LISTAserve per assegnare all'utente una LISTA di gruppi secondari-m, --move-homeserve per spostare il contenuto della home directory4-p PASSWORDserve per cambiare la PASSWORD dell'utente
-a va utilizzato con l'opzione -G4:
-m va utilizzato unitamente a -d
#users
serve per visualizzare gli utenti attivi.
Nessun commento:
Posta un commento