Laboratorio di Amministrazione di Sistemi L-A

Prova pratica - 4 aprile 2007

Una rete di workstation con indirizzi compresi tra 172.20.2.1 e 172.20.2.14 dispone di un servizio di scambio dati peer-to-peer organizzato come segue:

Dettagli e file da consegnare:

Tutti gli script sono in esecuzione sulle workstation, nessuno sul server LDAP, e sono collocati nella directory /root.

  1. resource.schema (2)- definire gli attributi seguenti:
    e le classi dir e source che consentano di inserire le entry in modo da formare un albero a due livelli, il primo formato dai nomi di directory ed il secondo dagli indirizzi degli host.

  2. share.sh (6)- Comando che accetta come parametro un nome di directory, ne verifica l'esistenza, deduce l'indirizzo della workstation su cui viene lanciato, e registra sul server LDAP la disponibilità della risorsa.

  3. search.sh (6)- Comando che accetta come parametro un nome (anche parziale) di directory e ne effettua la ricerca sul server LDAP

  4. init.sh (4)- Comando che predispone la workstation alla raccolta delle statistiche di utilizzo:

  5. stats.sh (4)- Comando che raccoglie sulla workstation le statistiche di utilizzo. Ad ogni esecuzione deve inviare al system logger il valore totale del traffico (input+ouput) generato dall'attività di scambio file rispetto all'ultima esecuzione dello script. Utilizzare una facility/priority tale che, sul sistema ubuntu standard delle macchine virtuali del laboratorio, i messaggi vengano inviati al file /var/log/user.log

  6. get.sh (4)- Comando che accetta come primo parametro l'indirizzo IP di una workstatio:n e coreme secondo parametro un nome completo di directory. Utilizzando ssh e tar effettua un trasferimento dell'intera directory remota, copiando nella directory corrente della macchina da cui viene lanciato l'intera struttura di sottodirectory e file.

  7. sort.sh (6)- Comando che accetta come parametri un elenco di indirizzi IP di workstation, contatta ogni workstation via ssh per leggere la più recente registrazione di e traffico dal log, e restituisce l'elenco di IP ordinato dalla workstation con traffico meno elevato a quella con traffico più elevato.

  8. fetch.sh (8)- Comando che accetta come parametro un nome completo di directory (quindi che si assume per ipotesi essere unico all'interno di LDAP), ed usando search.sh, sort.sh e get.sh la scarica secondo questo algoritmo: