PDA

View Full Version : [Guida] Gmail come un HD con LINUX


Carcass
19-09-2005, 13:55
Salve a tutti ragazzi, vorrei a tal proposito proporre una guida semplicissima ma molto efficace su come trasformare un account GMAIL che adesso si attesta sui 2 GigaByte di spazio a nostra disposizione (dubito che un comune mortale possa anche dopo anni riempire questo spazio nell'ordine anche dei MB se si ha a che fare con email etc.......) in un HardDisk Virtuale, un vero e proprio disco fisso da montare e utilizzare come se si trattasse di una comune directory presente nel nostro sistema, ovviamente manco a dirlo, GNU/LINUX :).

In rete sono reperibili svariati tool che tentano di sfruttare Gmail per scopi alternativi e differenti dallo scopo iniziale per cui è stato creato; i più interessanti da un punto di vista pratico sono GmailFS, GmailBlog e GmailCopy.

Il primo (GmaiFileSystem) permette di usare un normale account gmail in vero e proprio HardDisk a nostra disposizione; a monte di tutto cio sta il lavoro di uno sviluppatore ovvero Richard Jones - http://richard.jones.name - che grazie al linguaggio Python - http://www.python.org/ - al pacchetto FUSE (FileSystem in Userspace), alle librerie libgmail permette di implementare un file system funzionale da un programma in userspace, che indifferentemente funziona sia con Kernel - http://www.kernel.org - Linux 2.4.x che 2.6.x.

A tal proposito mi sembra doveroso precisare un concetto fondamentale su cui si basa l'architettura UNIX, ovvero la distinzione USERSPACE e KERNELSPACE.
Il primo è l'ambiente in cui vengono eseguiti TUTTI i programmi, all'interno di questo ambiente il programma vede solo se stesso, avendo la totale disponibilità della CPU e RAM, ignorando altri programmi avviati dal Kernel.
Il secondo è l'ambiente in cui viene eseguito il kernel.
Grazie a questa gestione separata NESSUN programma va a disturbare un'altra applicazione conferendo al sistema in oggetto - UNIX - elevata stabilità, dove altri OS eseguono i processi solo a livello Kernel.

Le caratteristiche di GMAIL sono:
- TOTALMENTE gratuito
- 2 GB di spazio offerto
- elevata esecuzione grazie alla tecnologia XMLHttpRequest
- 12 lingue
- accesso POP3 gratuito
- creazione filtri e blocco spam
- importazione degli indirizzi di posta da praticamente tutti i client piu utilizzati
- creazione di nuove cartelle e raggruppamento dei messaggi con tutte le relative risposte ricevute
- search veramente ottimo
- supporto ai piu diffusi browser web.

Pagina di accesso all'account Gmail

http://img259.imageshack.us/img259/39/schermata8db.th.png (http://img259.imageshack.us/my.php?image=schermata8db.png)

Passiamo adesso al sodo procurandoci il software necessario al tutto, a tal proposito possiamo seguire due vie:
- compilazione dei sorgenti
- installazione tramite apt (sistemi Debian e Debian/based) o tramite RPM.

Il software necessario è:
- un account Gmail attivo
- ambiente sviluppo in Python
- FUSE
- libreria fuse-python
- libreria libgmail
- tool gmailfs.
Assicuratevi che sul sistema sia installata la libreria python2.x-dev ed in genere le ultime versioni di tutto il necessario per il nostro scopo, aggiornandole sempre il piu possibile.


INSTALLAZIONE DEL PROGRAMMA

Abbiamo detto che il software necessario puo essere installato tramite apt o si possono reperire i repository per i singoli pacchetti a questo indirizzo http://www1.apt-get.org/search.php oppure reperire i singoli pacchetti ed installarli col comando dpkg -i o ancora trovare gli RPM a questo indirizzo http://rpm.pbone.net/ ......... insomma fate un po come ve pare il bello di GNU/LINUX è proprio questo, la modularità :)

Nel caso di compilazione da sorgente (il tutto si adatta come un guanto al proprio sistema) proseguiamo come segue:
- per fuse
tar xzvf fuse-xxxx.tar.gz
cd fuse-xxxx
./configure
make

da root:

make install
depmod -ae
modprobe fuse

Se non vi è nessun messaggio di errore allora il tutto è andato a buon fine :)
Se durante il comando ./configure, eseguendosi lo script, si hanno errori sulla posizione del kernel si deve indicare utilizzando il parametro -with-kernel seguito dall'esatta posizione dei sorgenti.
Oppure da apt installate il pacchetto fuse-source se non è già presente sul sistema.

- per fuse-python
tar xzvf fuse-python.tar.gz
cd fuse-python
python setup.py build

Se non vi sono stati errori da root digitare
python setup.py install

- per gmailfs
tar xzvf gmailfs-xxx.tar.gz
cd gmailfs-xxx
cp gmailfs-.py /usr/bin
cp mount.gmailfs /sbin

Adesso dovete ritornare nella directory dove si trova libgmail ed eseguire:
cp libgmail.py /usr/lib/python2.x/site-packages
cp constants.py /usr/lib/python2.x/site-packages


PREPARAZIONE DEL SISTEMA

Modificare con un editor di testo il file /etc/fstab aggiungendo quanto segue:
/usr/bin/gmailfs.py /mnt/gmail gmailfs noauto.username=vostrousername@gmail.com, password=lavostrapassword, fsname=vostrofsname

In questo caso fsname è il vostro filesystem.


MONTARE L'HARD DISK

Da root creare la directory /mnt/gmail e montarla:
mkdir /mnt/gmail
mount /mnt/gmail


CONSIGLI E PRECISAZIONI

Il modulo FUSE richiede per la compilazione corretta gli header del kernel, quindi accertarsi che siano presenti nel sistema, altresi' installarli.

Il file /etc/fstab è leggibile da qualsiasi utente del sistema, dunque è consigliabile utilizzare il file gmails.conf: copiandolo all'interno della cartella /etc e impostare dei permessi in modo che solo l'utente root lo possa leggere.
Inoltre libgmail non cancella i file direttamente, ma solamente spostandoli nel cestino, dunque bisogna eliminarli manualmente uno ad uno.
Inoltre per evitare la visualizzazione di fastidiosi messaggi di GmailFS, mentre arrivano si puo impostare un filtro che archivi automaticamente i messaggi in entrata, come quello di ricercare il valore impostato a fsname sempre presente nell'argomento di tutti i messaggi di GmailFS :)

NON E' CONSIGLIABILE salvare dati sensibili in quanto GmailFS allo stato attuale poichè è in "alpha release" ed inoltre tutti i dati vengono salvati in chiaro sui server di GOOGLE.
La soluzione sarebbe di cifrarli prima di "hostarli".




NB: NON CI SI ASSUME NESSUNA RESPONSABILITA' A SEGUITO DI QUESTA GUIDA.

AnonimoVeneziano
19-09-2005, 15:39
Ci sto provando , voglio vedere che ne esce fuori.

Ma ti riempie di messaggi inutili l'account?

Ciao

ilsensine
19-09-2005, 17:00
Ho un pò di domande:
- Se esiste un modo per mettere username/password in gmails.conf, descrivi cosa va fatto. Non è accettabile dover mettere una password in chiaro in un file leggibile da tutti...

- Che io sappia, fuse non richiede i privilegi di root per montare un file system -- sicuro che occorre scomodare fstab?


Per la cronaca, forse qualcuno avrà notato che fuse è incluso nel 2.6.14-rc :cool:

Carcass
19-09-2005, 18:49
Se esiste un modo per mettere username/password in gmails.conf, descrivi cosa va fatto. Non è accettabile dover mettere una password in chiaro in un file leggibile da tutti...

Il file /etc/fstab è leggibile da qualsiasi utente del sistema, dunque è consigliabile utilizzare il file gmails.conf: copiandolo all'interno della cartella /etc e impostare dei permessi in modo che solo l'utente root lo possa leggere.
Inoltre libgmail non cancella i file direttamente, ma solamente spostandoli nel cestino, dunque bisogna eliminarli manualmente uno ad uno.
Proprio per questo si mettono permessi piu restrittivi proprio affinchè tutti non lo leggano.........che io sappia in base a cio che ho letto non vi è altro modo......

Che io sappia, fuse non richiede i privilegi di root per montare un file system -- sicuro che occorre scomodare fstab?

si .....inoltre in Debain vi è gia inserito il pacchetto fuse-source gia pronto per essere utilizzato con il comando make-kpkg
:)

NB:Sicuramente qualche precisazione posso aggiungerla, ma la sostanza non cambia, per quel che so......

Al Azif
19-09-2005, 23:38
Bella guida, appena esce breezy ne farò uso, il gmailfs in hoary è un pò vecchiotto e le versioni nuove hanno risolto qualche bug di troppo.

se qualche Linuxiano (e solo loro, sono razzista :asd: ) vuole un invito gmail non ha che da chiedere

PiloZ
19-09-2005, 23:43
ottimo... :)

PiloZ
19-09-2005, 23:51
o ancora trovare gli RPM a questo indirizzo http://rpm.pbone.net/index.php3/stat/4/idp...1.i386.rpm.html (http://rpm.pbone.net/index.php3/stat/4/idpl/1773/com/ACS-phone-0.5.3-1.i386.rpm.html) ......... insomma fate un po come ve pare

sarò pignolo ma perchè non metti http://rpm.pbone.net/ invece che mettere un search di un rpm che non c'entra na mazza :rolleyes: :fagiano: :D
ACS-phone-0.5.3-1.i386.rpm :mbe: metti quelle di un porno in rpm allimite :asd:

Herod2k
20-09-2005, 00:06
Ci sto provando , voglio vedere che ne esce fuori.

Ma ti riempie di messaggi inutili l'account?

Ciao

L'ultima volta che ho usato Fuse e company per fare una prova era così mi creava un sacco di files ed emails che m'incasinavano l'account di posta, infati avevo lasciato stare, hanno per caso risolto?

Carcass
20-09-2005, 00:30
sarò pignolo ma perchè non metti http://rpm.pbone.net/ invece che mettere un search di un rpm che non c'entra na mazza :rolleyes: :fagiano: :D
ACS-phone-0.5.3-1.i386.rpm :mbe: metti quelle di un porno in rpm allimite :asd:
sarò pignolo...........cha caca cazz........ :D :D
hai ragione ma non so come ci sia finito :asd:
Anyway se puoi edita sto link alla prima pagina del 3d del Debian clan.........

Per l'email credo ancora di si....... :(

ilsensine
20-09-2005, 09:51
L'ultima volta che ho usato Fuse e company per fare una prova era così mi creava un sacco di files ed emails che m'incasinavano l'account di posta, infati avevo lasciato stare, hanno per caso risolto?
Mi sembra di ricordare che lo avevi detto; qualcun altro ha osservato un problema simile o lo sa spiegare?

PiloZ
20-09-2005, 10:27
qualcun altro ha osservato un problema simile
io :O
lo sa spiegare?
no :D lo provai troppo tempo fa :stordita:

ilsensine
20-09-2005, 13:38
io :O

Potreste (tu o Herod) riprovare con versioni recenti?
Vorrei mettere la guida tra gli howto, ma vorrei essere sufficientemente sicuro che non faccio piangere qualcuno...

Al Azif
20-09-2005, 21:01
L'ultima volta che ho usato Fuse e company per fare una prova era così mi creava un sacco di files ed emails che m'incasinavano l'account di posta, infati avevo lasciato stare, hanno per caso risolto?

Che versione era di gmailfs e fuse?

Herod2k
20-09-2005, 23:18
Che versione era di gmailfs e fuse?

sinceramente non me lo ricordo....comunque su richiesta del sensine ho provato a reinstallarlo e ho problemi quando vado a compilare il modulo del kernel fuse dai sorgenti mi dice che ho problemi con i puntatori e che il compilatore non è valido etc etc (purtroppo non mi sono salvato il log dell'errore..)

Il mio è un kernel vanilla 2.6.13.1 compilato da me con il seguente gcc:
gcc version 4.0.2 20050917 (prerelease) (Debian 4.0.1-8)

Sinceramente non mi ci sbatto più di tanto, preferisco di gran lunga un bell'archivio ftp.

Questo è il vecchio 3ad in cui provai gmailfs e fuse:
http://www.hwupgrade.it/forum/showthread.php?p=8695646

CiauzZ :D :D

Carcass
20-09-2005, 23:29
Puo essere perche è prorpio vanilla.........e qui non avrei voluto dire na fesseria :confused:

Ma Sara
20-09-2005, 23:42
Non credo, dato che i vanilla sono i kernel rilasciati su www.kernel.org, duri e puri. :D

Carcass
20-09-2005, 23:57
Per i messaggi puo essere fatto cosi......

Inoltre per evitare la visualizzazione di fastidiosi messaggi di GmailFS, mentre arrivano si puo impostare un filtro che archivi automaticamente i messaggi in entrata, come quello di ricercare il valore impostato a fsname sempre presente nell'argomento di tutti i messaggi di GmailFS

Ho gia editato la guida........ :)

ilsensine
26-09-2005, 10:53
Incluso tra gli howto avanzati.

Se fai delle modifiche alla guida avvertimi.

Carcass
26-09-2005, 12:20
Incluso tra gli howto avanzati.

Se fai delle modifiche alla guida avvertimi.
;) .....of course.

midian
26-09-2005, 19:08
eccomi, funziona pure su mandriva? :sofico:

Carcass
26-09-2005, 19:16
eccomi, funziona pure su mandriva? :sofico:
Se leggi la guida vedrai che puoi farlo pure con gli rpm.........

gas78
12-10-2005, 09:23
ho provato a fare come e' segnato sulla guida.. ma a me non funziona :cry:

Questo e' quello che mi dice

root@Gas-Linux:/mnt # gmailfs.py:Gmailfs:mountpoint: '/mnt/gmail'
gmailfs.py:Gmailfs:unnamed mount options: ['rw', 'noauto.user']
gmailfs.py:Gmailfs:named mount options: {'username': '#####@gmail.com', 'password': '#####', 'fsname': '#####'}
Traceback (most recent call last):
File "/usr/share/gmailfs/gmailfs.py", line 1117, in ?
server = Gmailfs()
File "/usr/share/gmailfs/gmailfs.py", line 603, in __init__
self.ga.login()
File "/usr/lib/python2.4/site-packages/libgmail/__init__.py", line 281, in login
raise GmailLoginFailure
libgmail.GmailLoginFailure


Avete qlke idea ? grazie mille !

Matteo

Tecniko_renzo
20-02-2006, 09:29
ho fatto quanto detto nella guida :read: ma quando provo a montare:

root@Portatile:/home/lollo# mount /mnt/gmail
/usr/bin/env: python: Invalid argument

:doh: Come mai???

Tecniko_renzo
20-02-2006, 16:08
uuuuuuuuuuuuppppppppppppp

Dream_River
28-09-2008, 13:17
ho provato a fare come e' segnato sulla guida.. ma a me non funziona :cry:

Questo e' quello che mi dice

root@Gas-Linux:/mnt # gmailfs.py:Gmailfs:mountpoint: '/mnt/gmail'
gmailfs.py:Gmailfs:unnamed mount options: ['rw', 'noauto.user']
gmailfs.py:Gmailfs:named mount options: {'username': '#####@gmail.com', 'password': '#####', 'fsname': '#####'}
Traceback (most recent call last):
File "/usr/share/gmailfs/gmailfs.py", line 1117, in ?
server = Gmailfs()
File "/usr/share/gmailfs/gmailfs.py", line 603, in __init__
self.ga.login()
File "/usr/lib/python2.4/site-packages/libgmail/__init__.py", line 281, in login
raise GmailLoginFailure
libgmail.GmailLoginFailure


Avete qlke idea ? grazie mille !

Matteo

Anche io ho lo stesso problema

UP!!!

gas78
02-10-2008, 08:38
Anche io ho lo stesso problema

UP!!!

e' un bel po che non ci guardo: nel weekend vedo se trovo una soluzione.
Cmq adesso ci sono una valanga di servizi gratuiti che ti permettono di archiviare online quello che vuoi.. probabilmente sono anche piu' comodi