[[Vorlage(Archiviert)]] [[Vorlage(Fortgeschritten)]] {{{#!vorlage Wissen [:Anwendungen_hinzufügen:Anwendungen hinzufügen] [:Pakete installieren: Installation von Programmen] [:Terminal: Ein Terminal öffnen] [:Editor: Einen Editor öffnen] [:Packprogramme: Archive entpacken] [:Programme starten: Ein Programm starten] [:Rechte: Rechte für Dateien und Ordner ändern] [:Paketquellen freischalten: Bearbeiten von Paketquellen] }}} [[Inhaltsverzeichnis]] [[Bild(funambol_logo.png, 48, align=left)]] [wikipedia_en:Funambol:Funambol Inc.] ist eine amerikanische Firma, die sich seit 2001 mit einer Java-Implementierung zur Datensynchronisation von Mobilgeräten beschäftigt. Das Projekt nannte sich zuerst "Sync4j", der Name wurde erst später in Funambol geändert. Es werden zwei verschiedene Produkte angeboten: [sourceforge:funambol:Funambol] {en} als kostenlose Open Source Community Edition und ein kommerzielles Produkt namens [http://www.funambol.com/ OneMediaHub] {en}. Die Unterschiede sind in dieser [http://www.funambol.com/solutions/licensing-editions.php Übersicht] {en} genauer beschrieben. Dieser Artikel behandelt die Serverkomponente, die unter der AGPLv3 Lizenz als kostenloser [wikipedia:SyncML:]-Server dient. Sie ermöglicht das Synchronisieren von persönlichen Daten zwischen verschiedensten Geräten. Zusätzlich sind Hinweise enthalten, wie sich der Server mit verschiedenen Client-Programmen nutzen lässt. = Einsatzszenarien = * Synchronisierung von PCs/Laptops * Synchronisierung von Handys, Smartphones, u.a. auch mit PCs * Datenmigration * (sehr) simples Backup = Installation = Da es keine '''.deb'''-Pakete gibt, muss man den Installer von der [sourceforge:funambol/files/bundle/v10/:Downloadseite] {en} {dl} beziehen. Die Dateinamen (ca. 200 MiB) lauten: * 32-Bit: '''funambol-10.0.3.bin''' * 64-Bit: '''funambol-10.0.3-x64.bin''' Mit {{{#!vorlage Befehl sudo sh ./funambol-10.0.3.bin oder sudo sh ./funambol-10.0.3-x64.bin }}} aus dem Downloadverzeichnis startet man den konsolenbasierten Installationsassistenten. Dieser fragt einige Details ab, die Standardvorgaben reichen jedoch meist aus. Wurde der Server nach '''/opt/Funambol''' installiert (Vorgabe), liegt in '''/opt/Funambol/bin''' auch ein Start-/Stopskript bereit, das man mit {{{#!vorlage Befehl sudo cp /opt/Funambol/bin/funambol /etc/init.d/funambol }}} in den '''init'''-Ordner legen kann. In dieser Datei ist das Heimatverzeichnis von Funambol anzupassen. Wenn, wie oben angegeben, in ''/opt/Funambol'' installiert wurde, so ist die Zeile ''FUNAMBOL_HOME=`(cd .. ; pwd)`'' wie folgt mit einem Editor anzupassen: {{{ FUNAMBOL_HOME=`(cd /opt/Funambol ; pwd)` }}} Achtung: Hier "'''F'''unambol" und nicht "'''f'''unambol" verwenden, sonst erhält man beim Versuch, den Server zu starten, die verwirrende Meldung: ''Please set JAVA_HOME ..'' (Funambol enthält ein eigenes Java unter JAVA_HOME=$FUNAMBOL_HOME/tools/jre-1.5.0/jre). Um den Server beim Systemstart als [:Dienste:Dienst] zu laden und beim Herunterfahren zu stoppen, kann man die nötigen Links in den Runleveln setzen. {{{#!vorlage Befehl sudo update-rc.d funambol defaults }}} Ist der Server noch nicht gestartet, kann man das jetzt mit {{{#!vorlage Befehl sudo /etc/init.d/funambol start }}} nachholen. = Konfiguration = Der Server funktioniert prima in der Standardkonfiguration. Ein Client, der sich zum ersten mal anmeldet, wird als neuer Nutzer mit einem selbstgewählten Passwort registriert. Will man Einstellung dennoch manuell konfigurieren, kann man das über das im Bundle enthaltene Administrationstool machen. Es findet sich unter '''/opt/Funambol/admin/bin/funamboladmin''' und wird mit folgendem Befehl gestartet: {{{#!vorlage Befehl gksu /opt/Funambol/admin/bin/funamboladmin }}} {{{#!vorlage Hinweis Dieses Werkzeug steht nur auf Rechnern mit einer grafischen Oberfläche zur Verfügung! Bei einem Server empfiehlt es sich, das Programm über [:SSH#X-Forwarding:X-Forwarding] auszuführen oder es auf einem anderen Rechner zu installieren, der über einen X-Server verfügt und den Funambol-Server über das Netzwerk zu konfigurieren. }}} ##aasche: deadlink ##Eine ausführliche [https://core.forge.funambol.org/servlets/ProjectProcess?pageID=CJN9Ie Dokumentation] {en} zur Konfiguration gibt es auf der Funambol-Webseite. {{{#!vorlage Warnung Die Dateirechte erlauben nur das Ausführen als Administrator (mit `gksudo`). }}} Nach dem Start des Tools kann man sich über ''"File -> Login"'' am Server anmelden. Die voreingestellten Anmeldedaten (User= `admin`, Passwort= `sa`) sind korrekt, sollten aber später aus Sicherheitsgründen geändert werden. Ebenfalls sollte der standardmäßig eingerichtete Account= `guest` gelöscht werden. Das zuständige Menü ist über ''"Servername -> Users"'' verfügbar. Wichtig ist der Menüpunkt ''“SERVERNAME => Server settings”''. Im Bereich ''“Engine”'' muss im Feld ''"Server URI"'' die komplette URL des Servers angegeben werden. Diese folgt dem Prinzip {{{ http://SERVER-IP:8080/funambol/ds }}} Nach der Änderung der ''"Server URI"'' sollte man den Server-Dienst zur Sicherheit neu starten (siehe oben), damit die Änderungen aktiv werden. {{{#!vorlage Warnung Wichtig ist, als ''"Server URI"'' eine echte IP-Adresse einzutragen (NICHT ''"localhost"''), da diese Adresse anscheinend als ''"Call back URI"'' an Client-Computer übergeben wird und dort dann nicht mehr auf den Funambol-Server (zurück) verweist. Typische Fehler-Meldungen auf dem Client in einem solchen Fall: * CurlTransport Failure: couldn't connect to host (''SyncEvolution unter Maemo5-Linux unter Nokia N900'') * HttpSendRequest error 12019: Der Status des Handles entspricht nicht dem angeforderten Vorgang (''Funambol Outlook-Client unter MS-Windows XP'') * HttpSendRequest error 12031: Die Serververbindung wurde zurückgesetzt (''Funambol Outlook-Client unter MS-Windows XP'') }}} Bei Verwendung von ''"DHCP"'' muss man dem Server außerdem immer die gleiche IP-Adresse zuweisen. Bei einer AVM Fritz!Box 7270 geht das z.B. (mit der neuesten Firmware) über die Verwaltungs-Oberfläche http://fritz.box im Menü-Punkt ''"Heimnetz -> Netzwerk -> Geräte und Benutzer"'' durch [[Vorlage(Tasten, lmt)]]-Klick auf die ''"Bearbeiten-Schaltfläche"'' in der Zeile, in der auch der Server-Computer angezeigt wird. Zum Schluss sollten noch die Logging Einstellungen geprüft werden, da hier sehr schnell viel Speicherplatz verbraucht werden kann. Die Einstellungen stehen hier: ''" -> Server settings -> Logging -> Appenders"''. Bei ''"funambol.content-provider.logfile"'' ''"funambol.logfile"'' kann die Größe der Logdatei und die Anzahl der Logdateien eingestellt werden. Die Standard-Einstellung ist hier je 5 mal 100 MB, also in Summe 1 GB. Wem das zu viel ist, kann hier die Einstellungen ändern. Die nächsten Einstellungen betreffen den Inhalt der Logs: dies kann bei ''"loggers"'' eingestellt werden. Im allgemeinen reicht hier die Stufe ''"INFO"'' aus. Einfach alle Einstellungen mal durchschauen. Im Fehlerfall können hier die Loggingstufen auch hochgestellt werden um die Ursache zu suchen. = Clients = Der Server unterstützt im Prinzip jeden SyncML-fähigen Client. Unterstützt werden unter anderem: * Outlook - Wer von Outlook auf ein anderes Mailprogramm umsteigen will, aber am Export der Daten scheitert, kann so über Funambol Adressen und Termine z.B. nach Evolution migrieren. * [#Symbian Symbian] * Windows Mobile * Android mit dem '''offiziellen Funambol-Server''' - Den Android-Client "[http://www.androidpit.de/de/android/market/apps/app/com.funambol.androidsync/OneMediaHub Onemedia Hub]" kann man einfach im Market herunterladen und installieren. Beim ersten Aufrufen werden die Servereinstellungen vorgenommen. Jetzt muss man sich also entscheiden, ob man seine Daten über die Cloud schicken will (my.funambol.com) oder einen lokalen Server verwenden. Will man später wechseln, muss man den Client zuerst deinstallieren und dann wieder neu downloaden. Es ist nicht möglich, beide Varianten einzurichten. Will man einen lokalen Server verwenden, gibt man nicht seine Telefonnummer ein, sondern geht unten bei ''"Haben Sie schon ein Konto?"'' auf ''"ANMELDEN"''. Anschließend gibt man die Daten seines eigenen Servers ein. * Android mit '''eigenem Server''' - Möchte man seinen eigenen Funambol-Server verwenden, so muss der Client "[http://www.androidpit.de/de/android/market/apps/app/com.funambol.funv10/FunV10 FunV10]" installiert werden. Anschließend klickt man auf "bestehendes Konto" und als URL wird die des eigenen Servers eingegeben, z. B.: {{{http://SERVER-IP:8080/funambol/ds}}} * iPhone * [:Archiv/iPod:] * Mozilla [:Thunderbird:] (siehe auch [:Thunderbird/Tipps#Synchronisierung:]) * [:Thunderbird/Lightning:Lightning] * Blackberry * [:Evolution:] * [:Kontact:] = Tipps & Tricks = === Wie erreichen? === Die Adresse des gerade eingerichteten Servers lautet: {{{ http://SERVER-IP:8080/funambol }}} Über den Web Demo Client erreicht man einen Anmeldebildschirm. Nach der Anmeldung kann man die Datenbanken einsehen und auch eventuell ändern oder komplett löschen. Damit ist auch zumindest eine kleine Konfiguration des Servers möglich, wenn man über kein grafisches Interface verfügt. {{{#!vorlage Warnung Standardmäßig kann man sich hier mit einem "guest"-Benutzer anmelden, Passwort ebenfalls "guest". Diesen sollte man schnellstens löschen (über das Admin Tool). }}} === Datensicherung === Zur Sicherung der auf dem Server gespeicherten Daten muss der Inhalt des folgenden Verzeichnisses kopiert werden: {{{ /opt/Funambol/tools/hypersonic/data }}} Sollte man Anpassungen an den Konfigurationsdateien gemacht haben, so müssen diese manuell gesichert werden. === Symbian === Im Menü unter ''"Einstellungen -> Konfiguration -> Eigene Einstellungen -> Optionen -> Neu hinzufügen -> Synchronisation"'' auswählen und folgende Werte eintragen: {{{#!vorlage Tabelle Option Wert +++ Serveradresse http://SERVER-IP:8080/funambol/ds +++ Benutzername ''entsprechend ausfüllen'' +++ Passwort ''entsprechend ausfüllen'' +++ Kontaktdatenbank card +++ Kalenderdatenbank cal +++ Notizdatenbank note }}} Dann unter ''"Einstellungen -> Synchronisierung & Sicherung -> Mit Server synchronisieren -> Synchronisierungseinstellungen -> Synchronisationseinstellungen -> Account'' das gerade angelegte Profil auswählen. Dann zurück zu ''"Einstellungen - Synchronisierung & Sicherung - Mit Server synchronisieren - Jetzt synchronisieren"''. Damit wird dann eine Synchronisierung durchgeführt. === Mozilla Funambol Plugin === Damit alle Termine von Lightning richtig übernommen werden, muss auf dem Server das passende Nachrichtenformat aktiviert werden. Das Plugin verwendet das iCalendar-Format, das bei Funambol nicht standardmäßig aktiviert ist. Um es hinzuzufügen, geht man im Konfigurationstool über ''"servername -> Modules -> foundation -> FunambolFoundationConnector -> PIM Calendar SyncSource"''. Dort fügt man einen weiteren Eintrag hinzu. Als Quell-URl kann man etwas wie `ical` verwenden, das Nachrichtenformat muss auf `iCalendar` stehen. Nachdem man dies gespeichert hat, kann man im Client die Source-URL eintragen. Die Server Location muss hier so eingegeben werden: {{{ http://SERVER-IP:8080/funambol/ds }}} ==== Unstable ==== Die neuesten Plugins können unter [https://mozilla-plugin.forge.funambol.org/wiki/TestReleases mozilla-plugin.forge] {en} heruntergeladen werden, es handelt sich dabei allerdings um __Testreleases__, die noch Fehler enthalten können! Damit die Installation auch in der Thunderbird Version 3.1 und höher erfolgen kann, kann die herunter geladene '''*.xpi'''-Datei mit dem Archivmanager geöffnet werden. Darin ist dann die '''install.rdf''' mit einem Texteditor zu öffnen und anzupassen: {{{ 3.1.* }}} Mit dieser Änderung klappt die Synchronisation auch unter Ubuntu 10.10 mit Thunderbird 3.1.X. Die neueste Beta 1.0b4 gibt es [https://addons.mozilla.org/de/thunderbird/addon/249323/ addons.mozilla.org] {de} - dann entfällt auch die Anpassung der '''install.rdf'''. "fertige" Funambol Plugins sind auch unter [https://maurus.net/resources/funambol/] {en} erhältlich. Der Client für Thunderbird 11 funktioniert nur mit der aktuellen Version (10.0.3) des Funambol-Servers. === Evolution === Beim Synchronisieren von Daten aus Evolution heraus muss man bedenken, dass man lediglich __ein__ Adressbuch und __einen__ Kalender synchronisieren kann. Standardmäßig werden das Adressbuch ''"PERSÖNLICH"'' und der gleichnamige Kalender synchronisiert. Wer bisher mehrere Kalender oder Adressbücher führte, muss also umdenken. Zum Markieren eignen sich stattdessen eventuell die Kategorien. Wer jetzt zuerst seine Daten innerhalb von Evolution in ein Adressbuch oder in einen Kalender kopieren will, bekommt die Folgen eines Bugs zu spüren: Evolution stürzt ab, mehr dazu in diesem [bug:831308:Fehlerbericht] {en} . Wer von dem Bug betroffen ist, melde sich bitte in der dazugehörigen Diskussion auf [https://bugs.launchpad.net/ubuntu/+source/evolution/+bug/831308 Launchpad] {en} . Das Programm [https://syncevolution.org/ SyncEvolution] {en}, mit dem sich Evolution über Funambol synchronisieren lässt, kann aus den offiziellen Paketquellen bezogen werden. Die zu installierenden Pakete [2] heißen: {{{#!vorlage Paketinstallation syncevolution, universe sync-ui, universe, optional }}} Das Programm '''sync-ui''' findet sich nach der Installation im Startmenü unter ''"Internet -> Syncronisation"''. Wenn aufs Terminal verzichtet werden soll, sind folgende Einstellungen vorzunehmen: * Server: `http://localhost:8080/funambol/ds` * Kontakte: `card` * Aufgaben: `task` * Kalender: `cal` * Notizen: `note` Auch ohne grafische Oberfläche lässt sich der Client einrichten. Der folgende Befehl: {{{#!vorlage Befehl syncevolution --configure --sync-property username=BENUTZERNAME --sync-property password=PASSWORT funambol }}} erstellt einen neuen Server in SyncEvolution. Die Adresse des eigenen Servers wird in der Datei '''~/.config/syncevolution/default/peers/funambol/config.ini''' eingetragen. Hierbei wird diejenige Adresse verwendet, die man zuvor mittels des Konfigurationstools im Bereich ''"Server Settings => Engine => Server URI"'' eingetragen hat, im Beispiel oben war das {{{ http://serverip:8080/funambol/ds }}} Die Synchronisation von Kalender, Adressbuch, Aufgaben und Notizen kann in den Dateien in den Unterverzeichnissen von '''~/.config/syncevolution/default/peers/funambol/sources/''' eingetragen werden. Wichtig ist, dass in jedem neuen Unterordner jeweils eine Datei '''config.ini''' liegt. Welche Werte innerhalb dieser Datei gesetzt werden können kann anhand der bereits existierenden Unterordner abgelesen werden. Nun kann mit {{{#!vorlage Befehl syncevolution funambol }}} zu dem Server synchronisiert werden. Mit [launchpad:genesis-sync:Genesis] {en} steht alternative grafische Oberfläche für SyncEvolution bereit, die sich allerdings noch in Entwicklung befindet. === Kontact === Akunambol, die Schnittstelle zwischen Akonadi und Funambol, ist in den Paketquellen nicht vorhanden. Ein Paket kann aber aus einem PPA bezogen werden. [[Vorlage(PPA, akunambol/ppa)]] Anschließend kann das Paket {{{#!vorlage Paketinstallation akunambol, ppa }}} installiert werden. Akunambol wird im Terminal als normaler Benutzer gestartet. Unter ''"Settings -> Configure Akunambol"'' den Benutzernamen und das Passwort eintragen, welches im Funambol-Adminpanel für den User angelegt wurde. Wichtig ist hier auch die SyncURL, welche auf den Server linken muss. Diese sieht in etwa so aus: {{{ http://localhost:8080/funambol.ds }}} Dies ist übrigens auch die Adresse, welche in den Phone-Client von Funambol inkl. Benutzername und Passwort eingetragen werden sollte. Die anderen Registerkarten bei den Settings müssen leer bleiben, sonst funktioniert es nicht! Es reicht also, die Registerkarte ''"Account"'' auszufüllen. Wichtig ist, dass [:KMail:], [:KAddressBook:] und andere Komponenten, welche mit Funambol und Akunambol abgeglichen werden sollen, zwingend über [:Akonadi:] verwaltet werden müssen. = Weiterführende Links = * [http://download.forge.objectweb.org/sync4j/ Dokumentation und Artikel] {en} zum Funambol-Server * [http://funambol.openscript.ch/ Funambol - synchronize everything] {de} - deutschsprachige Anleitung, 08/2010 * [:Archiv/Evolution/Synchronisation#SyncEvolution:SyncEvolution] * [http://www.mayrhofer.eu.org/n900-syncevolution SyncEvolution für das Nokia N900 einrichten] {de} #tag: Netzwerk, Server, Büro, Kommunikation, Java