[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico] [volume]
In generale, la gestione delle utenze da parte di nanoLinux è quella tradizionale dei sistemi Unix, dove in particolare, attraverso lo script nanorc è prevista una gestione parallela di utenze Samba, PostgreSQL e MySQL.
nanoLinux è organizzato per facilitare la condivisione delle utenze tramite l'uso di un servente NFS e NIS, già a partire dal livello «II».
È consigliabile gestire la creazione e l'eliminazione delle utenze attraverso lo script nanorc, per cercare di mantenere in sincronia la gestione Unix con quella di Samba, di PostgreSQL e di MySQL, anche se non si prospetta l'ipotesi di offrire accesso a elaboratori MS-Windows. Per comodità, le directory personali degli utenti sono raggruppate per categoria, a partire dalla directory /home/
. Per esempio, la directory /home/luce/chiara/
potrebbe essere la directory personale dell'utente chiara, che in qualche modo viene considerato parte della categoria luce.
Per inserire una nuova utenza, si comincia con il comando seguente:
#
nanorc user add
[Invio]
|
Il nominativo utente da inserire può essere lungo al massimo 16 caratteri, possibilmente composti da lettere minuscole dell'alfabeto inglese e da cifre numeriche, senza spazi. Supponendo di voler creare l'utente rossimario, si procede così:
rossimario
<OK
>
|
Viene richiesto di specificare la classificazione da dare all'utenza, proponendo inizialmente una stringa che corrisponde alla data attuale (si possono inserire al massimo otto caratteri, per garantire il funzionamento di Dosemu). Si suppone di voler sostituire questo valore predefinito con la sigla 5a0607, che rappresenta idealmente una classe in un anno scolastico particolare:
[Canc][Canc][Canc][Canc][Canc][Canc][Canc][Canc]
5a0607
<OK
>
Adding user `rossimario'... Adding new group `rossimario' (1000). Adding new user `rossimario' (1000) with group `rossimario'. Creating home directory `/home/5a0607/rossimario'. Copying files from `/etc/skel' Changing the user information for rossimario Enter the new value, or press ENTER for the default |
Vengono richiesti alcuni dati addizionali, che è bene compilare per poter individuare correttamente l'utente:
Full Name []:
studente Rossi Mario 5A 2006/2007
[Invio]
Room Number []:
[Invio]
Work Phone []:
[Invio]
Home Phone []:
[Invio]
Other []:
[Invio]
Is the information correct? [y/n]
y
[Invio]
Al termine viene richiesto di inserire per due volte la parola d'ordine, cosa che deve fare direttamente la persona interessata:
digitazione_all'oscuro
<OK
>
|
L'inserimento corrisponde alla visualizzazione di una serie di asterischi.
digitazione_all'oscuro
<OK
>
|
Dopo l'inserimento, per due volte, della parola d'ordine, se tutto è stato fatto senza errori, soprattutto se la parola d'ordine è stata inserita correttamente, si può procedere con l'inserimento di un utente successivo, oppure si può concludere l'operazione:
<
Cancel
>
Si osservi che se si tenta di inserire un nominativo-utente più lungo del consentito, questo viene tagliato al sedicesimo carattere, senza mostrare errori.
L'organizzazione di nanoLinux richiede che anche il cambiamento della parola d'ordine avvenga attraverso un comando di nanorc, avviato dall'amministratore. Ciò dipende dal fatto che nanoLinux è pensato principalmente per l'utilizzo in rete, con la condivisione delle utenze attraverso il NIS. Questa limitazione consente di mantenere valido l'abbinamento tra utenze Unix/NIS, Samba, PostgreSQL e MySQL, a discapito del fatto che l'amministratore deve sempre essere chiamato in causa per queste operazioni:
#
nanorc user passwd
[Invio]
|
rossimario
<OK
>
|
digitazione_all'oscuro
<OK
>
|
Per eliminare un'utenza si procede in modo simile:
#
nanorc user del
[Invio]
|
rossimario
<OK
>
nanoLinux, una volta installato, dispone di Samba, che va inteso come un'estensione al servizio NFS per l'accesso alle directory personali degli utenti.
Perché Samba possa funzionare in armonia con il sistema di gestione delle utenze standard, occorre intervenire su queste utenze attraverso lo script nanorc, in modo da garantire di avere gli stessi utenti con le stesse parole d'ordine, sia per l'accesso al sistema operativo, sia per l'accesso a Samba. I comandi utili a questo proposito sono:
Se per qualche ragione si vuole avere una gestione disgiunta delle utenze, si possono usare i comandi seguenti:
Si può intendere che il servizio offerto da Samba è utile se si colloca nell'elaboratore che svolge già il compito di servente NIS e NFS.
Teoricamente, la configurazione prevista per Samba prevede anche la condivisione della stampante lp tramite il protocollo SMB.
Samba è inserito in nanoLinux a completamento del sistema della gestione delle utenze ed eventualmente anche del sistema di condivisione della stampa; tuttavia, non ci può essere la sicurezza che le cose funzionino come ci si potrebbe aspettare, perché il successo dipende anche dalla «disponibilità» a cooperare da parte degli altri sistemi operativi che dovrebbero sfruttare questi servizi. |
Per l'uso di Samba, si può consultare la parte xlviii, scritta da Fulvio Ferroni.
nanoLinux è predisposto inizialmente con pochi utenti: l'amministratore e alcuni utenti comuni. Tuttavia, è disponibile un sistema NIS per la connessione a un servente NIS, dal quale ottenere le informazioni su altre utenze (precisamente per i file /etc/passwd
, /etc/shadow
e /etc/group
). In pratica, dal momento che l'utilizzo da CD o da DVD comporta delle limitazioni, è prevista la possibilità di acquisire queste utenze dall'esterno, innestando le directory personali di queste utenze a partire dalla directory /home/
, attraverso il protocollo NFS.
Per l'utilizzo di questa funzionalità, è necessario:
un servente NIS che metta a disposizione le informazioni dei file /etc/passwd
, /etc/shadow
e /etc/group
, tenendo conto che se la condivisione del file /etc/shadow
non funziona bene, potrebbe essere necessario disabilitare presso quel servente l'uso delle parole d'ordine oscurate (shadow password);
un servente NFS che metta a disposizione la directory /home/
, che deve contenere le directory personali degli utenti gestiti tramite il servente NIS (se il servente NFS offre la condivisione di un'altra directory, questa non può essere creata nel CD o nel DVD, pertanto, in tal caso non vi si può accedere).
Se sono rispettati questi requisiti, si può attivare la gestione di queste utenze remote attraverso il comando nanorc nis-home start:
#
nanorc nis-home start
[Invio]
|
Come si vede dalla figura, viene richiesto l'inserimento del dominio NIS; questa informazione dipende da come è configurato il servente NIS a cui ci si vuole rivolgere e si può ottenere presso un elaboratore già configurato con il comando nisdomainname, senza argomenti. Dopo l'inserimento e la conferma si passa all'indicazione dell'indirizzo IP del servente:
nano-domain
<OK
>
|
In generale è meglio inserire l'indirizzo anche se appartenente alla rete locale; si passa così all'inserimento dell'indirizzo del servente DNS e inizialmente viene proposto lo stesso usato per il NIS:
192.168.1.254
<OK
>
|
192.168.1.254
<OK
>
Se tutto funziona come si deve, viene innestata la directory /home/
remota e viene avviato il servizio NIS per l'acquisizione delle utenze. A quel punto, le directory personali degli utenti comuni locali non sono più accessibili, perché nascoste sotto quanto acquisito dal servente NFS.
Volendo fare le stesse cose a mano, senza l'aiuto dello script, si potrebbe ottenere lo stesso risultato dell'esempio attraverso i passaggi seguenti:
si modifica o si crea il file /etc/defaultdomain
, inserendo una riga contenente esattamente il nome del dominio NIS;
|
si modifica o si crea il file /etc/yp.conf
, inserendo una riga contenente la direttiva ypserver, con l'indirizzo del servente NIS;
|
si innesta la directory /home/
remota;
#
mount -t nfs 192.168.1.254:/home /home
[Invio]
si riavvia il servizio NIS.
#
/etc/init.d/nis stop
[Invio]
#
/etc/init.d/nis start
[Invio]
Se, pur essendo tutto in ordine, il NIS non è in grado di collegarsi, è probabile che sia necessario disattivare presso il servente NIS la gestione delle parole d'ordine oscurate (shadow password). |
Per approfondire l'argomento si possono consultare i capitoli 203 e 204.
Si osservi che l'utente tizio e gli altri utenti comuni standard, previsti per nanoLinux, sono associati a numeri UID e GID inferiori a 1 000, ovvero al di sotto del livello iniziale previsto per le utenze comuni. Il NIS predisposto con nanoLinux prevede la condivisione delle utenze che abbiano numeri UID da 1 000 in su, pertanto, anche volendo, le utenze standard di nanoLinux non sono condivisibili se non si cambiano i numeri UID e GID nei file |
nanoLinux non è organizzato per la gestione delle «quote» del disco, ma offre un meccanismo molto semplice per il controllo dello spazio utilizzato dagli utenti, attraverso il file /etc/profile
che si limita ad avvisare gli utenti dello stato del loro utilizzo. Per attivare questo controllo occorre specificare la disponibilità massima di spazio agli utenti:
#
nanorc disk-space edit
[Invio]
Quando si avvia il comando per la prima volta, viene creato il file /etc/nanoLinux/HOME_DISK_SPACE_ALLOWED
, con il contenuto seguente, assegnando una disponibilità di spazio pari a 10 000 000 byte; contestualmente viene avviato un programma per la modifica dei file di testo, allo scopo di poter cambiare il contenuto di questo file:
|
Come si vede dal suggerimento nel commento iniziale, si può specificare il limite per ogni utente, con la forma:
utente:n_byte |
Per dare un limite a tutti gli utenti non dichiarati espressamente in questo file occorre la direttiva seguente:
:n_byte |
Per fare un controllo complessivo delle utenze che non rispettano il limite di spazio assegnato, si può usare il comando seguente:
#
nanorc disk-space check
[Invio]
Si ottiene un elenco composto dagli utenti che utilizzano il loro spazio correttamente e da quelli che invece eccedono il limite. Tuttavia, l'elenco dei «buoni» si ottiene attraverso lo standard output, mentre quello dei «cattivi» si vede attraverso lo standard error; pertanto, è facile selezionare le informazioni che servono.
Per annullare il controllo dello spazio utilizzato, basta commentare le direttive presenti nel file /etc/nanoLinux/HOME_DISK_SPACE_ALLOWED
, oppure lo si può semplicemente cancellare.
Nella directory /etc/script/
sono presenti due script denominati lpr e lp, il cui scopo è quello di eseguire un controllo preliminare su ciò che viene inviato alla stampa, per poi passare il compito ai programmi corrispondenti, che però si trovano nella directory /usr/bin/
. La directory /etc/script/
si trova per prima nell'elenco dei percorsi di avvio (la variabile di ambiente PATH), così che gli script contenuti al suo interno vengono eseguiti prima di cercare programmi con lo stesso nome in altre collocazioni.
Gli script denominati lpr e lp controllano se è stato dichiarato qualcosa a proposito della volontà di limitare le stampe a un certo numero di pagine; se questo controllo non è stato richiesto, avviano i loro programmi omonimi; altrimenti, elaborano il file pervenuto per la stampa con lo script print-filter.
Lo script print-filter che si trova sempre nella directory /etc/script/
, cerca di riconoscere il file e se può, cerca di contarne le pagine. Se non può riconoscere il file, o comunque se non può elaborarlo, lo restituisce tale e quale (in tal caso il file in questione continua il suo percorso normale verso la stampa); se invece può gestirlo, lo rielabora in modo da contarne le pagine: se si determina che le pagine da stampare non superano il limite stabilito con la configurazione, il file viene inviato alla stampa; altrimenti viene annotato un messaggio di errore nel registro del sistema.
È evidente che questo meccanismo di controllo si può raggirare facilmente, utilizzando i programmi lpr lp con il loro percorso: |
La configurazione con la quale si fissa la quantità massima di pagine per stampa, spetta solo all'amministratore:
#
nanorc print maxpages
[Invio]
|
Come si vede dal suggerimento, lasciando il campo vuoto o inserendo esplicitamente il valore zero, si ottiene di annullare il controllo, in modo da non avere alcun limite di stampa. In questo caso vengono specificate 11 pagine:
11
<OK
>
|
Se il controllo delle pagine da stampare viene eseguito, nel caso di file di testo, questi vengono impaginati in modo particolare, aggiungendo anche un'intestazione con i dati di chi li ha stampati. Eventualmente, per cambiare questa impaginazione occorre modificare lo script print-filter nella directory /etc/script/
.
Per facilitare la gestione di un laboratorio, o di una rete locale che si affida a nanoLinux, è prevista un'utenza speciale, denominata admin, a cui è associato lo script /etc/script/ADMIN
. Attribuendo una parola d'ordine a questa utenza (con il programma passwd, senza bisogno di aggiornare anche la porzione che riguarda Samba), che in pratica ha gli stessi privilegi dell'utente root, si consente a una persona diversa si svolgere alcune funzioni. In condizioni normali, si presenta un menù con poche funzioni, come quello seguente:
login:
admin
[Invio]
Password:
digitazione_all'oscuro
[Invio]
|
Come si può intuire, si tratta di voci che servono a riavviare alcune funzionalità gestite da programmi demone, che per qualche ragione potrebbero smettere di funzionare senza un motivo particolare. In questo modo, di fronte a un mouse che non funziona più e a problemi simili, invece si riavviare si può agire senza dover chiedere aiuto all'amministratore vero e proprio.
Se l'elaboratore sembra avere un ruolo più importante, lo /etc/script/ADMIN
mostra più funzioni:
|
Naturalmente, l'utente root che lo preferisca può usare direttamente lo script ADMIN, senza bisogno di fingere un'accesso come utente admin.
Tabella 613.22. Descrizione delle funzioni disponibili all'utente admin.
|
Sono previste anche le utenze shutdown e reboot, da usare presso un elaboratore che ha un ruolo privilegiato nei confronti di una rete locale. Il loro scopo è di richiedere lo spegnimento o il riavvio degli elaboratori della rete locale, tenendo conto che l'elenco di tali elaboratori viene preso dalla lista di quelli previsti per la sincronizzazione del contenuto del file system (si veda il capitolo 616).
Appunti di informatica libera 2006.07.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome nanolinux_le_utenze.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico]