Precedente Successivo Indice

6. Di cosa avete bisogno per configurare NYS?

6.1 Determinare se siete Server, Slave o Client.

Per rispondere a questa domanda tenete in considerazione questi due punti:

Nel primo caso avete due possibilità:

Similarmente, come nel caso del NIS tradizionale, se non avete un server NIS, allora avrete bisogno di un programma server NIS (normalmente ypserv) e dovete assegnare una delle macchine della rete come server NIS master. E nuovamente, dovrete, come minimo, installare un server slave.

6.2 Il Software

Dovrete procurarvi e compilare la libreria con i servizi NYS libnsl.so. Se non avete i ``DLL tools'' dovrete procurarvi le librerie (condivise, statiche e sorgenti) dallo stesso sito di cui sotto. Nota, tuttavia, che la versione precompilata potrebbe essere (e probabilmente lo è) più vecchia dell'ultima release formato sorgente.

Le librerie NYS (sogenti e compilati) si trovano a:

  Site                Directory                    File Name

  ftp.lysator.liu.se  /pub/NYS/libs                nys-0.27.4.tar.gz
  ftp.lysator.liu.se  /pub/NYS/binaries/lib        libnsl.so.1.0.a26

  ftp.funet.fi        /pub/Linux/BETA/NYS/libs     nys-0.27.?.tar.gz

I programmi ``login'' e ``su'' precompilati si trovano a:

  Site                Directory                    File Name

  ftp.lysator.liu.se  /pub/NYS/binaries/bin        login
  ftp.lysator.liu.se  /pub/NYS/binaries/bin        su

  ftp.funet.fi        /pub/Linux/BETA/NYS/bin      login
  ftp.funet.fi        /pub/Linux/BETA/NYS/bin      su

Allo stesso modo, file di esempio di configurazione possono essere trovati a:

  Site                Directory                   File Name

  ftp.lysator.liu.se  /pub/NYS/binaries/etc       *conf
  ftp.funet.fi        /pub/Linux/BETA/NYS/etc     *conf

Per la compilazione delle librerie nsl, seguite le istruzioni provviste con il software. Se volete compilare le librerie condivise DLL dovete avere installato il programma ``DLL tools'' nella directory standard (/usr/dll). I ``DLL tools'' (il pacchetto tools-2.11.tar.gz o successivo) si possono trovare su diversi siti ftp.

6.3 Configurare un "NYS Client" usando NYS

A differenza del NIS tradizionale, non ci sono settaggi per il client NIS. Tutto ciò che serve è che il file di configurazione NIS (/etc/yp.conf) punti al(ai) server corretto(i) per ottenere le sue informazioni. Perciò, il file di configurazione dei ``Name Services Switch'' (/etc/nsswitch.conf) deve essere installato correttamente.

Consultate gli esempi provvisti con il sorgente.

6.4 Il file nsswitch.conf

Il file dei ``Network Services switch'' /etc/nsswitch.conf determina l'ordine dei controlli eseguiti quando viene richiesto un certo tipo di informazione, come nel file /etc/host.conf che determina il modo in cui vengono controllati i nomi delle macchine. Di nuovo, controllate il file di esempio incluso nella distribuzione del sorgente. Per esempio, la linea

    hosts: files nis dns

specifica che la funzione di controllo dei nomi di macchina deve prima controllare il file /etc/hosts, seguita da un controllo del NIS ed alla fine attraverso i "domain name service" (/etc/resolv.conf e named), a quel punto se non c'è nessuna risposta verrà mostrata una stringa di errore.

6.5 Rendere disponibili a tutti i binari le librerie NYS

Invece di ricollegare tutti i binari con la libreria NYS (libnsl.so), una soluzione pulita è stata raggiunta provvedendo all'utente la possibilità di costruire un NYS consapevole della libc esistente. Questo prevederà di ricompilare una nuova libc e rimpiazzare le esistenti /lib/libc.so.x.y.z per tutti i programmi (compilati non staticamente) al fine di renderli consapevoli della presenza del NYS.

Questa fusione vi dà il vantaggio sulla implementazione del NIS tradizionale nella libc di linux, nel senso che vi permette un supporto trasparente alle ``shadow passwords'' (tramite il file /etc/nisswitch.conf).

Seguite i seguenti passi per ricostruire una libreria libc con il supporto NYS.

La libreria generata dopo la compilazione avrà un nome tipo

    libc.so.4.5.26

e sarà inserita nella directory jump/libc-nys. Per installarla il nostro consiglio è di copiarla in /lib con un nome lessicograficamente maggiore del numero di versione. Semplicemente aggiungendo una lettera ``a'' si risolve l'arcano. Per esempio:

    % cp jump/libc-nys/libc.so.4.5.26 /lib/libc.so.4.5.26a

Alternativamente, aggiungete ``nys'' per poterla identificare facilmente. Adesso eseguite il comando

    % ldconfig

che azzera la cache per permettervi di usare la nuova libreria. La strategia del collegamento dinamico può essere esaminata con il comando ``ldconfig -p''.

Questo è quanto. Tutti i vostri programmi, adesso, sapranno che c'è il NYS. Ricordate che normalmente il programma ``login'' è compilatao staticamente e perciò non può accedere alle funzioni del NYS tramite la nuova libc con il supporto del NYS. Dovrete quindi ricompilare il programma ``login'' senza il flag -static, oppure collegarlo staticamente alla libreria libnsl.a.


Precedente Successivo Indice