# Utenti centralizzati Vs Portatile

## Kernel78

Ciao a tutti, ho letto che per centralizzare gli utenti di una rete viene spesso consigliato di usare OpenLDAP (e NFS per montare la home).

Premetto che OpenLDAP non lo conosco ma adesso volevo approfondire un po' questo discorso.

Il mio problema è che nella mia rete solo un pc è fisso, gli altri sono portatili e quindi mentre la soluzione OpenLDAP+NFS andrebbe benissimo (penso) quando il portatile è in rete presumo ci sarebbe qualche problema a farlo funzionare quando si trovi scollegato da essa. Il portatile è fuori casa tutta la settimana insieme a me e torniamo a casa solo nel fine settimana.

In questo caso penso non si possa prescindere dal tenere in locale sia il file /etc/passwd che l'intera home.

Pensavo magari di utilizzare rsync per sincronizzare il portatile e il fisso (visto che nel fine settimana lavoro su questo) ma ho qualche dubbio su come procedere, avete mai affrontato situazioni simili o avete idee più brillanti della mia ? La copia manuale è noiosa è troppo poco elegante come soluzione e troppo esposta a errori o dimenticanze   :Sad: 

----------

## .:chrome:.

ci stavo pensando da un po' anche io...

però LDAP mi sembra una soluzione un po' complessa, e in questi giorni mi chiedevo se forse non fosse più comodo usare un samba ben configurato per fare una specie di roaming di profilo...

tu che ne dici?

----------

## Kernel78

Rispondo che su samba ne so meno che su LDAP  :Crying or Very sad:  (ed essendo una cosa originaria di win dovrei farmi forza per impararla)

Invece sto pensando sempre più a rsync per riversare la home dal portatile al fisso quando torno a casa e spostarla di nuovo sul portatile prima di ripartire.

Si, più ci penso più mi garba come soluzione, semplice, efficente e facile da implementare.

Vedo se riesco a tirar fuori qualcosa entro stasera (visto che domani parto con il portatile  :Wink:  )

----------

## .:chrome:.

 *Kernel78 wrote:*   

> Rispondo che su samba ne so meno che su LDAP  (ed essendo una cosa originaria di win dovrei farmi forza per impararla)
> 
> Invece sto pensando sempre più a rsync per riversare la home dal portatile al fisso quando torno a casa e spostarla di nuovo sul portatile prima di ripartire.
> 
> Si, più ci penso più mi garba come soluzione, semplice, efficente e facile da implementare.

 

non esseer così prevenuto verso samba... nemmeno io lo amo molto, ma se ben configurato non è per niente male.

e per esperiezna ti dico che è mooolto più semplice da trattare di OpenLDAP  :Wink: 

quanto a rsync... è vero... farebbe anche al caso mio, ma speravo in una soluzione automatizzata, che sincronizzi le due macchine con la versione più aggiornata dei files

----------

## Kernel78

Ovviamente anche io voglio automatizzare la cosa, non prendo nemmeno in considerazione una soluzione che richieda il mio intervento manuale   :Cool: 

Pensavo a uno scriptino sul fisso lanciato da cron o a qualcosa di più carino.

Spulciando nel portage ho trovato anche intersync che sembra interessante ...

----------

## SilverXXX

openafs e codafs non sono quel che fan per voi?

----------

## Kernel78

 *SilverXXX wrote:*   

> openafs e codafs non sono quel che fan per voi?

 

Non conoscendoli non posso valutarli, provo a darci un'occhiata e ti faccio sapere   :Wink: 

----------

## .:chrome:.

 *Kernel78 wrote:*   

>  *SilverXXX wrote:*   openafs e codafs non sono quel che fan per voi? 
> 
> Non conoscendoli non posso valutarli, provo a darci un'occhiata e ti faccio sapere  

 

vale lo stesso per me. grazie per la dritta  :Smile: 

----------

## Kernel78

@SilverXXX

Non è che tu li hai già provati o sai suggerirne uno piuttosto che un'altro ? Sulla carta sembrano interessanti entrambi ma non ho tempo per approfondire la conoscenza di tutti e due  :Crying or Very sad: 

----------

## SilverXXX

Oddio, io so solo cosa fanno,e mi sembravano adatti al vostro caso. Ma non  essendo di utilizzo comune, non mi è mai capitato di usarli.

----------

## cloc3

 *Kernel78 wrote:*   

> la soluzione OpenLDAP+NFS andrebbe benissimo (penso) quando il portatile è in rete presumo ci sarebbe qualche problema a farlo funzionare quando si trovi scollegato da essa.
> 
> 

 

Per Openldap, si condividono solo gli utenti non di sistema. Questi ultimi si possono lasciare nei files e hanno la precedenza di lettura in nsswitch. È anche più sicuro, perché non metti in rete la password di root.

Nessun problema, di conseguenza, quando il portatile è standalone. Openldap fa un po' impazzire all'inizio, quando ci si incastra nell'uso del formato ldif (fai esercizi di backup, indispensabili per esempio in caso di cambiamento di versione), ma poi diventa pressoché insostituibile.

Nfs, invece, non ti serve, perché sembrerebbe che il portatile sia usato preferenzialmente fuori dalla rete locale.

L'unico strumento, dunque rimane rsync.

----------

## .:chrome:.

 *cloc3 wrote:*   

> Per Openldap, si condividono solo gli utenti non di sistema. Questi ultimi si possono lasciare nei files e hanno la precedenza di lettura in nsswitch. È anche più sicuro, perché non metti in rete la password di root.

 

OpenLDAP non condivide *tutti* gli utenti ma solo quelli che inserisci nella directory, per cui basta creare la struttura dati ed inserire solo gli utenti che si vogliono migrare, ed il problema non si pone.

o almeno... questa era l'idea originale. approfondirò sui suggerimenti di Silver  :Smile: 

----------

## Dr.Dran

Attenzione... c'è un problema sia su conda che su openafs, ebbene viene creata una sorta di cache in locale dove vengono immagazzinati i dati recenti su cui si stava lavorando: quindi escludete il concetto mi porto via la mia home di lavoro in giro con il portatile, non è proprio così, magari se ho solo uno o 2 file va bene... se invece ho qualche giga...mmm probabile che non ci sia tutto...   :Razz:   :Wink: 

Comunque è una soluzione che su cui sto lavorando anche io... e sto cercando una cosa make easy  :Very Happy: 

----------

## .:chrome:.

beh, senti... facciamo 'sta prova con coda e openAFS

se troviamo una soluzione "comoda" direi che siamo a cavallo. diversamente ci arrangeremo alla vecchia con openLDAP e/o SMB. che ne dite?

io inizio a buttare giù la mia idea:

ho due macchine, e voglio potermi loggare indifferentemente su entrambe, trovando gli stessi documenti

si tratta quindi di fare una sincronizzazione tra le due homes, individuando i files più recenti

rsync non va bene perché fa una copia discriminando solo sorgente e destinazione, e non tra file più o meno aggiornati

----------

## Dr.Dran

 *k.gothmog wrote:*   

> beh, senti... facciamo 'sta prova con coda e openAFS
> 
> se troviamo una soluzione "comoda" direi che siamo a cavallo. diversamente ci arrangeremo alla vecchia con openLDAP e/o SMB. che ne dite?
> 
> io inizio a buttare giù la mia idea:
> ...

 

Concordo... io addirittura voglio ampliare il discorso, appena mi arriva il portatile provo a fare una cosa cool utilizzando pure il programma ifplugd: nel senso sono fuori rete non sincronizzo; se sono in una rete che non è casa mia non sincrosizzo; se sono a "casa" in rete sincronizzo i file modificati + di recente...

Comunque una cosa simile lo fa già IFolder di Novell   :Very Happy: 

L'unica cosa non è automatizzato... però può essere cool prendere spunto   :Very Happy: 

Ci aggiorniamo... questo post è molto cool  :Very Happy: 

Scusate se dico Cool...ma sono appena rientrato da una overdose di Hip-Pop con l'I-POD (k.gothmog penso tu abbia afferrato la citazione:Desktop Tales)

----------

## Kernel78

Spulciando l'howto di coda ho trovato questo

 *Quote:*   

> 
> 
> The cache size should be at least 10Meg, typically 60-200Meg is used. Do not go above 300Meg.
> 
> 

 

Al momento per quello che mi serve fare ci starei con un certo margine ma temo che in futuro possa aver bisogno di una maggior quantità di spazio   :Sad: 

Provo a spulciare la docuentazione di openafs.

Se intanto trovate altre info che contraddicano o completino quanto ho appena postato sarei lieto di conoscerle.

----------

## Kernel78

Ho trovato unison (in portage) che fa si occupa si sincronizzare file bidirezionalmente (per adesso l'ho provato sotto win, visto che come dico in un altro post non riesco a collegarmi via ssh al mio server).

Due parole: semplice ed efficente.

Mi rimane solo da pensare a come automatizzarne il lancio quando collego il portatile alla mia rete (ovviamente risincronizzo anche quando lo scollego dalla rete).

Avete idee ?

----------

## !equilibrium

 *Kernel78 wrote:*   

> Ho trovato unison (in portage) che fa si occupa si sincronizzare file bidirezionalmente (per adesso l'ho provato sotto win, visto che come dico in un altro post non riesco a collegarmi via ssh al mio server).
> 
> Due parole: semplice ed efficente.
> 
> Mi rimane solo da pensare a come automatizzarne il lancio quando collego il portatile alla mia rete (ovviamente risincronizzo anche quando lo scollego dalla rete).
> ...

 

io ho una home di circa 10Gb fatta di tantissimi file medio/piccoli, e unison generalmente si perde 1 o 2 Gb....

scartai unison già parecchio tempo fa per questo motivo, eh si, sono anche io alla ricerca di una soluzione per condividere in modo efficiente le home su + macchine ma che mi permetta anche di averne sempre una copia funzionante sul portatile...

(IMHO io pensavo anche di esportare la mia home dal fileserver principale con NFS, o NBD, SAMBA o altro, e usare un raid mirror software per sincronizzare la home montata da remoto con la home reale sul portatile... o una cosa simile, in modo da automatizzare i processi di lettura/scrittura... cosi scrivo sulla home montata da remoto e ho già una copia in locale del nuovo file; unico problema è quando lavoro con il portatile scollegato dal fileserver o simile, perchè mi ritrovo la home remota fuori sync con quella locale e viceversa)

----------

## Kernel78

 *DarkAngel76 wrote:*   

> 
> 
> io ho una home di circa 10Gb fatta di tantissimi file medio/piccoli, e unison generalmente si perde 1 o 2 Gb....
> 
> scartai unison già parecchio tempo fa per questo motivo, eh si, sono anche io alla ricerca di una soluzione per condividere in modo efficiente le home su + macchine ma che mi permetta anche di averne sempre una copia funzionante sul portatile...
> ...

 

 :Shocked:  in che senso "si perde 1 o 2 GB" ???

Non copia dei file o li copia male ?

Non è che le due directory erano su filesystem diversi ?

----------

## !equilibrium

 *Kernel78 wrote:*   

>  in che senso "si perde 1 o 2 GB" ???
> 
> Non copia dei file o li copia male ?
> 
> Non è che le due directory erano su filesystem diversi ?

 

non li copia... e non sono sempre gli stessi, sono 'random' ... per cui è chiaramente un bug del software

(bhe comunque unison non è + sviluppato da parecchio tempo per cui non so quanto ne valga l'utilizzo)

----------

## neryo

 *SilverXXX wrote:*   

> openafs e codafs non sono quel che fan per voi?

 

sia afs che coda che ne deriva e ne estende alcune funzionalita', sono file system molto complessi che vengono utilizzati in ambito distribuito, giusto per essere scalabili, sicuri e per permettere anche la replicazione dei dati.. forse un po' troppo per un rete locale..   :Rolling Eyes: 

----------

## !equilibrium

 *neryo wrote:*   

>  *SilverXXX wrote:*   openafs e codafs non sono quel che fan per voi? 
> 
> sia afs che coda che ne deriva e ne estende alcune funzionalita', sono file system molto complessi che vengono utilizzati in ambito distribuito, giusto per essere scalabili, sicuri e per permettere anche la replicazione dei dati.. forse un po' troppo per un rete locale..  

 

si ma hanno limiti di cache molto bassi, coda è sui 300Mb, afs sui 500Mb; openAFS consiglia di non esportare l'intera home come singolo volume, ma esportare ogni singola dir della home come volume a se stante in modo da 'aumentare' virtualmente il limite massimo di 500Mb.

restano comunque due problematiche di fondo:

- esportare le singole dir non è una soluzione pratica

- lavorare 'scollegato' dal server AFS/CODA comporta la perdita delle modifiche effettuate (le modifiche vengono replicare sul server solo se è attiva la sessione, cioè se si è collegati al server)

----------

## makoomba

ma un rsync simmetrico ?

----------

## Kernel78

 *makoomba wrote:*   

> ma un rsync simmetrico ?

 

nel senso di un server rsync su entrambi i pc ?

@DarkAngel76

Ho fatto un po' di prove con 32768 file medio-piccoli per un totale di 200 mb, cancellando creando ed editandone una quantità variabile (ovviamente mediante script) e non mi ha perso neppure un bit, tutti i file erano uguali alla fine dei test.

Magari quando torno a casa provo a fare una serie di test più seri con milioni di file per decine di giga   :Laughing:  (rido perchè ho un hd da soli 12 gb di cui meno di 6 liberi)

Se qualcuno ha MOLTO spazio e tempo libero (e non teme che l'hd si affatichi troppo) potrebbe testare esaustivamente unison ? anche se ho visto che per l'uso che ne dovrei fare è lo strumento ideale.

----------

## makoomba

 *Kernel78 wrote:*   

> nel senso di un server rsync su entrambi i pc ?

 

il server non è strettamente necessario, basta anche ssh.

supponendo che a e b siano le dir da sincronizzare, intendevo qualcosa tipo

```
rsync -avu a/ b/ && rsync -avu b/ a/
```

----------

## Kernel78

 *makoomba wrote:*   

>  *Kernel78 wrote:*   nel senso di un server rsync su entrambi i pc ? 
> 
> il server non è strettamente necessario, basta anche ssh.
> 
> supponendo che a e b siano le dir da sincronizzare, intendevo qualcosa tipo
> ...

 

Non vorrei dire cavolate ma il secondo rsync non è completamente inutile in quanto il primo ha già sincronizzato b con a ?

----------

## makoomba

lo sarebbe se tu lavorassi solo su a.

resta il problema delle cancellazioni ma memorizzando il timestamp dell'ultimo sync, suppongo che uno scriptino potrebbe risolvere egregiamente senza troppo sforzo.

----------

## !equilibrium

 *makoomba wrote:*   

> lo sarebbe se tu lavorassi solo su a.
> 
> resta il problema delle cancellazioni ma memorizzando il timestamp dell'ultimo sync, suppongo che uno scriptino potrebbe risolvere egregiamente senza troppo sforzo.

 

basterebbe aggiungere '--delete' al second rsync (ma ho dei dubbi a riguardo)

----------

## makoomba

 *DarkAngel76 wrote:*   

> basterebbe aggiungere '--delete' al second rsync (ma ho dei dubbi a riguardo)

 

non servirebbe in quanto b ha già tutti i files di a.

imho, la cancellazione andrebbe eseguita prima del sync

----------

## makoomba

per la cancellazione, prima del sync dovrebbe bastare qualcosa tipo

```
find b/ -newer b/sync -mindepth 1 | sed -e 's|^b/||' | rsync -avu --delete --existing a/ b/  --exclude-from -

find a/ -newer a/sync -mindepth 1 | sed -e 's|^a/||' | rsync -avu --delete --existing b/ a/  --exclude-from -

```

con sync = touch ultimo sync.

----------

## SilverXXX

C'è sempre la soluzione finale....

Scrivere un sw apposito  :Twisted Evil: 

----------

## Dr.Dran

Salve ragazzi  :Very Happy:  rieccomi dopo una bella giornata di lavoro in fabbrica... Che palle!!!!!

Bene, sto preparando uno scriptino un pò + complesso prendendo spunto da questi suggerimenti del Wiki/Forum (alcuni sono documenti stranoti, però mi piacerebbe mettere le premesse per un bel progettino home-made/self-made):

Configurare Ifplugd

Impostare il Fully-Qualified Domain Name (Howto x Newbe)

Sincronizzare l'ora in rete con NTP (Howto x Newbe)

Per fare una copia veloce

Creare uno script di Backup

Archiviare la propria home tramite CVS

Bene per il momento ho escluso la centralizzazione degli utenti asppositamente per poi successivamente definire le politiche da applicare per poi decidere quale sistema utilizzare... (fa rima è uno dei miei soliti contorsionismi linguistici)

Bene allora il concetto che sta alla base dell'applicazione è questo:

 *Quote:*   

> Parte ifplugd: sono in rete? (Wlan/Cable)
> 
> - No: ok! non faccio nulla
> 
> - Si: Bene parte /etc/ifplugd/ifplugd.action
> ...

 

Ovviamente gli orari debbono essere sincronizzati se no il sincronismo dei file va a quel paese  :Razz:  :Razz:  :Razz: 

Beh come bozza d'idea non è malaccio (ovviamente aspetto critiche e osservazioni (SPIETATE) xchè se no non s'impara nulla); la cosa la si potrebbe gestire anche per + profili di rete, ad esempio basterebbe identificare dove ci si ritrova con il dhcpd (rete di casa, lavoro, sconosciuta) tramite qualche trucchetto ad esempio un ping ad un gateway noto della nostra rete, oppure in un'altro modo... beh qui le possibilità sono tante.

Ciauz   :Very Happy:   :Very Happy:   :Very Happy: 

P.S. Per lo script aspetto a testarlo appena mi arriva il mio nuovo fiammante portatile con Via C7-M  :Very Happy: 

----------

## .:chrome:.

sono quasi riuscito a fare la prima parte: quella che riconosce la rete di appartenenza.

sto cercando di usare meno software aggiuntivo possibile. sono riuscito a fare quasi tutto usando solo le funzioni preup e predown di /etc/conf.d/net, e non ho usato nemmeno ifplugd

quello che manca è la parte sulla sincronizzazione... ma qualche idea c'è

----------

## Dr.Dran

La cosa che hai appena detto è interessantissima... comunque per la parte sulla sincronizzazione è necessario utilizzare uno script esterno... bisognerebbe fare una cosa "altamente" configurabile... forse è sufficiente uno script in bash senza andare a toccare il cammello (perl) e il pitone (python)  :Very Happy: 

----------

## Kernel78

@DranXXX

Al posto di NTP penso sia meglio usare OpenNTPD, è molto più semplice da configurare.

@k.gothmog

Non è che mi spieghi come hai usato la preup e predown ?

----------

## Dr.Dran

Non ho mai provato OpenNTP, nahce perchè mi trovo benissimo con NTP, comunque proverò  :Very Happy: 

Rinnovarsi e aggiornarsi fa sempre bene  :Very Happy: 

----------

## Kernel78

 *DranXXX wrote:*   

> Non ho mai provato OpenNTP, nahce perchè mi trovo benissimo con NTP, comunque proverò 
> 
> Rinnovarsi e aggiornarsi fa sempre bene 

 

Io lo uso con estrema soddisfazione da almeno un anno e non ho mai avuto problemi e per la configurazione non devi fare praticamente nulla se hai un solo pc e voui sincronizzarlo con i server NTP sparsi in giro mentre se vuoi sincronizzare la tua rete con il tuo server devi scrivere due righe (una per il server e una per ogni client).

Non male   :Wink: 

----------

## Dr.Dran

Si, non male ho letto ora che è un port da BSD... ci guardo per bene, se le modifiche sono così minimali, magari cambio NTP anche perchè leggo che occupa meno memoria... (anche se è una misera speculazione.....)   :Wink: 

----------

## Kernel78

Ho testato approfonditamente unison, ho fatto 600 cicli di sinconizzazione su due directory di circa 35000 files di piccole dimensioni, ogni ciclo comprendeva la cancellazione di circa un sesto dei file e la modifica di circa un terzo (mantenendo il numero di file statisticamente invariato).

Al termine del test un controllo con md5sum ha riportato ogni files al suo posto e con il suo contenuto in entrambe le directory.

Per quanto mi riguarda lo ritengo sufficientemente stabile.

Adesso lo integro con iflpugd e ho risolto il mio problema per la replica della home (Dran fammi sapere qualcosa sugli sviluppi del vostro progetto).

Penso che per le mie esigenze (due soli utenti da replicare su due macchine) openldap sia eccessivo, visto che sembra anche incasinato da configurare.

Propenderei quindi per una banale replicazione dei file degli utenti (passwd, ecc ...) e magari esportare la home di mia moglie via nfs così che anche se usasse il portatile (quando connesso alla rete) utilizzi fisicamente la stessa cartella, senza la necessità di sincronizzarla.

Vi sembra una cavolata ? può avere un senso ?

Aspetto opinioni, consigli e suggerimenti.

----------

## Dr.Dran

 *Kernel78 wrote:*   

> (Dran fammi sapere qualcosa sugli sviluppi del vostro progetto)

 

Puoi scommeterci  :Very Happy: 

 *Kernel78 wrote:*   

> Penso che per le mie esigenze (due soli utenti da replicare su due macchine) openldap sia eccessivo, visto che sembra anche incasinato da configurare. Propenderei quindi per una banale replicazione dei file degli utenti (passwd, ecc ...) e magari esportare la home di mia moglie via nfs così che anche se usasse il portatile (quando connesso alla rete) utilizzi fisicamente la stessa cartella, senza la necessità di sincronizzarla.
> 
> Vi sembra una cavolata ? può avere un senso ? Aspetto opinioni, consigli e suggerimenti.

 

Beh l'esportazione della cartella home è una buona idea, comunque devi fare in modo che il server quando tua moglie lavora, sia sempre attivo... ah ultima cosa, il file passwd sul sever deve avere gli ID degli utenti sincronizzati con quello del portatile, in modo tale da non avere incongruenze quando scrivi su un file o fai un chown e non riesci ad associare l'utente correto perchè sul serve non è presente.

Ciauz  :Very Happy: 

----------

## Kernel78

 *DranXXX wrote:*   

> Beh l'esportazione della cartella home è una buona idea, comunque devi fare in modo che il server quando tua moglie lavora, sia sempre attivo... ah ultima cosa, il file passwd sul sever deve avere gli ID degli utenti sincronizzati con quello del portatile, in modo tale da non avere incongruenze quando scrivi su un file o fai un chown e non riesci ad associare l'utente correto perchè sul server non è presente.
> 
> 

 

Il mio server è per definizione "sempre attivo"   :Wink:  l'ultima volta che l'ho spento era agosto del 2005 e anche se l'ho riavviato qualche volta per aggiornare il kernel sono reboot programmati durante la notte per non avere noie quando lo uso   :Cool: 

Grazie per i suggerimenti.

----------

