Mozilla Sync server (Mozilla Weave) is een synchronisatieserver voor Mozilla browsers (Firefox).
Vandaag de dag hebben gebruikers vaak meer apparaten om op het Internet te surfen: PC's, tablets, smartphones. Zonder synchronisatie zal de gebruiker handmatig bladwijzers en instellingen op deze apparaten moeten bijhouden. Met Mozilla Sync server kunnen bladwijzers, wachtwoorden, historie en instellingen van Mozilla browsers op PC (Windows/Linux), tablet en smartphone (Android) automatisch gesynchroniseerd worden. Met een eigen Mozilla Sync server kunnen deze gegevens veilig binnen het eigen netwerk worden bewaard.
Dit document is gebaseerd op:
Integrated Services helpt u graag!
Hulp nodig bij het uitvoeren van deze Howto?
Of wilt u deze service geheel door ons laten inrichten en testen?
Dat kan!
=> Informeer geheel vrijblijvend naar de mogelijkheden.
De Mozilla Sync server kan lopen onder een gewone Linux gebruiker.
Zonodig richten we hiervoor een nieuwe gebruiker in,
bijv. “appbox”, group “appbox”:
$ su - Password: # groupadd appbox # useradd -d /export/home/appbox -m -s /bin/bash -c "Application Box" \ -g appbox appbox # grep appbox /etc/passwd appbox:x:1205:1205:Application Box:/export/home/appbox:/bin/bash
# mount -o remount,exec /tmp # apt-get install mercurial make sqlite3 python-setuptools python-dev libssl-dev
Python “pip” is een tool om Python pakketten te installeren. 1)
# cd /usr/src # curl -O https://pypi.python.org/packages/source/p/pip/pip-1.4.tar.gz # tar -xzf pip-1.4.tar.gz # cd pip-1.4 # python setup.py install
# pip install virtualenv
# su - appbox $ mkdir mozsync $ cd mozsync $ hg clone https://hg.mozilla.org/services/server-full
$ cd server-full $ make build
Hieronder de laatste regels van de compilatie:
bin/buildapp -c dev -i http://pypi.python.org/simple server-core,server-reg,server-storage The current channel is dev. Building the app Checking the environ [ok] Updating the repo [ok] Building Services dependencies Getting server-core [ok] Getting server-reg [ok] Getting server-storage [ok] [ok] Building External dependencies [ok] Now building the app itself [ok] [done] # Pre-compile mako templates into the correct directories. for TMPL in `find . -name '*.mako'`; do ./bin/python -c "from mako.template import Template; Template(filename='$TMPL', module_directory='`dirname $TMPL`', uri='`basename $TMPL`')"; done;
Indien de compilatie succesvol is verlopen, run dan de tests.
$ make test bin/nosetests -s --with-xunit deps/server-core/services/tests deps/server-reg/syncreg/tests deps/server-storage/syncstorage/tests .......................................................................S... /home/appbox/mozsync/server-full/lib/python2.6/site-packages/sqlalchemy/engine/strategies.py:117: SADeprecationWarning: The 'listeners' argument to Pool (and create_engine()) is deprecated. Use event.listen(). pool = poolclass(creator, **pool_args) /home/appbox/mozsync/server-full/lib/python2.6/site-packages/sqlalchemy/pool.py: 160: SADeprecationWarning: Pool.add_listener is deprecated. Use event.listen() self.add_listener(l) ......S.S.SS.S............................................................... ..............................S.SSSSSSSSSSSSSSSSSS.......................... ---------------------------------------------------------------------- Ran 228 tests in 46.737s OK (SKIP=25)
De Mozilla Sync server is nu correct ge_i:nstalleerd.
# su - appbox $ cd mozsync $ mkdir db $ chmod 700 db
$ cd server-full $ vi etc/sync.conf [storage] backend = syncstorage.storage.sql.SQLStorage #sqluri = sqlite:////tmp/test.db sqluri = sqlite:////export/home/appbox/mozsync/db/mozsync.db [auth] backend = services.user.sql.SQLUser #sqluri = sqlite:////tmp/test.db sqluri = sqlite:////export/home/appbox/mozsync/db/mozsync.db
$ cd server-full $ vi etc/sync.conf [nodes] # You must set this to your client-visible server URL. # fallback_node = http://example.com/path/to/sync fallback_node = http://host.domein.lan:5000/
De Mozilla Sync server heeft een ingebouwde webserver voor test- en ontwikkeldoeleinden. 2)
Start de Mozilla Sync server in testmodus via de meegeleverde “paster” tool:
$ cd server-full $ ./bin/paster serve development.ini /export/home/appbox/mozsync/server-full/lib/python2.6/site-packages/sqlalchemy/engine/strategies.py:117: SADeprecationWarning: The 'listeners' argument to Pool (and create_engine()) is deprecated. Use event.listen(). pool = poolclass(creator, **pool_args) /export/home/appbox/mozsync/server-full/lib/python2.6/site-packages/sqlalchemy/pool.py:160: SADeprecationWarning: Pool.add_listener is deprecated. Use event.listen() self.add_listener(l) Starting server in PID 1954. serving on 0.0.0.0:5000 view at http://127.0.0.1:5000
In testmodus protocolleert de Mozilla Sync server alle verzoeken van Firefox Sync clients.
De testmodus kan worden be_e:indigd via “Ctrl+C”.
“The proof of the pudding is in the eating!”
We configureren een Firefox Sync client om de Mozilla Sync server te testen:
Het scherm “Accountdetails” wordt geopend:
Accountdetails | |
---|---|
E-mailadres: | |
Kies een wachtwoord: | |
Wachtwoord beverstigen: | |
Server: | “Een eigen server gebruiken” http:host.domein.lan:5000/ |
“CAPTCHA tekst” Typ de twee woorden |
|
Sync-opties | Annuleren Vorige Volgende |
De Mozilla Sync server werkt goed indien de Setup zonder foutmeldingen wordt voltooid.
De basisinstallatie en configuratie van de Mozilla Sync server is nu afgerond.
Ga voor het in productie nemen van de Mozilla Sync server verder met “deel 2” van deze Howto: mozilla-sync-server-2
Copyright © 2013 Integrated Services; Tux4u.nl
Author: Marjan Waldorp; firefox/mozilla-sync-server-1 2013-08-08