Newsgroup: it.comp.os.linux.iniziare
Titolo: Scambiare file tra due PC con Ubuntu Nasty

Ho un PC (server) connesso via cavo al router e un altro (netbook) 
connesso via WiFi allo stesso router. 
Entrambi hanno IP fisso.
Devo sincronizzare due directory che contengono foto, ciascuna di circa 
10 MB, oppure portare file delle stesse dimensioni da un PC all'altro.
In rete ho trovato diversi metodi: ftp, samba, nfs o ssh
Mi serve solo un vostro parere, che poi approfondirò: qual è il metodo 
più semplice per rispondere alle mie esigenze?
Grazie.
-- 
Bye, Yorgos
Essere superstiziosi porta sfiga...
To send me an e-mail, please change anthzùya with alice


Ciao,
mio modestissimo punto di vista: con Nautilus ho sotto il menu File un 
Connetti al server, mi connetto al pc remoto via ssh e sincronizzo a 
mano i files che devo avere sui due pc.
Questo è il metodo che uso principalmente per il mio "brodo quotidiano", :-D
pipperss

IMHO nfs + rsync
in etc/exports:
#dirdacondifvidere     sottorete     opzioni
/dir/condivisa         192.168.0/24  (rw,sync,no_subtree_check)
#script: estrapolato dal mio. Gli ho tolto le parametrizzazioni per 
semplificarlo e spero di non aver introdotto errori nel farlo.
#Mettere il giusto ip della machhina host
macchinahost="192.168.0.30"
# /dir/condivisa è la sorgente condivisa su nfs
# /mnt/condivisa punto di mount temporaneo della dir condivisa
mount $macchinahost:/dir/condivisa /mnt/condivisa -o 
rw,rsize=32768,wsize=32768,hard,intr
# istruznione di sinc!!! VEDI WARNING 1 e 2 FINALI).
rsync -r  -t -v --progress --delete --modify-window=1 -i -s 
/mnt/condivisa     /dir/dest
# smonta il filesistem temporaneo utilizzato per la sync
umount    /mnt/condivisa
!!!!!! WARNING 1
il comando rsync con quei paramentri allinea le cartella in modo 
master/slave. Lo slave viene reso uguale al master (che è come serve a 
me se ti servono sync di altro tipo "man rsync").
!!!!!! WARNING 2
Il mio script reale implementa dei meccanismi per vedere se la dir
/mnt/condivisa viene effettivamente montata. Se questo non dovesse 
succedere lanciando il sync e prendendo come riferimento una directory 
vuota la dir di destinazione verrebbe COMPLETAMENTE CANCELLATA. Un 
problema non gravissimo, hai ancora la sorgenta, ma ti costringe ha 
ricopiare tutto (e se i giga sono tanti ci vuole una vita).
TIPS1 io non l'ho utilizzato, ma rsync implementa anche un modo 
"simulazione" che ti permette di contare le differenze prima di 
effettuare realmente il sync. Per evitare il problema del WARNING 2
si potrebbe utilizzarlo e se le differenze superano un certo numero 
bloccare lo script prima di eseguire il sync definitivo.
TIPS2  Perche funzioni bisogna che l'utente che usi abbia il permesso di 
accedere alla condivisione nfs e che abbia il permesse di montare i 
filesystem (i miei pc li uso solo io, quindi per evitare questi problemi 
lancio lo script di sincronizzazione con permessi di root.
Il 07/06/2011 09:21, Yorgos ha scritto:


 più semplice per rispondere alle mie esigenze?
nfs se linux gira su entrambi, altrimenti samba.
-- 
       Disapprovo quello che dite, ma difendero' fino alla morte
       il vostro diritto di dirlo.
       		-- Voltaire

 nfs se linux gira su entrambi
OK, grazie a tutti, partirò con NFS.


 nfs se linux gira su entrambi, altrimenti samba.
Ho usato questa guida per implementare il tutto.
Premetto che il ping da un PC all'altro funziona senza problemi.
Quando però monto la condivisione sul client, ottengo questo messaggio:
mount.nfs: Connection timed out
E qui mi sono bloccato!


Eheh, Ubuntu Nasty... :-)

 Eheh, Ubuntu Nasty... :-)
OK, Natty (un errore di sbaglio :-)


 E qui mi sono bloccato!
Ho avuto un problema simile, credo che sia dovuto al fatto che NFSv4
abbia rafforzato la sicurezza, sino alla versione precedente era
sufficiente mettere portmapper in ascolto anche all'esterno. Però
siccome può essere rischioso adesso NFS supporta Kerberos, e infatti la
sintassi di /etc/exportfs è cambiata. 
Mostraci il tuo /etc/exportfs
-- 
 La filosofia e' un preservativo da usarsi quando ti fottono la mente.
 		-- Da un adesivo, citato da Cameron Shelley

 Mostraci il tuo /etc/exportfs
Intendi "exports", presumo:
# /etc/exports: the access control list for filesystems which may be 
exported
#		to NFS clients.  See exports(5).
#
# Example for NFSv2 and NFSv3:
# /srv/homes       hostname1(rw,sync,no_subtree_check) hostname2
(ro,sync,no_subtree_check)
#
# Example for NFSv4:
# /srv/nfs4        gss/krb5i(rw,sync,fsid=0,crossmnt,no_subtree_check)
# /srv/nfs4/homes  gss/krb5i(rw,sync,no_subtree_check)
#
# Modifiche del 07/06/2011
/home/yorgos/Immagini 192.168.178.102(rw,sync)


 mount.nfs: Connection timed out
Risolto dopo innumerevoli verifiche!
Ho installato alla fine il firewall Firestarter e ho autorizzato 
esplicitamente il traffico da e verso il client.
Così ha funzionato!
-- 
Bye, Yorgos
Bretagne: 
http://goo.gl/qRRcs


 OK, grazie a tutti, partirò con NFS.
1) Se vuoi una roba rapida (== no configurazione) installa openssh-server su 
entrambi i pc e poi vai di scp:
es.
scp -r cartella_locale utente@ip_remoto:cartella_remota
2) Una roba meno rapida ma facile da configurare: rsync
3) Roba che va bene per l'uso desktop: samba
Nicola.
-- 
chi va pian va san e va lontan

 Così ha funzionato!
L'installazione di un firewall per risolvere questo problema non mi sembra 
la cosa piu' adeguata. A meno che tu non avessi già un firewall che bloccava 
i pacchetti, oppure che Firestarter abbia fatto qualche modifica a qualche 
files che avresti dovuto fare tu a mano.
In altre parole voglio dire solo che la tua è stata una soluzione "a caso" 
almeno stando a quello che hai postato su questo NG.


 stando a quello che hai postato su questo NG.
Più che a caso, la chiamerei un workaround che nella mia specifica 
situazione ha funzionato.
L'ho postato perché magari qualcun altro potrebbe trovarsi con il mio 
stesso problema.
D'altronde sul NG non ho visto nessuna proposta risolutiva, quindi...


 D'altronde sul NG non ho visto nessuna proposta risolutiva, quindi...
Questo è vero però non hai indicato l'howto che hai seguito né la 
configurazione che hai usato. Hai postato solo l'errore.
Comunque qui siamo su i.c.o.l.iniziare ed è normale che manchino i 
particolari "importanti". Solo che poi la gente non riesce ad aiutarti.


 Hai postato solo l'errore. 
Questo non è esatto. 
Ho scritto: "Ho usato questa guida per implementare il tutto."
E nella guida ci sono tutte le fasi che ho seguito, evitando quindi di 
intasare il NG con ripetizioni superflue.
DOPO ho postato l'errore.
Se mi dai un percorso diverso per capire cosa è successo, sono pronto a 
collaborare.


 collaborare.
No, no, il problema era il tuo, si cercava solo di darti una mano.


 so cosa fa' firestarter e non uso nfs che IMHO fa schifo.
E' un firewall. Quindi fa il firewall :-)
Che NFS faccia schifo non saprei dire. Non avendo MAI condiviso file con 
Linux, ho chiesto al NG per avere una dritta su dove indirizzarmi.
Mi sono state proposte diverse soluzioni, ne ho scelta una, NFS.
Non ho ancora le competenze e l'esperienza di reti Linux per dire se c'è 
di meglio o se NFS faccia veramente schifo.
Per il momento mi funziona, poi vedremo.


 non uso nfs che IMHO fa schifo
E' vero che se esprimi un tuo parere personale hai pienamente diritto di 
dire che fa schifo, però serebbe meglio spiegare meglio in cosa fa schifo.
Non è facilmente accessibile da windows.
Ma per scambiare file su due macchine linux in una rete domestica direi 
che è un ottima scelta. per mè è il più facile da configurare e credo 
che a livello di prestazioni velocistiche sia il migliore.
All'inizio del thread era stato uno dei suggerimenti che avevo proposto. 
Poi non ho più aiutato yurgos perchè anche se capivo che aveva un 
problema non sono riuscito a capire da cosa derivasse.
Io uso la 10.10 e non la 11.04 e per mè non è stato necessario 
installare firestarter.
ho una 11.04 su macchina virtuale (non non mi è venuta la curiosita di 
installarci nfs al momento la VirtualMachine mi serve ad altro) e il 
firewall di default sembra essere ancora: ufw (uncomplicated-firewall) 
che di default sembra non attivo.
$ sudo ufw status
[sudo] password for mionome:
Stato: inattivo

 installare firestarter.
Infatti mi permetto di dire che entrambi pensiamo che Yorgos ha fatto 
qualche errore e che il firewall non c'entra un tubo :)
Nicola


 l'autenticazione
Quì posso benissimo essere daccordo con te. Per come lo uso io 
semplicemente non mi sono posto il problema, La rete è MIA e la uso SOLO 
IO, l'unica preoccupazione che ho avuto è stata di limitarlo alla mia 
sottorete.
Però mentre leggevo i vari howto per configurarlo mi sono accorto che
erano molto scarni, per non dire nulli, in fatto di configurazione delle 
politiche di accesso.
Da questo punto di vista samba è nettamente superiore. Di contro dai 
miei test risulta più lento di circa un 3%..10% variabile a seconda di 
come gli gira.
Ci sincronizzo tutti i giorni tramite rsync un 25GB sparsi in circa 4000 
di file. Su un filesystem montano NFS faccio un po' prima e non mi ha 
mai dato problemi.
Quindi anche io non mi trattengo se dici che fa schifo :-)
Io che fanno schifo lo penso di: unity,gnome3, windows vista,
ma diplomaticamente dico che <<non si adattano alle mie esigenze>> ;-)

 se il pc viene usato da più utenti va da se che è una fregatura.
Balle, direi, in quanto NFS tiene conto dei permessi presenti sul file 
(ovvero, se il file e` 644 solo l'owner puo modificarlo). Il vero problema 
di NFS e` la base utenze, che dev'essere condivisa tra tutti i pc che lo 
usano. Problema che pero` si risolve facilmente con LDAP o con NIS+
Enrico

 11.04 e per mè non è stato necessario installare firestarter.
La spiegazione che mi sono dato è che in passato, forse, ma non ne sono 
sicuro, ho provato a giocare con iptables e magari è rimasta qualche 
regola che bloccava la comunicazione.
Escludo comunque qualsiasi errore nella configurazione del server e del 
client NFS, controllato più volte.
Prova ne sia il fatto che, appena dato via libera al client attraverso il 
firewall, le cose hanno funzionato.
E direi molto bene, visto che la comunicazione è ottima, sia per velocità 
che per semplicità.
La directory Immagini del server viene montata immediatamente e resa 
disponibile sul client con il nome Images.
Per cui, NFS è quello che mi serviva. 
Tra l'altro, ho precisato fin dall'inizio che tutti e due i computer 
hanno a bordo Ubuntu, nessuno Windows.


 client NFS, controllato più volte
non fatico a crederti... la configurazione di NFS è abbastanza semplice 
e di suo non ha a che fare con il firewall, anche se ovviamente un 
eventuale firewall può impedirne il funzionamento.

 usano. Problema che pero` si risolve facilmente con LDAP o con NIS+
Su questo vale la pena investigare. (sono un utente di Iniziare... leggo 
anche sys, ma il mio livello è Iniziare)
LDAP so cosè..., mai usato ma so cosè.
NIS+ me ne sono fatto una vaga idea proprio ora grazie a google. Anche 
se nella maggior parte degli howto lo vedo associato a pam. (per me 
questo è un po nebuloso, mi interessa ma non avendo una reale necessità 
di verificare gli accessi non ho mai approfondito)
Comunque giuro che nella decina di howto che ho sfogliato per la 
configurazione di NFS, non si faceva riferimento a come
configurare gli accessi...
L'unica cosa che ho notato (ma i miei 2 pc sono configurati con la 
stessa utenza e le stesse pwd) è che rispetta i permessi... e sul 
momento mi ero chiesto come facesse a validarmi... mi ero fatto una 
domanda del tipo "non è che basta che io crei un utente qualsiasi 
pincopallo e gli assegni lo stesso guid?". Però il problema principale 
era risolto e non l'ho più considerato. Il tempo successivo lo perso nel 
creare lo script di sincronizzazione.

 configurare gli accessi...
Questo perche` NFS e` indirettamente implicato con le utenze. Prendiamo un 
caso d'uso:
 - Server CentOS "X" che esporta /srv/shares scrivibile da tutti;
 - Workstation Ubuntu "A" con utente pippo (uid 1000);
 - Workstation Fedora "B" con utente pippo (uid 500);
 - Workstation SuSE "C" con utente pluto (uid 1000).
Le workstation montano la condivisione in /mnt. 
Dalla workstation "A" l'utente pippo scrive il file /mnt/file.txt sulla 
condivisione del server "X" e lo salva con i permessi 640. Il risultato 
ottenuto e` questo:
 - Sulla workstation "A" un ls -l /mnt/file.txt mostrera` un file
   appartenente all'utente pippo con permessi 640.
 - Sulla workstation "B" un ls -l /mnt/file.txt mostrera` un file
   appartenente all'utente 1000 con permessi 640.
 - Sulla workstation "C" un ls -l /mnt/file.txt mostrera` un file
   appartenente all'utente pluto con permessi 640.
 - Sul server "X" un ls -l /srv/shares/file.txt mostrera` un file
   appartenente all'utente 1000 con permessi 640.
Cosa implica tutto questo? Che anche se esiste sulla workstation "B", 
l'utente pippo potra` al massimo leggere il file presente sulla condivisione 
del server "X", mentre l'utente pluto sulla workstation "C" potra` non solo 
leggerlo, ma anche scriverlo. Tale comportamento e` dovuto alla concezione 
che sta dietro a NFS, ovvero l'autenticazione e` a livello macchina. Di 
fatto a NFS non interessa sapere chi e` l'uid 1000, ma gli interessa sapere 
se la macchina puo` accedere alla condivisione. Sta poi alla macchina locale 
capire chi sia l'uid 1000, e lo fa o tramite l'autenticazione locale, o 
tramite un servizio di autenticazione centralizzato (LDAP, NIS+, 
Kerberos...)
Enrico
P.S. per inciso, Samba permette una autenticazione a livello di utente e, 
tra le altre cose, tramite PAM puo` essere utilizzato come servizio di 
autenticazione centralizzato

 autenticazione centralizzato
Su samba più o meno l'ho visto. Non ho chiaro il funzionamento, perchè 
non mi serve e non ho approfondito le ricerche, ma ha livello di 
possibilità l'ho visto ed eventualmente saprei cosa cercare.
Non so se samba sia documentato meglio, so che certamente è stato molto 
più complesso farlo funzionare e quindi ho perso molto più tempo a 
leggere documentazione e howto vari.
NFS dopo 15 minuti mi andava come un treno. Ho letto comunque una decina 
di howto per vedere se potevo migliorare la configurazione, ma 
sostanzialmente dicevano le stesse cose e nessuno riportava un esempio 
come il tuo (che secondo me ci starebbe bene) o riferimenti ad altri 
argomenti di lettura nis+, ldap, pam, per autenticazione centralizzata.

 argomenti di lettura nis+, ldap, pam, per autenticazione centralizzata.
Perche`, senza troppa modestia, il mio esempio e` piu` complicato di quello 
che viene riportato negli howto o nelle guide varie. Tieni presente che una 
configurazione come la mia ha senso solo in determinati ambiti (e.g. file 
server o terminali remoti), di conseguenza per l'utente medio sarebbe una 
complicazione inutile (dopo tutto, il problema si risolve anche creando gli 
utenti sulla macchina locale utilizzando degli uid/gid comuni)
Enrico

 utenti sulla macchina locale utilizzando degli uid/gid comuni
che è stata la mia soluzione, però in un certo senso l'ho presa per 
caso. Proprio per caso no, in passato avevo gia avuto noie con guid 
diversi... quindi ci faccio attenzione.

 usano. Problema che pero` si risolve facilmente con LDAP o con NIS+
Ma ti pare normale dover unificare tutti i uid e gid?
Nicola.


 Ma ti pare normale dover unificare tutti i uid e gid?
Si. Tieni presente quando e` stato concepito NFS, ovvero in un periodo in 
cui il concetto "un comando, una funzione" era un dogma assoluto di Unix. Di 
conseguenza, NFS ha seguito quella filosofia, ovvero permettere la 
condivisione di intere porzioni del file system tra piu` macchine conosciute 
rispettando gli attributi dei file e delle directory, uid e gid compresi. La 
mappatura tra uid e gid tra piu` macchine, quindi, non e` e non vuole essere 
di competenza di NFS, in quanto vi sono altri sistemi preposti a tale 
compito (LDAP, NIS o copia dei file passwd/group/shadow), ed e` quindi 
compito del sistemista metterli in atto
Enrico

 ed e` quindi compito del sistemista metterli in atto
D'accordo, ma sei sempre costretto ad unificare gli uid e ripeto non c'è un 
sistema di autenticazione decente, a meno che uno non ritenga che uid e ip 
del client siano sufficienti. E mi lamento io che sono uno parecchio scarso 
in fatto di sicurezza :)


 sistema di autenticazione decente, a meno che uno non ritenga che uid e ip 
Cosa non è chiaro in "più macchine conosciute"? ;-)
-- 
           |Save our planet!
    Ciao   |Save wildlife!
   roberto |For your E-MAIL use ONLY recycled Bytes  !!
           |roberto poggi   
rpo...@softhome.net

 del client siano sufficienti.
Ti ripeto, uid con NFS non c'entra nulla, non lo usa e l'unico motivo per 
cui gli interessa e` perche` fa parte degli attributi del file. La sicurezza 
la gestisci definendo la share utilizzabile solo da un determinato client 
(e.g. 
pippo.topolinia.net
) oppure utilizzabile solo dai client appartenenti 
ad una subnet (e.g. 
192.168.1.64/26
). Se poi questo non mi basta, nessuno mi 
vieta di mettere in mezzo Kerberos e far gestire l'autenticazione a lui
Enrico

 l'autenticazione a lui
Ecco ok, kerberos è un sistema di autenticazione ma richiede una rete di 
classe "enterprise".
Alla fine preferisco sempre samba perché +semplice +configurabile.


 Alla fine preferisco sempre samba perché +semplice +configurabile.
De gustibus, personalmente uso Samba solo perche` devo permettere l'accesso 
alle share da client windows, altrimenti non ne avrei bisogno
Enrico