Archive:Http://userbase.kde.org/Akonadi 4.4/Troubleshooting/de: Difference between revisions

From KDE UserBase Wiki
(Created page with 'Siehe [http://bugs.kde.org/226960 den Fehlerbericht] für mehr Details.')
m (edit category)
 
(94 intermediate revisions by 5 users not shown)
Line 1: Line 1:
{{Template:I18n/Language Navigation Bar|Akonadi 4.4/Troubleshooting}}
<languages />
<languages />
==Einführung==
==Einführung==


Diese Seite hilft vor allem bei der Fehlersuche die '''Akonadi''' betrifft, da es unvermeidliche Störungen in der frühen Phase der Migration gibt. Für viele Menschen wird es die ersten Anzeichen von '''Akonadi''' Aktivitäten in '''KDE SC 4.4''' geben und viele werden davon verwirrt werden. Für eine kurze Beschreibung des Zwecks von '''Akonadi''' sehen Sie sich diesen '''[[Glossary/de#Akonadi|Glossareintrag]]''' an. Außerdem finden Sie nützliche Links zu weiteren Informationen. Nachdem unvermeidlichen Anlaufschwierigkeiten vorbei sind, wird '''Akonadi''' ein Kraftwerk sein, das von vielen Anwendungen genutzt werden kann.
Diese Seite hilft vor allem bei der Fehlersuche die '''Akonadi''' betrifft, da es unvermeidliche Störungen in der frühen Phase der Migration gibt. Für viele Menschen wird es die ersten Anzeichen von '''Akonadi''' Aktivitäten in '''KDE SC 4.4''' geben und viele werden davon verwirrt werden. Für eine kurze Beschreibung des Zwecks von '''Akonadi''' sehen Sie sich diesen '''[[Glossary/de#Akonadi|Glossareintrag]]''' an. Außerdem finden Sie nützliche Links zu weiteren Informationen. Nachdem die unvermeidlichen Anlaufschwierigkeiten vorbei sind, wird '''Akonadi''' ein Kraftwerk sein, das von vielen Anwendungen genutzt werden kann.


===Die Struktur verstehen===
===Die Struktur verstehen===
Line 11: Line 10:
==Tipps zur Problemlösung==
==Tipps zur Problemlösung==


* Bei der Meldung von Problemen mit dem '''Akonadi''' Server, fügen Sie immer den umfassenden Selbsttest-Bericht bei. Dieser Bericht kann von dem Selbstest-Dialog entnommen werden, der immer dann angezeigt wird, wenn der '''Akonadi''' Server nicht erfolgreich gestartet werden konnte. Sie können den Selbsttest in dem Kcmmodul finden, dass über kcmshell4 kcm_akonadi erreichbar ist
* Bei der Meldung von Problemen mit dem '''Akonadi''' Server, fügen Sie immer den umfassenden Selbsttest-Bericht bei. Dieser Bericht kann von dem Selbstest-Dialog entnommen werden, der immer dann angezeigt wird, wenn der '''Akonadi''' Server nicht erfolgreich gestartet werden konnte. Sie können den Selbsttest in dem Kcmmodul finden, dass über folgenden Befehl erreichbar ist:
 
{{input|1=kcmshell4 kcm_akonadi}}
* Das Starten des '''Akonadi''' Servers über die Kommandozeile kann weitere hilfreiche Informationen geben. Dies können Sie durch Ausführen von
* Das Starten des '''Akonadi''' Servers über die Kommandozeile kann weitere hilfreiche Informationen geben. Dies können Sie durch Ausführen von folgendem Befehl erreichen:
 
{{input|1=akonadictl start}}
akonadictl start
Analog kann mit folgendem Befehl der Akonadi-Server wieder gestoppt werden:
in eine Konsole erreichen. Analog mit
{{input|1=akonadictl stop}}
akonadictl stop
Dieser Befehl gibt weitere hilfreiche Informationen:
kann der Akonadi-Server gestoppt werden.
{{input|1=akonadictl status}}
akonadictl status
gibt weitere hilfreiche Informationen.
 
==Allgemeine Probleme==
==Allgemeine Probleme==


Line 34: Line 30:
===Verzeichnis nicht gefunden: "/Local"===
===Verzeichnis nicht gefunden: "/Local"===


Einige Leute haben diesen Fehler gemeldet, wenn '''Kontact''' nicht startet. In frühen Version von 4.4 scheint es einen Bug in der Migration zu geben, der '''KMail''' anweist nach lokalen E-Mails in dem Verzeichnis ~/.local/share/Local zu suchen. Einem Verzeichnis das noch nicht eingerichtet ist. Die Lösung dafür ist, es nicht zu versuchen es zu beheben, sondern, wenn '''KMail'''/'''Kontact''' geschlossen sind, die '''Akonadi-Einrichtung''' zu öffnen (über '''KRunner''',
Einige Leute haben diesen Fehler gemeldet, wenn '''Kontact''' nicht startet. In frühen Version von 4.4 scheint es einen Bug in der Migration zu geben, der '''KMail''' anweist nach lokalen E-Mails in dem Verzeichnis ~/.local/share/Local zu suchen. Einem Verzeichnis das noch nicht eingerichtet ist. Die Lösung dafür ist, es nicht zu versuchen es zu beheben, sondern, wenn '''KMail'''/'''Kontact''' geschlossen sind, die '''Akonadi-Einrichtung''' zu öffnen:
  Alt-F2
* über '''KRunner''',  Alt-F2 oder
oder
* akonadiconsole in der '''Konsole'''
akonadiconsole
 
in der Konsole) und entfernen Sie die Ressource die für die lokale Mail zuständig ist. Jetzt sollten Sie feststellen, dass Sie '''Kontact''' oder '''KMail''' starten können und eine neue Ressource erstellt wird die auf ~/.local/share/local-mail zeigt
Dann entfernen Sie die Ressource die für die lokale Mail zuständig ist. Jetzt sollten Sie feststellen, dass Sie '''Kontact''' oder '''KMail''' starten können und eine neue Ressource erstellt wird die auf ~/.local/share/local-mail zeigt


===Es gibt andere neue Verzeichnisse unter ~/.local/share/===
===Es gibt andere neue Verzeichnisse unter ~/.local/share/===
Line 72: Line 68:
|}
|}


Beachten Sie, dass die obigen Befehle '''Nepomuk''' '''nicht''' permanent aktivieren werden. Wenn es nicht aktiviert ist, müssen Sie dies in den '''Systemeinstellungen''' durchführen.
Beachten Sie, dass die obigen Befehle '''Nepomuk''' nicht dauerhaft aktivieren werden (falls es noch nicht aktiviert war); dafür müssen Sie die '''Systemeinstellungen''' verwenden.


Ein laufendes '''Nepomuk''' ist notwendig, um ein funktionierendes '''Akonadi''', und damit ein funktionierendes '''Kontact''' zu haben. Sie können jedoch den '''Strigi''' Datei-Indexer deaktivieren, das dieser für '''Kontact''' nicht benötigt wird. '''Strigi''' Datei-Indizierung ist nur für die Desktopsuche, die für '''Kontact''' nicht notwendig ist. Stellen Sie nur sicher das für '''Kontact''' '''Nepomuk''' selbst ordnungsgemäß läuft.
Ein laufendes '''Nepomuk''' ist notwendig, um ein funktionierendes '''Akonadi''', und damit ein funktionierendes '''Kontact''' zu haben. Sie können jedoch den '''Strigi''' Datei-Indexer deaktivieren, das dieser für '''Kontact''' nicht benötigt wird. '''Strigi''' Datei-Indizierung ist nur für die Desktopsuche, die für '''Kontact''' nicht notwendig ist. Stellen Sie nur sicher das für '''Kontact''' '''Nepomuk''' selbst ordnungsgemäß läuft.
Line 78: Line 74:
In '''Kontact''' wird '''Nepomuk''' für viele verschiedene Dinge verwendet, angefangen von der Anzeige der anstehenden Geburtstage, über den Umgang mit Frei / Gebucht-Listen bis zur Anzeige des Fotos eines Kontakts im Nachrichten-Betrachter. Wenn '''Nepomuk''' nicht ausgeführt wird, werden mehrere verschiedene Dinge in '''Kontact''' aufhören zu arbeiten. Der Hinweis ist dazu da Sie vor der eingeschränkten Funktionalität zu warnen. Aktivieren von '''Nepomuk''', wie oben beschrieben, behebt das Problem.
In '''Kontact''' wird '''Nepomuk''' für viele verschiedene Dinge verwendet, angefangen von der Anzeige der anstehenden Geburtstage, über den Umgang mit Frei / Gebucht-Listen bis zur Anzeige des Fotos eines Kontakts im Nachrichten-Betrachter. Wenn '''Nepomuk''' nicht ausgeführt wird, werden mehrere verschiedene Dinge in '''Kontact''' aufhören zu arbeiten. Der Hinweis ist dazu da Sie vor der eingeschränkten Funktionalität zu warnen. Aktivieren von '''Nepomuk''', wie oben beschrieben, behebt das Problem.


Sie können überprüfen ob '''Nepomuk''' korrekt ausgeführt wird durch die Eingabe von
Sie können überprüfen ob '''Nepomuk''' korrekt ausgeführt wird durch die Eingabe von:
akonadictl status
{{input|1=akonadictl status}}
 
===Ich möchte mein aktuelles Adressbuch und Organizer verwenden - Kann ich das?===
===Ich möchte mein aktuelles Adressbuch und Organizer verwenden - Kann ich das?===


Line 91: Line 86:
===Meine Kontakte werden nicht angezeigt, wenn ich in KMail auf die Schaltfläche Auswählen klicke===
===Meine Kontakte werden nicht angezeigt, wenn ich in KMail auf die Schaltfläche Auswählen klicke===


Überprüfen Sie <menuchoice>Systemeinstellungen -> Erweitert -> KDE-Ressourcen</menuchoice>. Stellen Sie sicher, dass die von '''Akonadi''' kontrollierten Adressbücher aufgeführt sind - fügen Sie sie gegebenenfalls hinzu. Gleichzeitig ist es eine gute Idee ihr wichtigstes '''Akonadi''' Adressbuch, in der Regel ''Persönliche Kontakte'' genannt, zum Standard zu machen. Weitere Einzelheiten dazu können [[KAddressBook_4.4/de#Ihr_neues_Adressbuch_einrichten|hier]] nachgelesen werden.
Überprüfen Sie <menuchoice>Systemeinstellungen -> Erweitert -> KDE-Ressourcen</menuchoice>. Stellen Sie sicher, dass die von '''Akonadi''' kontrollierten Adressbücher aufgeführt sind - fügen Sie sie gegebenenfalls hinzu. Gleichzeitig ist es eine gute Idee ihr wichtigstes '''Akonadi''' Adressbuch, in der Regel ''Persönliche Kontakte'' genannt, zum Standard zu machen. Weitere Einzelheiten dazu können [[Special:myLanguage/KAddressBook/index/de#Ihr_neues_Adressbuch_einrichten|hier]] nachgelesen werden.


===Wie bekomme ich mein Groupware Adressbuch zurück?===
===Wie bekomme ich mein Groupware Adressbuch zurück?===
Line 99: Line 94:
Altes Framework: In der ''Akonadi-Einrichtung'' fügen Sie "KDE-Adressbuch (herkömmlich)" hinzu. Das KDE-Adressbuch heißt, dass Sie alte KDE-Ressourcen für '''Akonadi''' verwenden können. In der Konfiguration des "KDE-Adressbuch (herkömmlich)" verweisen Sie zu einem "IMAP-Adressbuch via KMail" und in '''KMail''' sollten dadurch die Groupware-Optionen aktiviert werden. Dies sollte für '''Kolab''', '''eGroupware''' und ähnliche Adressbücher funktionieren - Sie müssen die Optionen überprüfen um sicherzustellen, dass der richtige Typ ausgewählt ist.
Altes Framework: In der ''Akonadi-Einrichtung'' fügen Sie "KDE-Adressbuch (herkömmlich)" hinzu. Das KDE-Adressbuch heißt, dass Sie alte KDE-Ressourcen für '''Akonadi''' verwenden können. In der Konfiguration des "KDE-Adressbuch (herkömmlich)" verweisen Sie zu einem "IMAP-Adressbuch via KMail" und in '''KMail''' sollten dadurch die Groupware-Optionen aktiviert werden. Dies sollte für '''Kolab''', '''eGroupware''' und ähnliche Adressbücher funktionieren - Sie müssen die Optionen überprüfen um sicherzustellen, dass der richtige Typ ausgewählt ist.


Neues Framework (nur mit '''Kolab''' getestet): In der ''Akonadi-Einrichtung'' (rufen Sie
Neues Framework (nur mit '''Kolab''' getestet): In der ''Akonadi-Einrichtung'' fügen Sie eine "IMAP E-Mail Server" Ressource hinzu und richten Sie ihren Mail-Server-Namen, Benutzername und Kennwort ein. Dann klicken Sie auf '''Automatisch erkennen'''. Führen Sie folgenden Befehl aus um es zu sehen:
kcmshell4 kcm_akonadi
{{input|1=kcmshell4 kcm_akonadi}}
in der Konsole auf, um es zu sehen) fügen Sie eine "IMAP E-Mail Server" Ressource hinzu und richten Sie ihren Mail-Server-Namen, Benutzername und Kennwort ein. Dann klicken Sie auf '''Automatisch erkennen'''. Dann fügen Sie eine '''Kolab''' Ressource hinzu. Der nächste Schritt ist zu warten, bis die IMAP Ressource synchronisiert ist, dies kann recht lange dauern. Der Status wird in der Akonadi-Einrichtung angezeigt. Wenn nichts passiert, versuchen Sie einen Neustart des '''akonadiserver'''. Nach einiger Zeit sollte das '''Kolab''' Adressbuch in '''KAdressBook''' angezeigt werden.
Dann fügen Sie eine '''Kolab''' Ressource hinzu. Der nächste Schritt ist zu warten, bis die IMAP Ressource synchronisiert ist, dies kann recht lange dauern. Der Status wird in der '''Akonadi''' Einrichtung angezeigt. Wenn nichts passiert, versuchen Sie einen Neustart des '''akonadiserver'''. Nach einiger Zeit sollte das '''Kolab''' Adressbuch in '''KAdressBook''' angezeigt werden.
 
<span id="You experience long delays when sending mail"></span>
===Sie bemerken lange Verzögerungen beim Versenden von E-Mails===
===Sie bemerken lange Verzögerungen beim Versenden von E-Mails===


Line 109: Line 104:
Es wurde ein Fehler gefunden in der Art wie '''Nepomuk''' die Adressen überprüft, dies kann zu großen Verzögerungen führen. Dies ist für KDE SC 4.4.1 behoben. Wenn Sie nicht auf diese Version aktualisieren können, gibt es folgende Problemlösung:
Es wurde ein Fehler gefunden in der Art wie '''Nepomuk''' die Adressen überprüft, dies kann zu großen Verzögerungen führen. Dies ist für KDE SC 4.4.1 behoben. Wenn Sie nicht auf diese Version aktualisieren können, gibt es folgende Problemlösung:


Schließen Sie '''Kontact''' oder '''KMail''' und '''KAdressbook''', wenn Sie diese als Einzelanwendungen verwenden. Deaktivieren Sie '''Strigi''' in den '''Systemeinstellungen'''. Deaktivieren Sie '''Nepomuk''' und löschen Sie die Datenbank. Führen Sie einen Neustart des '''nepomuksever''' durch. Die dafür notwendigen Befehle sind (als Anwender)
Schließen Sie '''Kontact''' oder '''KMail''' und '''KAdressbook''', wenn Sie diese als Einzelanwendungen verwenden. Deaktivieren Sie '''Strigi''' in den '''Systemeinstellungen'''. Deaktivieren Sie '''Nepomuk''' und löschen Sie die Datenbank. Führen Sie einen Neustart des '''nepomuksever''' durch. Die dafür notwendigen Befehle sind (als Anwender):


:::{|style="width:98%; border:2px dotted #BCBCBC; background:#EEEEEE;"
<!--T:42-->
|qdbus org.kde.NepomukServer /nepomukserver org.kde.NepomukServer.quit
{{input|1=qdbus org.kde.NepomukServer /nepomukserver org.kde.NepomukServer.quit
|-
rm -r ~/.kde/share/apps/nepomuk
|rm -r ~/.kde/share/apps/nepomuk
rm -r ~/.kde4/share/apps/nepomuk
|-
nepomukserver}}
|rm -r ~/.kde4/share/apps/nepomuk
|-
|nepomukserver  
|}


Die wird natürlich die gesamte Datenbank löschen, einschließlich aller Schlagwörter die Sie hinzugefügt haben. In der Theorie weiß ich, dass ein mehr selektiver Löschvorgang in der Datenbank möglich ist. Falls dies für Sie wichtig ist, können Sie eine Anleitung dazu auf [http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/TipsAndTricks#Remove_all_Strigi-indexed_data dieser Seite] finden.
Die wird natürlich die gesamte Datenbank löschen, einschließlich aller Schlagwörter die Sie hinzugefügt haben. In der Theorie weiß ich, dass ein mehr selektiver Löschvorgang in der Datenbank möglich ist. Falls dies für Sie wichtig ist, können Sie eine Anleitung dazu auf [http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/TipsAndTricks#Remove_all_Strigi-indexed_data dieser Seite] finden.
=== IMAP Resource behauptet immer offline zu sein ===
Auch wenn das System über eine Internetverbindung verfügt, weigert sich die IMAP-Ressource sich online zu schalten.
Obwohl das System eine Internet-Verbindung hat, wird die IMAP-Ressource nicht im Status ''Online'' angezeigt.
<span class="mw-translate-fuzzy">
Dieser Fehler wird durch eine falsch konfigurierte NetworkManager Installation auf Ihrem System verursacht. Prüfen Sie die Ausgabe von
:::{{input|1=qdbus --system org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.state}}
Wenn diese '4' ist (Nicht verbunden), aber Sie auf das Internet zugreifen können, dann ist Ihr NetworkManager in der Tat falsch konfiguriert. Wenn diese '3' ist (Verbunden) muss das Problem woanders sein. Unter Debian kann dieses Verhalten durch Schnittstellen verursacht werden, die in /etc/network/interfaces definiert sind und nicht vom NetworkManager kontrolliert werden. Um dies zu beheben, entfernen Sie einfach die Einträge aus /etc/network/interfaces und lassen Sie diese vom NetworkManager verwalten.
</span>
{{input|1=qdbus --system org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.state}}
You can get any of the following values:
* '''20''' (formerly ''4''), '''disconnected'''. If you have access to the internet, your NetworkManager configuration must be wrong.
* '''70''' (formerly ''3''), '''connected'''. The problem must be somewhere else.
**It might be that one or more '''network interfaces''' are '''not controlled by NetworkManager'''. If that is your case, give the control of those interfaces to NetworkManager. It might be as simple as removing the entries for the interfaces from a text file (for example, <tt>/etc/network/interfaces</tt>). Check the help resources provided by your software distribution for more information.
=== Einzelheiten einiger Nachrichten können nicht (oder nur sehr verzögert) angezeigt werden ===
Wenn Sie einige Mails nicht öffnen können und eine Nachricht in der Form " bitte warten ... " auftaucht, kann es helfen, sich aus KDE ab- und wieder anzumelden, um alle Prozesse zurückzusetzen.


==Einige technische Probleme==
==Einige technische Probleme==
Line 136: Line 151:


Einige Distributionen, die '''Apparmor''' verwenden, haben dies so eingerichtet, dass es die Ausführung des internen Datenbankservers von '''Akonadi''' verhindert. Dadurch kann es zu einer Reihe von unspezifischen Fehlermeldungen kommen, einschließlich der folgenden (aber nicht nur diese):
Einige Distributionen, die '''Apparmor''' verwenden, haben dies so eingerichtet, dass es die Ausführung des internen Datenbankservers von '''Akonadi''' verhindert. Dadurch kann es zu einer Reihe von unspezifischen Fehlermeldungen kommen, einschließlich der folgenden (aber nicht nur diese):
:::{|style="width:98%; border:2px dotted #BCBCBC;"
{{output|1=unknown error 255 when running akonadictl
| unknown error 255 when running akonadictl  
"DB error: 'Could not open required defaults file: /home/$username/.local/share/akonadi/mysql.conf"}}
|-
 
| "DB error: 'Could not open required defaults file: /home/$username/.local/share/akonadi/mysql.conf"  
Sie können dieses Problem lösen in dem Sie den folgenden Befehl mit root-Rechten ausführen und dann apparmor neu laden:
|}
{{input|1=aa-complain mysqld}}


Sie können dieses Problem lösen in dem Sie
aa-complain mysqld
mit root-Rechten ausführen und dann apparmor neu laden.
Bei ''Kubuntu'' würde dies so aussehen:
Bei ''Kubuntu'' würde dies so aussehen:
  sudo aa-complain mysqld
   
sudo /etc/init.d/apparmor reload
{{input|1=sudo aa-complain mysqld
sudo /etc/init.d/apparmor reload}}


Beachten Sie, dass Sie vielleicht '''Apparmor''' verwenden, auch wenn es nicht in der Prozessliste angezeigt wird.
Beachten Sie, dass Sie vielleicht '''Apparmor''' verwenden, auch wenn es nicht in der Prozessliste angezeigt wird.
Line 153: Line 166:
Beachten Sie auch, dass einige Distributionen eine zusätzliche '''mysqld''' Binärdatei mit dem Namen '''mysqld-akonadi''' mitliefern, welches '''AppArmor''' schon korrekt eingerichtet hat. Wenn das auf ihrem System der Fall ist und Sie trotzdem dieses Problem haben, gibt es zwei mögliche Gründe:
Beachten Sie auch, dass einige Distributionen eine zusätzliche '''mysqld''' Binärdatei mit dem Namen '''mysqld-akonadi''' mitliefern, welches '''AppArmor''' schon korrekt eingerichtet hat. Wenn das auf ihrem System der Fall ist und Sie trotzdem dieses Problem haben, gibt es zwei mögliche Gründe:
* '''Akonadi''' verwendet immer noch '''mysqld''' anstatt '''mysqld-akonadi'''. Sie können dies in den <menuchoice>Systemeinstellungen -> Erweitert -> Akonadi -> Server-Einstellungen</menuchoice> ändern.
* '''Akonadi''' verwendet immer noch '''mysqld''' anstatt '''mysqld-akonadi'''. Sie können dies in den <menuchoice>Systemeinstellungen -> Erweitert -> Akonadi -> Server-Einstellungen</menuchoice> ändern.
* '''AppArmor''' ist auch nicht für '''mysqld-akonadi''' korrekt eingerichtet. Versuchen Sie den Befehl
* '''AppArmor''' ist auch nicht für '''mysqld-akonadi''' korrekt eingerichtet. Versuchen Sie den Befehl ''aa-complain'' wie oben erwähnt, mit '''mysqld-akonadi''' anstatt '''mysqld''' auszuführen.  
aa-complain
wie oben erwähnt, mit '''mysqld-akonadi''' anstatt '''mysqld''' auszuführen.


----
<!--T:54-->
---


Sie werden dieses Problem ebenfalls haben, wenn Sie ein verschlüsseltes Home-Verzeichnis unter Verwendung von encryptfs kombiniert mit '''AppArmor''' verwenden. '''Akonadi''' '''AppArmor''' berücksichtigt zurzeit kein verschlüsseltes Home-Verzeichnis (üblicherweise bei Ubuntu Jaunty Anwendern). Dazugehörende Fehlermeldungen:
Sie werden dieses Problem ebenfalls haben, wenn Sie ein verschlüsseltes Home-Verzeichnis unter Verwendung von encryptfs kombiniert mit '''AppArmor''' verwenden. '''Akonadi''' '''AppArmor''' berücksichtigt zurzeit kein verschlüsseltes Home-Verzeichnis (üblicherweise bei Ubuntu Jaunty Anwendern). Dazugehörende Fehlermeldungen:
* dmesg zeigt:
* dmesg zeigt:
    ecryptfs_do_create: Failure to create dentry in lower fs; rc = [-13]
{{output|1=ecryptfs_do_create: Failure to create dentry in lower fs; rc = [-13]
    ecryptfs_create: Failed to create file inlower filesystem
ecryptfs_create: Failed to create file inlower filesystem}}
* Akonadi zeigt den folgenden Fehler:
* Akonadi zeigt den folgenden Fehler:
    Akonadi server process not registered at D-Bus
{{output|1=Akonadi server process not registered at D-Bus}}


Die Problemlösung ist, die Datei "/etc/apparmor.d/usr.sbin.mysqld-akonadi" zu editieren.
Die Problemlösung ist, die Datei "/etc/apparmor.d/usr.sbin.mysqld-akonadi" zu editieren.
Unterhalb der Zeile:
Unterhalb der Zeile:
      @{HOME}/.local/share/akonadi/** rwk,
{{output|1=@{HOME}/.local/share/akonadi/** rwk,}}
fügen Sie die folgende neue Zeile hinzu:
Fügen Sie die folgende neue Zeile hinzu:
      @{HOME}/.Private/** rwk,
{{input|1=@{HOME}/.Private/** rwk,}}


Führen Sie einen Neustart von '''apparmor''' und einen Neustart von '''akonadi''' durch.
Führen Sie einen Neustart von '''apparmor''' und einen Neustart von '''akonadi''' durch.


=== Fehlende Voraussetzungen ===
=== Fehlende Voraussetzungen ===
Line 182: Line 193:
* Das ''Qt4 MySQL-Plug-In'' (bei '''openSUS'''E ''libqt4-sql-mysql'' genannt)
* Das ''Qt4 MySQL-Plug-In'' (bei '''openSUS'''E ''libqt4-sql-mysql'' genannt)


Wenn Sie Qt4 selbst kompilieren, stellen Sie sicher, dass das configure Script die MySQL-Unterstützung durch hinzufügen des Parameters
Wenn Sie Qt4 selbst kompilieren, stellen Sie sicher, dass das configure Script die MySQL-Unterstützung einbaut durch hinzufügen des folgenden Parameters:
-plugin-sql-mysql
{{input|1=-plugin-sql-mysql}}
berücksichtigt. Wenn ''configure'' den notwendigen MySQL-Client Code nicht finden kann (z.B. meldet es "MySQL support cannot be enabled due to functionality tests"), dann stellen Sie sicher, dass das zugehörige Paket installiert ist (üblicherweise als ''[lib]mysql[client]-dev[el]'' bezeichnet). Es kann auch sein, je nach Installationsort der MySQL-Header, das zusätzliche Parameter für ''configure'' notwendig sind (z.B. ''-I /usr/include/mysql'' bei OpenSuse).
Wenn ''configure'' den notwendigen MySQL-Client Code nicht finden kann (z.B. meldet es "MySQL support cannot be enabled due to functionality tests"), dann stellen Sie sicher, dass das zugehörige Paket installiert ist (üblicherweise als ''[lib]mysql[client]-dev[el]'' bezeichnet). Es kann auch sein, je nach Installationsort der MySQL-Header, das zusätzliche Parameter für ''configure'' notwendig sind (z.B. ''-I /usr/include/mysql'' bei ''OpenSuse'').


Wenn Sie Qt4 direkt von Nokia bekommen, z.B. durch einen Download von
Wenn Sie Qt4 direkt von Nokia bekommen, z.B. durch einen Download von <code>qt-sdk-linux-x86_64-opensource-2009.05.bin</code> werden Sie (durch den Befehl "akonadictl start") einen Fehler bei Test 1 bekommen:
qt-sdk-linux-x86_64-opensource-2009.05.bin


werden Sie (mit dem Befehl "akonadictl start") eine Fehlermeldung bei Test 1 bekommen:
<!--T:99-->
 
{{output|1=Database driver not found.
:::{|style="width:98%; border:2px dotted #BCBCBC;"
Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server configuration.
Database driver not found.
The following drivers are installed: QSQLITE.
|-
Make sure the required driver is installed.}}
Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server configuration.
|-
The following drivers are installed: QSQLITE.
|-
Make sure the required driver is installed.
|}


Den Treiber den Sie benötigen ist ''libqsqlmysql.so''
Den Treiber den Sie benötigen ist ''libqsqlmysql.so''


Leider ist der Treiber nicht Teil der Distribution (bis Januar 2010). Sie müssen den Quellcode kompilieren. Laden Sie ihn herunter:
Leider ist der Treiber nicht Teil der Distribution (bis Januar 2010). Sie müssen den Quellcode kompilieren. Laden Sie die folgende Datei herunter:
  qt-everywhere-opensource-src-4.6.0.tar.bz
{{input|1=qt-everywhere-opensource-src-4.6.0.tar.bz}}


''configure'' und ''make'' wie oben beschrieben. Aber das ''make install'' kopiert nicht den Treiber. Daher müssen Sie diesen selbst kopieren:
Dann ''configure'' und ''make'' wie oben beschrieben. Aber das ''make install'' kopiert nicht den Treiber. Daher müssen Sie diesen selbst kopieren:
{|style="width:98%; border:2px dotted #BCBCBC; background:#EEEEEE;"
{{input|1=cp <qt-src-dir>/qt-everywhere-opensource-src-4.6.0/plugins/sqldrivers/libqsqlmysql.so /usr/local/bin/sqldrivers/}}
|cp <qt-src-dir>/qt-everywhere-opensource-src-4.6.0/plugins/sqldrivers/libqsqlmysql.so /usr/local/bin/sqldrivers/
'''Aber''' die Revision '''4.6.1''', wie qt-sdk-linux-x86_64-opensource-2010.xx.bin hat den Treiber den Sie benötigen.
|}
'''Aber''' es kann möglich sein, gegen ''libqsqlmysql.so'' zu linken, wenn die ''libmysqlclient.so'' zu einer neueren Version geändert wurde.
'''Aber''' die Revision '''4.6.1''', wie ''qt-sdk-linux-x86_64-opensource-2010.xx.bin'' hat den Treiber den Sie benötigen.


=== Umgebungseinstellungen ===
=== Umgebungseinstellungen ===
Line 216: Line 219:
Der '''Akonadi''' Server sucht nach '''Akonadi''' Agenten und Ressourcen in den Pfaden, die in der '''XDG_DATA_DIRS''' Umgebungsvariablen gesetzt sind. Wenn sich '''Akonadi''' beschwert, dass es Agenten und Ressourcen nicht finden kann, überprüfen Sie, ob diese Variable korrekt gesetzt ist. Beachten Sie außerdem, dass selbst wenn diese in der aktuellen Konsolensitzung gesetzt ist, die Variable vielleicht nicht gesetzt ist, wenn der Server gestartet wird. Ein Start des Servers in der aktuellen Konsolensitzung schließt diese Möglichkeit aus.
Der '''Akonadi''' Server sucht nach '''Akonadi''' Agenten und Ressourcen in den Pfaden, die in der '''XDG_DATA_DIRS''' Umgebungsvariablen gesetzt sind. Wenn sich '''Akonadi''' beschwert, dass es Agenten und Ressourcen nicht finden kann, überprüfen Sie, ob diese Variable korrekt gesetzt ist. Beachten Sie außerdem, dass selbst wenn diese in der aktuellen Konsolensitzung gesetzt ist, die Variable vielleicht nicht gesetzt ist, wenn der Server gestartet wird. Ein Start des Servers in der aktuellen Konsolensitzung schließt diese Möglichkeit aus.


=== mysqld: unknown variable 'innodb_file_per_table=1' ===
=== mysqld: unknown variable 'innodb_file_per_table=1' === <!--T:69-->


Wenn das MySQL-Server-Protokoll die folgende Fehlermeldung enthält:
Wenn das MySQL-Server-Protokoll die folgende Fehlermeldung enthält, dann wurde Ihr MySQL-Server ohne Unterstützung der InnoDB gebaut welche für '''Akonadi''' erforderlich ist oder '''InnoDB''' muss über ihre ''mysql.conf'' Datei geladen werden:
:::{|style="width:98%; border:2px dotted #BCBCBC;"
{{output|1=[ERROR] /usr/libexec/mysqld: unknown variable 'innodb_file_per_table=1'
|[ERROR] /usr/libexec/mysqld: unknown variable 'innodb_file_per_table=1'
[ERROR] Aborting}}
|-
|[ERROR] Aborting
|}


Versuchen Sie:


dann wurde Ihr MySQL-Server ohne InnoDB Unterstützung erstellt welche für '''Akonadi''' erforderlich ist oder '''InnoDB''' muss in Ihrer ''mysql.conf'' Datei geladen werden. Versuchen Sie:
<!--T:100-->
{{input|1=#sql_mode=strict_trans_tables <- Add underneath this line
#plugins
plugin_dir=usr/lib/mysql/plugin < - This may be a different path
plugin-load=ha_innodb.so}}
=== Tabelle 'mysql. servers' existiert nicht ===


:::{|style="width:98%; border:2px dotted #BCBCBC;"
Wenn das MySQL-Server-Protokoll folgende Fehlermeldung enthält, dann, höchstwahrscheinlich, haben Sie ihre MySQL Konfigurationsdatei nicht am richtigen Ort:
|  #sql_mode=strict_trans_tables <- Add underneath this line
|-
|  #plugins
|-
|  plugin_dir=usr/lib/mysql/plugin < - This may be a different path
|-
|  plugin-load=ha_innodb.so
|}


===Table 'mysql. servers' doesn't exist===
<!--T:102-->
{{output|1=[ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
[ERROR] Cannot open mysql.db
[ERROR] Cannot open mysql.user
[ERROR] Cannot open mysql.event}}


Wenn das MySQL-Server-Protokoll folgende Fehlermeldung enthält:
Kopieren Sie es von ''/usr/share/config/akonadi/mysql-global.conf'' nach ''~/.config/akonadi/mysql-local.conf''. (Für ''Debian'' und ''openSUSE'' Anwender ist diese Datei in ''/etc/akonadi/mysql-global.conf'' abgelegt). Dann öffnen Sie diese und entfernen das Kommentarzeichen in der Zeile '''sql_mode=strict_trans_tables'''. Danach können Sie die folgenden Fehlermeldungen bekommen:


:::{|style="width:98%; border:2px dotted #BCBCBC;"
<!--T:104-->
|[ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
{{output|1=[ERROR] Plugin 'InnoDB' init function returned error.
|-
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
|[ERROR] Cannot open mysql.db
[ERROR] Unknown/unsupported table type: innodb
|-
[ERROR] Aborting}}
|[ERROR] Cannot open mysql.user
|-
|[ERROR] Cannot open mysql.event
|}


then, most probably, you don't have your MySQL configuration file in place. Copy it from ''/usr/share/config/akonadi/mysql-global.conf'' into ''~/.config/akonadi/mysql-local.conf''. (For ''debian'' and ''openSuSE'' users the file ist located in ''/etc/akonadi/mysql-global.conf''). Then open it and uncomment the line '''sql_mode=strict_trans_tables'''. If, after that, you get the following errors:
Wenn ja, dann suchen Sie in der gleichen Datei die Zeile die so beginnt wie die Zeile oben (der Sie das Kommentarzeichen entfernt haben), aber zusätzliche durch Komma separierte Parameter hat (so etwas wie '''sql_mode=strict_trans_tables,strict_all_tables, ...etc'''). Setzen Sie ein Kommentarzeichen vor die Kürzere ''sql_mode=...'' und entfernen Sie das Kommentarzeichen vor der Längeren.


:::{|style="width:98%; border:2px dotted #BCBCBC;"
Bei ''openSUSE 11.2'' wird die Ausführung des folgenden Befehls dieses Problem beheben:
| [ERROR] Plugin 'InnoDB' init function returned error.
|-
| [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
|-
| [ERROR] Unknown/unsupported table type: innodb
|-
| [ERROR] Aborting
|}


then in the same file find the line that starts just like the one above (which you have uncommented), but has additional parameters, separated by commas (something like '''sql_mode=strict_trans_tables,strict_all_tables, ...etc'''). Comment the shorter ''sql_mode=...'' line and uncomment the longer one.
      <!--T:106-->
{{input|1=mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/}}


Bei ''openSUSE 11.2'' wird die Ausführung des Befehls
Für ''Archlinux'':


      mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/
{{input|1=mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/ --basedir=/usr}}
 
das Problem beheben.


=== Kubuntu 10.4 Upgrade ===
=== Kubuntu 10.4 Upgrade ===
Line 277: Line 266:


Installieren Sie fehlende Voraussetzungen. Entfernen Sie den vorherigen ''akonadi'' Cache. Starten Sie den ''akonadi'' Dienst. Installieren Sie die Datenbank. Aktualisieren Sie die Datenbank. Stoppen und starten Sie den ''akonadi'' Dienst.
Installieren Sie fehlende Voraussetzungen. Entfernen Sie den vorherigen ''akonadi'' Cache. Starten Sie den ''akonadi'' Dienst. Installieren Sie die Datenbank. Aktualisieren Sie die Datenbank. Stoppen und starten Sie den ''akonadi'' Dienst.
:::{|style="width:98%; border:2px dotted #BCBCBC; background:#EEEEEE;"
{{input|1=sudo apt-get install virtuoso-server mysql-server-5.1
|sudo apt-get install virtuoso-server mysql-server-5.1
rm -r $HOME/.local/share/akonadi
|-
akonadictl start
|rm -r $HOME/.local/share/akonadi
mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/
|-
mysql_upgrade --socket=$HOME/.local/share/akonadi/db_misc/mysql.socket
|akonadictl start
akonadictl stop
|-
akonadictl start}}
|mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/
|-
|mysql_upgrade --socket=$HOME/.local/share/akonadi/db_misc/mysql.socket
|-
|akonadictl stop
|-
|akonadictl start
|}


Der obige Befehl mysql_install_db wird so etwas wie folgendes anzeigen, dass man aber getrost ignorieren kann:
Der obige Befehl mysql_install_db wird so etwas wie folgendes anzeigen, dass man aber getrost ignorieren kann:


:::{|style="width:98%; border:2px dotted #BCBCBC;"
<!--T:108-->
|Installing MySQL system tables...
{{output|1=Installing MySQL system tables...
|-
100501 18:04:30 [Warning] Can't create test file  
|100501 18:04:30 [Warning] Can't create test file  
/home/[userid]/.local/share/akonadi/db_data/[hostname].lower-test}}
|-
|/home/[userid]/.local/share/akonadi/db_data/[hostname].lower-test
|}


Referenz:
Referenz:
Line 308: Line 286:
=== KAddressBook Upgrade ===
=== KAddressBook Upgrade ===


Zusätzlich zu den Lösungsvorschlägen zu ''Kubuntu 10.4'', können Probleme ein ''Vcard Verzeichnis'' hinzuzufügen folgendes erfordern
Zusätzlich zu den Lösungsvorschlägen zu ''Kubuntu 10.04'', können Probleme ein ''Vcard Verzeichnis'' hinzuzufügen folgenden Befehl erfordern während '''Akonadi''' nicht läuft:
:::{|style="width:98%; border:2px dotted #BCBCBC; background:#EEEEEE;"
{{input|1=rm -rf $HOME/.config/akonadi}}
|rm -rf $HOME/.config/akonadi
|}
während '''Akonadi''' nicht läuft.


=== Zeichensatz latin1 kann nicht initialisiert werden ===
=== Zeichensatz latin1 kann nicht initialisiert werden ===


Wenn Sie die folgende Fehlermeldung beim Starten von '''Akonadi''' bekommen:
Wenn Sie die folgende Fehlermeldung beim Starten von '''Akonadi''' bekommen, dann verwenden Sie wahrscheinlich einen MySQL Server mit einer Version > 5.1.42:


:::{|style="width:98%; border:2px dotted #BCBCBC;"
<!--T:84-->
|Character set 'latin1' is not a compiled character set and is not specified in
{{output|1=Character set 'latin1' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file
Nepomuk QueryServer interface not available!
Connecting to deprecated signal
QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
DataStore::unhideAllPimItems()
Character set 'latin1' is not a compiled character set and is not specified in
the '/usr/share/mysql/charsets/Index.xml' file
the '/usr/share/mysql/charsets/Index.xml' file
|-
Database error: Cannot open database.
|Nepomuk QueryServer interface not available!
Last driver error: "QMYSQL: Unable to connect"
|-
Last database error: "Can't initialize character set latin1 (path:
|Connecting to deprecated signal
|-
|QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
|-
|DataStore::unhideAllPimItems()
|-
|Character set 'latin1' is not a compiled character set and is not specified in
the '/usr/share/mysql/charsets/Index.xml' file
|-
|Database error: Cannot open database.
|-
|Last driver error: "QMYSQL: Unable to connect"
|-
|Last database error: "Can't initialize character set latin1 (path:
/usr/share/mysql/charsets/)"
|-
|Database error: Cannot open database.
|-
|Last driver error: "QMYSQL: Unable to connect"
|-
|Last database error: "Can't initialize character set latin1 (path:
/usr/share/mysql/charsets/)"
/usr/share/mysql/charsets/)"
|}
Database error: Cannot open database.
Last driver error: "QMYSQL: Unable to connect"
Last database error: "Can't initialize character set latin1 (path:
/usr/share/mysql/charsets/)"}}


dann verwenden Sie wahrscheinlich einen MySQL Server mit einer Version > 5.1.42.
Es gibt einen bekannten Regressionsfehler in MySQL 5.1.43 und 5.1.44, der den MySQL Start verhindert.  
Es gibt einen bekannten Regressionsfehler in MySQL 5.1.43 und 5.1.44, der den MySQL Start verhindert.  


Line 354: Line 315:




=== Restarting after a previous error ===
=== Neustart nach einem vorherigen Fehler ===


If you had problems starting '''Akonadi''' and fixed those (such as a missing package or the '''Apparmor''' problem) make sure that the '''Akonadi''' server is completely shut down before trying to start it again, by calling 
Wenn Sie Probleme hatten '''Akonadi''' zum laufen zu bekommen und diese behoben haben (wie ein fehlendes Paket oder das Problem mit '''Apparmor''') stellen Sie sicher, dass der '''Akonadi''' Server komplett heruntergefahren ist, bevor Sie versuchen ihn neu zu starten, durch Eingabe auf der Kommandozeile:
      akonadictl stop  
{{input|1=akonadictl stop}}
on the command line. You can confirm that it was indeed shut down completely by running
Sie können sicherstellen, dass der Server wirklich komplett heruntergefahren ist, durch Eingabe von:
      akonadictl status
{{input|1=akonadictl status}}


Under some circumstances the '''Akonadi''' server can be stuck in a partially running state after a failure which will prevent the next attempt to start it to fail as well. Please file a bug report if you run into this problem including the self-test report of the initial problem.
Unter bestimmten Umständen kann der '''Akonadi''' Server nach einem Fehler in einem teilweise laufenden Zustand stecken bleiben, welcher dann den nächsten Startversuch scheitern lässt. Bitte erstellen Sie einen Fehlerbericht, wenn Sie auf dieses Problem stoßen, einschließlich des Selbsttest-Reports des ursprünglichen Problems.


=== The so-called "Gentoo-Assert" ===
=== Die sogenannte "Gentoo-Behauptung" ===


That's an especially nasty problem that so far only affects users of source-based distributions, most prominently ''Gentoo''. It is named after MySQL assertions like the following example and is most likely caused by a MySQL protocol mismatch between the MySQL server and the client library or the Qt MySQL driver.
Das ist ein besonders unangenehmes Problem, dass bisher nur Anwender von Source-basierten Distributionen betroffen hat, hier allen voran ''Gentoo''. Es ist nach MySQL Behauptungen benannt, so wie das folgenden Beispiel und wird wahrscheinlich durch ein Missverhältnis im MySQL Protokoll zwischen MySQL Server und der Client-Bibliothek oder dem Qt MySQL-Treiber verursacht.


:::{|style="width:98%; border:2px dotted #BCBCBC;"
<!--T:92-->
|akonadiserver: libmysql.c:4301: setup_one_fetch_function: Assertion
{{output|1=akonadiserver: libmysql.c:4301: setup_one_fetch_function: Assertion
|-
`param->buffer_length != 0' failed.}}
|`param->buffer_length != 0' failed.
|}


It is extremely hard to diagnose as the assertion mentioned above are only triggered sometimes. Instead you'll get a wide range of weird symptoms:
Es ist extrem schwer zu diagnostizieren, da die oben erwähnte Behauptung nur manchmal auftritt. Stattdessen erhalten Sie eine breite Palette von seltsamen Symptomen:
* ASAP protocol logs show successful creation of objects which are supposedly no longer available when the next commands accesses them again.
* ASAP Protokolle zeigen eine erfolgreiche Erzeugung von Objekten, die angeblich nicht mehr verfügbar sind, wenn der nächste Befehl wieder auf diese zugreift.
* SQL protocol logs show INSERT or UPDATE commands with values that mismatch the corresponding column types and nevertheless succeed.
* SQL Protokolle zeigen INSERT- oder UPDATE-Befehle mit Werten die nicht mit den entsprechenden Spaltentypen übereinstimmen und trotzdem erfolgreich durchgeführt wurden.
* SQL protocol logs showing large apparently random record ids which are nevertheless considered valid.
* SQL Protokolle zeigen große scheinbar zufällige Datensatz-IDs, die dennoch als gültig angesehen werden.


References:
Referenzen:
* http://forum.kde.org/viewtopic.php?f=20&t=61738
* http://forum.kde.org/viewtopic.php?f=20&t=61738
* http://bugs.gentoo.org/show_bug.cgi?id=267513
* http://bugs.gentoo.org/show_bug.cgi?id=267513
* https://bugs.kde.org/202623 (contains a possible solution)
* https://bugs.kde.org/202623 (enthält eine mögliche Lösung)
* http://bbs.archlinux.org/viewtopic.php?id=78358
* http://bbs.archlinux.org/viewtopic.php?id=78358


Possible solution: Rebuild the Qt MySQL driver after upgrading MySQL (which most likely caused this problem in the first place).
Mögliche Lösung: Erstellen Sie den Qt MySQL-Treiber neu nach dem Upgrade von MySQL (der wahrscheinlich dieses Problem in erster Linie verursacht hat).
 
<span class="mw-translate-fuzzy">
[[Category:System/de]]
</span>
 
Be warned that you should not follow this advice, without backing up your data.
 
After the introduction  of KMail 2 in kdepim, since KDE SC 4.6.x, in order to search in emails and to get addressbooks, it is necessary to set <menuchoice>System Settings -> Desktop Search -> Enable Nepomuk Sematic Desktop </menuchoice> enabled, and check the box <menuchoice>Enable Email Indexer</menuchoice>.
 
If virtuoso-t occupies almost 100% of CPU cores and the system is nearly frozen, it may be a good idea to reset all.
 
To do the big reset you need :
{{Warning|1=This will initialize all your Kontact and KDE PIM data customization, but not remove emails data, akonadi resources (like email accounts, address books ), KMail Identities, filters and expired mail folders.  However, be warned that you will lost much customization information, including ratings and other metadata.  Also there is some risk here, because this reconstruction of data has bugs that may make you lose data.}}
 
{{Input|1=akonadictl stop
rm -rf  ~/.local/share/akonadi/db_data/*
akonadictl start
# we should also clean KDE temporary folders before start KMail
rm -rf /var/tmp/kdecache-$USER /tmp/ksocket-$USER /tmp/kde-$USER
}}
 
You need to check <menuchoice> Settings -> Configure KMail -> Identities</menuchoice> to see whether the Sent folder is correct.  Some of mine were not.


[[Category:System_(de)]]
Check <menuchoice> Settings -> Configure KMail -> Accounts </menuchoice> settings and check whether the incoming folder is correct.  Some of mine were not.
 
Check all filters, before pulling some email.  I advise disabling all filters because there may be many folders incorrect or missing.
 
Also important is that if you have an "expired folder", check all folders to see if the receiving folder is correctly set.  If you have <menuchoice>Delete permanently</menuchoice> checked you may lose important emails because expiring worked with the wrong folder.
 
In each <menuchoice> folder's context menu -> Folder Properties </menuchoice> check Identities, as the associated identity may also be changed or lost in any folder. 
 
After this we are ready to [[Special:myLanguage/Akonadi_4.4/Troubleshooting#You experience long delays when sending mail|clean up Nepomuk data]] before enabling Nepomuk Semantic.
 
After all is cleaned , if you aren't able to read any emails, you should logout and login KDE session again to reinitialize all processes .
 
<span class="mw-translate-fuzzy">
Beachten Sie, dass die obigen Befehle '''Nepomuk''' '''nicht''' permanent aktivieren werden. Wenn es nicht aktiviert ist, müssen Sie dies in den '''Systemeinstellungen''' durchführen.
</span>

Latest revision as of 17:45, 3 March 2019

Einführung

Diese Seite hilft vor allem bei der Fehlersuche die Akonadi betrifft, da es unvermeidliche Störungen in der frühen Phase der Migration gibt. Für viele Menschen wird es die ersten Anzeichen von Akonadi Aktivitäten in KDE SC 4.4 geben und viele werden davon verwirrt werden. Für eine kurze Beschreibung des Zwecks von Akonadi sehen Sie sich diesen Glossareintrag an. Außerdem finden Sie nützliche Links zu weiteren Informationen. Nachdem die unvermeidlichen Anlaufschwierigkeiten vorbei sind, wird Akonadi ein Kraftwerk sein, das von vielen Anwendungen genutzt werden kann.

Die Struktur verstehen

Sie können natürlich auch einfach Kontact verwenden, um ihr Adressbuch zu verwalten, aber wenn Sie ein Backup-System verwenden, möchten Sie wissen, wo ihre Daten sind und wie diese gehandhabt werden. Die Seite Akonadi und Adressbuch hilft hier weiter.

Tipps zur Problemlösung

  • Bei der Meldung von Problemen mit dem Akonadi Server, fügen Sie immer den umfassenden Selbsttest-Bericht bei. Dieser Bericht kann von dem Selbstest-Dialog entnommen werden, der immer dann angezeigt wird, wenn der Akonadi Server nicht erfolgreich gestartet werden konnte. Sie können den Selbsttest in dem Kcmmodul finden, dass über folgenden Befehl erreichbar ist:
kcmshell4 kcm_akonadi
  • Das Starten des Akonadi Servers über die Kommandozeile kann weitere hilfreiche Informationen geben. Dies können Sie durch Ausführen von folgendem Befehl erreichen:
akonadictl start

Analog kann mit folgendem Befehl der Akonadi-Server wieder gestoppt werden:

akonadictl stop

Dieser Befehl gibt weitere hilfreiche Informationen:

akonadictl status

Allgemeine Probleme

Kontact startet nicht - und gibt auch keine weiteren Informationen

Wenn Kontact nicht startet und Sie auch keine Fehlermeldungen sehen, überprüfen Sie, ob Akonadi läuft. Akonadi sollte auf Anforderung starten. Wenn dies bei ihnen nicht der Fall ist, müssen Sie es starten bevor Kontact gestartet wird, falls Sie irgendwelche migrierten Ressourcen haben (wahrscheinlich KAdressBook). Verwenden Sie das Akonadi-Miniprogramm (starten Sie dieses durch die Eingabe akonadi in KRunner) oder geben Sie die Befehle in die Konsole ein.

Kontact staret nicht - Version II

Kontact ist dafür bekannt, das es nach einem Update Probleme bereitet. Wenn dies geschieht, starten Sie KMail, KOrganizer oder eine der sonstigen Anwendungen aus KRunner (oder die Konsole). Die Chancen sind hoch, dass diese als eigenständige Anwendungen arbeiten, während Sie weiter nachforschen können, was schief gegangen ist. Dies betrifft hauptsächlich die Version 4.4.0.

Verzeichnis nicht gefunden: "/Local"

Einige Leute haben diesen Fehler gemeldet, wenn Kontact nicht startet. In frühen Version von 4.4 scheint es einen Bug in der Migration zu geben, der KMail anweist nach lokalen E-Mails in dem Verzeichnis ~/.local/share/Local zu suchen. Einem Verzeichnis das noch nicht eingerichtet ist. Die Lösung dafür ist, es nicht zu versuchen es zu beheben, sondern, wenn KMail/Kontact geschlossen sind, die Akonadi-Einrichtung zu öffnen:

  • über KRunner, Alt-F2 oder
  • akonadiconsole in der Konsole

Dann entfernen Sie die Ressource die für die lokale Mail zuständig ist. Jetzt sollten Sie feststellen, dass Sie Kontact oder KMail starten können und eine neue Ressource erstellt wird die auf ~/.local/share/local-mail zeigt

Es gibt andere neue Verzeichnisse unter ~/.local/share/

Ja. Wenn ihr Adressbuch korrekt migriert wurde, ist eine neue Ressource in ~/.local/share/contacts/ erstellt worden.

Was sind /usr/bin/akonadi_maildir_resource und /usr/bin/akonadi_maildispatcher_agent?

Die akonadi_maildir_resource wird automatisch durch den akonadi_maildispatcher_agent erstellt. Letztere wird immer zusammen mit dem Akonadi Server gestartet, da sie grundlegende Funktionalitäten zur Verfügung stellt (z.B. Senden von Nachrichten) die von allen Mail-Anwendungen verwendet werden die auf Akonadi basieren (werden). Daher ist es in Ordnung das diese beiden laufen, als Anwender können Sie sie einfach ignorieren. Die automatisch generierte akonadi_maildir_resource wird immer auf ~/.local/share/local-mail/ verweisen, welches ihr Lokaler Ordner Konto ist, wo Ihre lokalen Ordner und E-Mails gespeichert werden.

Zu diesem Zeitpunkt, in KDE SC 4.4, ist E-Mail noch nicht migriert.

Nepomuk Indexing Agents wurden deaktiviert

Kontact arbeitet jetzt, aber Sie sehen immer diesen Hinweis:

Der häufigste Grund für diesen Hinweis ist, dass Nepomuk in den Systemeinstellungen deaktiviert ist. Bitte versuchen Sie es in den Systemeinstellungen unter Erweitert -> Desktopsuche zu aktivieren in dem Sie "Nepomuk-Semantik-Dienste aktivieren" auswählen und auf Anwenden klicken.

Wenn dies nicht hilft (oder wenn die Option bereits aktiviert war, als die Fehlermeldung kam) und wenn Sie zuvor Vorabversionen von KDE SC 4.4 verwendet haben, können Sie durch eine Änderung des Datenbank-Layout betroffen sein (aufgrund einer Aktualisierung der Virtuoso Datenbank-Server von Version 5 auf Version 6; Produktions-Releases von KDE 4.4 SC werden mit Virtuoso Version 6 ausgeliefert). Die folgenden Befehle sollten es wieder zum laufen bekommen:

qdbus org.kde.NepomukServer /nepomukserver org.kde.NepomukServer.quit
rm -r ~/.kde/share/apps/nepomuk
rm -r ~/.kde4/share/apps/nepomuk
nepomukserver

Beachten Sie, dass die obigen Befehle Nepomuk nicht dauerhaft aktivieren werden (falls es noch nicht aktiviert war); dafür müssen Sie die Systemeinstellungen verwenden.

Ein laufendes Nepomuk ist notwendig, um ein funktionierendes Akonadi, und damit ein funktionierendes Kontact zu haben. Sie können jedoch den Strigi Datei-Indexer deaktivieren, das dieser für Kontact nicht benötigt wird. Strigi Datei-Indizierung ist nur für die Desktopsuche, die für Kontact nicht notwendig ist. Stellen Sie nur sicher das für Kontact Nepomuk selbst ordnungsgemäß läuft.

In Kontact wird Nepomuk für viele verschiedene Dinge verwendet, angefangen von der Anzeige der anstehenden Geburtstage, über den Umgang mit Frei / Gebucht-Listen bis zur Anzeige des Fotos eines Kontakts im Nachrichten-Betrachter. Wenn Nepomuk nicht ausgeführt wird, werden mehrere verschiedene Dinge in Kontact aufhören zu arbeiten. Der Hinweis ist dazu da Sie vor der eingeschränkten Funktionalität zu warnen. Aktivieren von Nepomuk, wie oben beschrieben, behebt das Problem.

Sie können überprüfen ob Nepomuk korrekt ausgeführt wird durch die Eingabe von:

akonadictl status

Ich möchte mein aktuelles Adressbuch und Organizer verwenden - Kann ich das?

Ja. Wenn Sie die Akonadi-Einrichtung verwenden, um eine Ressource hinzuzufügen, können Sie diese als Standard-Adressbuch festlegen - diese auf std.vcf zu verweisen sollte funktionieren. Die Migration zerstört nicht ihr altes Adressbuch. Sie können es weiterverwenden, jedoch verlieren Sie dann die Vorteile, die ihnen Akonadi geben kann. Alternativ können Sie sowohl ein Akonadi Adressbuch als auch ihr ursprüngliches, für eine Zeit, verwenden, wenn Sie sich so sicherer fühlen.

Ich kann keine Einzelheiten in meinem Adressbuch sehen

Im Moment ist die Ursache dafür bisher nicht identifiziert, aber die Lösung ist einfach. Schließen Sie Kontact und starten Sie KAddressBook als Einzelanwendung. Nachdem Sie es wieder geschlossen haben können Sie es innerhalb von Kontact verwenden. Es scheint so, das etwas nicht ausgelöst wird, wenn Kontact startet und ich erwarte, dass die bald gefunden und behoben wird. Dies scheint vor allem bei der Version 4.4.0 vor zukommen.

Meine Kontakte werden nicht angezeigt, wenn ich in KMail auf die Schaltfläche Auswählen klicke

Überprüfen Sie Systemeinstellungen -> Erweitert -> KDE-Ressourcen. Stellen Sie sicher, dass die von Akonadi kontrollierten Adressbücher aufgeführt sind - fügen Sie sie gegebenenfalls hinzu. Gleichzeitig ist es eine gute Idee ihr wichtigstes Akonadi Adressbuch, in der Regel Persönliche Kontakte genannt, zum Standard zu machen. Weitere Einzelheiten dazu können hier nachgelesen werden.

Wie bekomme ich mein Groupware Adressbuch zurück?

Zwei Lösungen: Verwendung des alten oder des neuen Frameworks

Altes Framework: In der Akonadi-Einrichtung fügen Sie "KDE-Adressbuch (herkömmlich)" hinzu. Das KDE-Adressbuch heißt, dass Sie alte KDE-Ressourcen für Akonadi verwenden können. In der Konfiguration des "KDE-Adressbuch (herkömmlich)" verweisen Sie zu einem "IMAP-Adressbuch via KMail" und in KMail sollten dadurch die Groupware-Optionen aktiviert werden. Dies sollte für Kolab, eGroupware und ähnliche Adressbücher funktionieren - Sie müssen die Optionen überprüfen um sicherzustellen, dass der richtige Typ ausgewählt ist.

Neues Framework (nur mit Kolab getestet): In der Akonadi-Einrichtung fügen Sie eine "IMAP E-Mail Server" Ressource hinzu und richten Sie ihren Mail-Server-Namen, Benutzername und Kennwort ein. Dann klicken Sie auf Automatisch erkennen. Führen Sie folgenden Befehl aus um es zu sehen:

kcmshell4 kcm_akonadi

Dann fügen Sie eine Kolab Ressource hinzu. Der nächste Schritt ist zu warten, bis die IMAP Ressource synchronisiert ist, dies kann recht lange dauern. Der Status wird in der Akonadi Einrichtung angezeigt. Wenn nichts passiert, versuchen Sie einen Neustart des akonadiserver. Nach einiger Zeit sollte das Kolab Adressbuch in KAdressBook angezeigt werden.

Sie bemerken lange Verzögerungen beim Versenden von E-Mails

Dies wird durch das Einfrieren von KMail begleitet, bis die E-Mail tatsächlich versendet ist.

Es wurde ein Fehler gefunden in der Art wie Nepomuk die Adressen überprüft, dies kann zu großen Verzögerungen führen. Dies ist für KDE SC 4.4.1 behoben. Wenn Sie nicht auf diese Version aktualisieren können, gibt es folgende Problemlösung:

Schließen Sie Kontact oder KMail und KAdressbook, wenn Sie diese als Einzelanwendungen verwenden. Deaktivieren Sie Strigi in den Systemeinstellungen. Deaktivieren Sie Nepomuk und löschen Sie die Datenbank. Führen Sie einen Neustart des nepomuksever durch. Die dafür notwendigen Befehle sind (als Anwender):

qdbus org.kde.NepomukServer /nepomukserver org.kde.NepomukServer.quit
rm -r ~/.kde/share/apps/nepomuk
rm -r ~/.kde4/share/apps/nepomuk
nepomukserver

Die wird natürlich die gesamte Datenbank löschen, einschließlich aller Schlagwörter die Sie hinzugefügt haben. In der Theorie weiß ich, dass ein mehr selektiver Löschvorgang in der Datenbank möglich ist. Falls dies für Sie wichtig ist, können Sie eine Anleitung dazu auf dieser Seite finden.

IMAP Resource behauptet immer offline zu sein

Auch wenn das System über eine Internetverbindung verfügt, weigert sich die IMAP-Ressource sich online zu schalten.

Obwohl das System eine Internet-Verbindung hat, wird die IMAP-Ressource nicht im Status Online angezeigt.

Dieser Fehler wird durch eine falsch konfigurierte NetworkManager Installation auf Ihrem System verursacht. Prüfen Sie die Ausgabe von

qdbus --system org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.state

Wenn diese '4' ist (Nicht verbunden), aber Sie auf das Internet zugreifen können, dann ist Ihr NetworkManager in der Tat falsch konfiguriert. Wenn diese '3' ist (Verbunden) muss das Problem woanders sein. Unter Debian kann dieses Verhalten durch Schnittstellen verursacht werden, die in /etc/network/interfaces definiert sind und nicht vom NetworkManager kontrolliert werden. Um dies zu beheben, entfernen Sie einfach die Einträge aus /etc/network/interfaces und lassen Sie diese vom NetworkManager verwalten.

qdbus --system org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.state

You can get any of the following values:

  • 20 (formerly 4), disconnected. If you have access to the internet, your NetworkManager configuration must be wrong.
  • 70 (formerly 3), connected. The problem must be somewhere else.
    • It might be that one or more network interfaces are not controlled by NetworkManager. If that is your case, give the control of those interfaces to NetworkManager. It might be as simple as removing the entries for the interfaces from a text file (for example, /etc/network/interfaces). Check the help resources provided by your software distribution for more information.

Einzelheiten einiger Nachrichten können nicht (oder nur sehr verzögert) angezeigt werden

Wenn Sie einige Mails nicht öffnen können und eine Nachricht in der Form " bitte warten ... " auftaucht, kann es helfen, sich aus KDE ab- und wieder anzumelden, um alle Prozesse zurückzusetzen.

Einige technische Probleme

Nepomuk

Beginnend mit KDE 4.4 ist es erforderlich das Nepomuk läuft, damit Akonadi korrekt funktionieren kann. Akonadi überprüft dies beim Start und zeigt eine Fehlermeldung, falls dies nicht der Fall ist.

Nepomuk funktioniert nur mit dem Virtuoso Backend. Sie können mit dem oben beschriebenen Akonadi Selbsttest überprüfen, ob Nepomuk mit dem richtigen Backend läuft.

Obwohl es notwendig ist das Nepomuk läuft, können Sie dennoch die Strigi Datei-Indizierung deaktivieren. Diese ist in der Regel der ressourcen-intensivste Teil des Nepomuk Frameworks.

Apparmor

Einige Distributionen, die Apparmor verwenden, haben dies so eingerichtet, dass es die Ausführung des internen Datenbankservers von Akonadi verhindert. Dadurch kann es zu einer Reihe von unspezifischen Fehlermeldungen kommen, einschließlich der folgenden (aber nicht nur diese):

unknown error 255 when running akonadictl
"DB error: 'Could not open required defaults file: /home/$username/.local/share/akonadi/mysql.conf"

Sie können dieses Problem lösen in dem Sie den folgenden Befehl mit root-Rechten ausführen und dann apparmor neu laden:

aa-complain mysqld

Bei Kubuntu würde dies so aussehen:

sudo aa-complain mysqld
sudo /etc/init.d/apparmor reload

Beachten Sie, dass Sie vielleicht Apparmor verwenden, auch wenn es nicht in der Prozessliste angezeigt wird.

Beachten Sie auch, dass einige Distributionen eine zusätzliche mysqld Binärdatei mit dem Namen mysqld-akonadi mitliefern, welches AppArmor schon korrekt eingerichtet hat. Wenn das auf ihrem System der Fall ist und Sie trotzdem dieses Problem haben, gibt es zwei mögliche Gründe:

  • Akonadi verwendet immer noch mysqld anstatt mysqld-akonadi. Sie können dies in den Systemeinstellungen -> Erweitert -> Akonadi -> Server-Einstellungen ändern.
  • AppArmor ist auch nicht für mysqld-akonadi korrekt eingerichtet. Versuchen Sie den Befehl aa-complain wie oben erwähnt, mit mysqld-akonadi anstatt mysqld auszuführen.

---

Sie werden dieses Problem ebenfalls haben, wenn Sie ein verschlüsseltes Home-Verzeichnis unter Verwendung von encryptfs kombiniert mit AppArmor verwenden. Akonadi AppArmor berücksichtigt zurzeit kein verschlüsseltes Home-Verzeichnis (üblicherweise bei Ubuntu Jaunty Anwendern). Dazugehörende Fehlermeldungen:

  • dmesg zeigt:
ecryptfs_do_create: Failure to create dentry in lower fs; rc = [-13]
ecryptfs_create: Failed to create file inlower filesystem
  • Akonadi zeigt den folgenden Fehler:
Akonadi server process not registered at D-Bus

Die Problemlösung ist, die Datei "/etc/apparmor.d/usr.sbin.mysqld-akonadi" zu editieren. Unterhalb der Zeile:

@{HOME}/.local/share/akonadi/** rwk,

Fügen Sie die folgende neue Zeile hinzu:

@{HOME}/.Private/** rwk,

Führen Sie einen Neustart von apparmor und einen Neustart von akonadi durch.

Fehlende Voraussetzungen

Um Akonadi zu verwenden müssen Sie die folgenden Pakete installiert haben (Namen können sich je nach Distribution unterscheiden):

  • Den MySQL-Server (bei openSUSE mysql genannt)
  • Das Qt4 MySQL-Plug-In (bei openSUSE libqt4-sql-mysql genannt)

Wenn Sie Qt4 selbst kompilieren, stellen Sie sicher, dass das configure Script die MySQL-Unterstützung einbaut durch hinzufügen des folgenden Parameters:

-plugin-sql-mysql

Wenn configure den notwendigen MySQL-Client Code nicht finden kann (z.B. meldet es "MySQL support cannot be enabled due to functionality tests"), dann stellen Sie sicher, dass das zugehörige Paket installiert ist (üblicherweise als [lib]mysql[client]-dev[el] bezeichnet). Es kann auch sein, je nach Installationsort der MySQL-Header, das zusätzliche Parameter für configure notwendig sind (z.B. -I /usr/include/mysql bei OpenSuse).

Wenn Sie Qt4 direkt von Nokia bekommen, z.B. durch einen Download von qt-sdk-linux-x86_64-opensource-2009.05.bin werden Sie (durch den Befehl "akonadictl start") einen Fehler bei Test 1 bekommen:

Database driver not found.
Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server configuration.
The following drivers are installed: QSQLITE.
Make sure the required driver is installed.

Den Treiber den Sie benötigen ist libqsqlmysql.so

Leider ist der Treiber nicht Teil der Distribution (bis Januar 2010). Sie müssen den Quellcode kompilieren. Laden Sie die folgende Datei herunter:

qt-everywhere-opensource-src-4.6.0.tar.bz

Dann configure und make wie oben beschrieben. Aber das make install kopiert nicht den Treiber. Daher müssen Sie diesen selbst kopieren:

cp <qt-src-dir>/qt-everywhere-opensource-src-4.6.0/plugins/sqldrivers/libqsqlmysql.so /usr/local/bin/sqldrivers/

Aber die Revision 4.6.1, wie qt-sdk-linux-x86_64-opensource-2010.xx.bin hat den Treiber den Sie benötigen. Aber es kann möglich sein, gegen libqsqlmysql.so zu linken, wenn die libmysqlclient.so zu einer neueren Version geändert wurde.

Umgebungseinstellungen

Der Akonadi Server sucht nach Akonadi Agenten und Ressourcen in den Pfaden, die in der XDG_DATA_DIRS Umgebungsvariablen gesetzt sind. Wenn sich Akonadi beschwert, dass es Agenten und Ressourcen nicht finden kann, überprüfen Sie, ob diese Variable korrekt gesetzt ist. Beachten Sie außerdem, dass selbst wenn diese in der aktuellen Konsolensitzung gesetzt ist, die Variable vielleicht nicht gesetzt ist, wenn der Server gestartet wird. Ein Start des Servers in der aktuellen Konsolensitzung schließt diese Möglichkeit aus.

mysqld: unknown variable 'innodb_file_per_table=1'

Wenn das MySQL-Server-Protokoll die folgende Fehlermeldung enthält, dann wurde Ihr MySQL-Server ohne Unterstützung der InnoDB gebaut welche für Akonadi erforderlich ist oder InnoDB muss über ihre mysql.conf Datei geladen werden:

[ERROR] /usr/libexec/mysqld: unknown variable 'innodb_file_per_table=1'
[ERROR] Aborting

Versuchen Sie:

#sql_mode=strict_trans_tables <- Add underneath this line
#plugins
plugin_dir=usr/lib/mysql/plugin < - This may be a different path
plugin-load=ha_innodb.so

Tabelle 'mysql. servers' existiert nicht

Wenn das MySQL-Server-Protokoll folgende Fehlermeldung enthält, dann, höchstwahrscheinlich, haben Sie ihre MySQL Konfigurationsdatei nicht am richtigen Ort:

[ERROR] Can't open and lock privilege tables: Table 'mysql.servers' doesn't exist
[ERROR] Cannot open mysql.db
[ERROR] Cannot open mysql.user
[ERROR] Cannot open mysql.event

Kopieren Sie es von /usr/share/config/akonadi/mysql-global.conf nach ~/.config/akonadi/mysql-local.conf. (Für Debian und openSUSE Anwender ist diese Datei in /etc/akonadi/mysql-global.conf abgelegt). Dann öffnen Sie diese und entfernen das Kommentarzeichen in der Zeile sql_mode=strict_trans_tables. Danach können Sie die folgenden Fehlermeldungen bekommen:

[ERROR] Plugin 'InnoDB' init function returned error.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
[ERROR] Unknown/unsupported table type: innodb
[ERROR] Aborting

Wenn ja, dann suchen Sie in der gleichen Datei die Zeile die so beginnt wie die Zeile oben (der Sie das Kommentarzeichen entfernt haben), aber zusätzliche durch Komma separierte Parameter hat (so etwas wie sql_mode=strict_trans_tables,strict_all_tables, ...etc). Setzen Sie ein Kommentarzeichen vor die Kürzere sql_mode=... und entfernen Sie das Kommentarzeichen vor der Längeren.

Bei openSUSE 11.2 wird die Ausführung des folgenden Befehls dieses Problem beheben:

mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/

Für Archlinux:

mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/ --basedir=/usr

Kubuntu 10.4 Upgrade

Dies ist eine Zusammenfassung von Befehlen für die, die ein Upgrade von Kubuntu 9.10 nach 10.4 durchführen und ein persönliches Paket Archiv (PPA) aufgrund von Fehlerbehebungen in KDE 4.3 verwendet haben.

Installieren Sie fehlende Voraussetzungen. Entfernen Sie den vorherigen akonadi Cache. Starten Sie den akonadi Dienst. Installieren Sie die Datenbank. Aktualisieren Sie die Datenbank. Stoppen und starten Sie den akonadi Dienst.

sudo apt-get install virtuoso-server mysql-server-5.1
rm -r $HOME/.local/share/akonadi
akonadictl start
mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/
mysql_upgrade --socket=$HOME/.local/share/akonadi/db_misc/mysql.socket
akonadictl stop
akonadictl start

Der obige Befehl mysql_install_db wird so etwas wie folgendes anzeigen, dass man aber getrost ignorieren kann:

Installing MySQL system tables...
100501 18:04:30 [Warning] Can't create test file 
/home/[userid]/.local/share/akonadi/db_data/[hostname].lower-test

Referenz: forum.kde.org Akonadi 1.2.1 - some issues

KAddressBook Upgrade

Zusätzlich zu den Lösungsvorschlägen zu Kubuntu 10.04, können Probleme ein Vcard Verzeichnis hinzuzufügen folgenden Befehl erfordern während Akonadi nicht läuft:

rm -rf $HOME/.config/akonadi

Zeichensatz latin1 kann nicht initialisiert werden

Wenn Sie die folgende Fehlermeldung beim Starten von Akonadi bekommen, dann verwenden Sie wahrscheinlich einen MySQL Server mit einer Version > 5.1.42:

Character set 'latin1' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file
Nepomuk QueryServer interface not available!
Connecting to deprecated signal
QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
DataStore::unhideAllPimItems()
Character set 'latin1' is not a compiled character set and is not specified in
the '/usr/share/mysql/charsets/Index.xml' file
Database error: Cannot open database.
Last driver error: "QMYSQL: Unable to connect"
Last database error: "Can't initialize character set latin1 (path:
/usr/share/mysql/charsets/)"
Database error: Cannot open database.
Last driver error: "QMYSQL: Unable to connect"
Last database error: "Can't initialize character set latin1 (path:
/usr/share/mysql/charsets/)"

Es gibt einen bekannten Regressionsfehler in MySQL 5.1.43 und 5.1.44, der den MySQL Start verhindert.

Siehe den Fehlerbericht für mehr Details.


Neustart nach einem vorherigen Fehler

Wenn Sie Probleme hatten Akonadi zum laufen zu bekommen und diese behoben haben (wie ein fehlendes Paket oder das Problem mit Apparmor) stellen Sie sicher, dass der Akonadi Server komplett heruntergefahren ist, bevor Sie versuchen ihn neu zu starten, durch Eingabe auf der Kommandozeile:

akonadictl stop

Sie können sicherstellen, dass der Server wirklich komplett heruntergefahren ist, durch Eingabe von:

akonadictl status

Unter bestimmten Umständen kann der Akonadi Server nach einem Fehler in einem teilweise laufenden Zustand stecken bleiben, welcher dann den nächsten Startversuch scheitern lässt. Bitte erstellen Sie einen Fehlerbericht, wenn Sie auf dieses Problem stoßen, einschließlich des Selbsttest-Reports des ursprünglichen Problems.

Die sogenannte "Gentoo-Behauptung"

Das ist ein besonders unangenehmes Problem, dass bisher nur Anwender von Source-basierten Distributionen betroffen hat, hier allen voran Gentoo. Es ist nach MySQL Behauptungen benannt, so wie das folgenden Beispiel und wird wahrscheinlich durch ein Missverhältnis im MySQL Protokoll zwischen MySQL Server und der Client-Bibliothek oder dem Qt MySQL-Treiber verursacht.

akonadiserver: libmysql.c:4301: setup_one_fetch_function: Assertion
`param->buffer_length != 0' failed.

Es ist extrem schwer zu diagnostizieren, da die oben erwähnte Behauptung nur manchmal auftritt. Stattdessen erhalten Sie eine breite Palette von seltsamen Symptomen:

  • ASAP Protokolle zeigen eine erfolgreiche Erzeugung von Objekten, die angeblich nicht mehr verfügbar sind, wenn der nächste Befehl wieder auf diese zugreift.
  • SQL Protokolle zeigen INSERT- oder UPDATE-Befehle mit Werten die nicht mit den entsprechenden Spaltentypen übereinstimmen und trotzdem erfolgreich durchgeführt wurden.
  • SQL Protokolle zeigen große scheinbar zufällige Datensatz-IDs, die dennoch als gültig angesehen werden.

Referenzen:

Mögliche Lösung: Erstellen Sie den Qt MySQL-Treiber neu nach dem Upgrade von MySQL (der wahrscheinlich dieses Problem in erster Linie verursacht hat).

Be warned that you should not follow this advice, without backing up your data.

After the introduction of KMail 2 in kdepim, since KDE SC 4.6.x, in order to search in emails and to get addressbooks, it is necessary to set System Settings -> Desktop Search -> Enable Nepomuk Sematic Desktop enabled, and check the box Enable Email Indexer.

If virtuoso-t occupies almost 100% of CPU cores and the system is nearly frozen, it may be a good idea to reset all.

To do the big reset you need :

Warning

This will initialize all your Kontact and KDE PIM data customization, but not remove emails data, akonadi resources (like email accounts, address books ), KMail Identities, filters and expired mail folders. However, be warned that you will lost much customization information, including ratings and other metadata. Also there is some risk here, because this reconstruction of data has bugs that may make you lose data.


akonadictl stop
rm -rf  ~/.local/share/akonadi/db_data/* 
akonadictl start 
# we should also clean KDE temporary folders before start KMail
rm -rf /var/tmp/kdecache-$USER /tmp/ksocket-$USER /tmp/kde-$USER

You need to check Settings -> Configure KMail -> Identities to see whether the Sent folder is correct. Some of mine were not.

Check Settings -> Configure KMail -> Accounts settings and check whether the incoming folder is correct. Some of mine were not.

Check all filters, before pulling some email. I advise disabling all filters because there may be many folders incorrect or missing.

Also important is that if you have an "expired folder", check all folders to see if the receiving folder is correctly set. If you have Delete permanently checked you may lose important emails because expiring worked with the wrong folder.

In each folder's context menu -> Folder Properties check Identities, as the associated identity may also be changed or lost in any folder.

After this we are ready to clean up Nepomuk data before enabling Nepomuk Semantic.

After all is cleaned , if you aren't able to read any emails, you should logout and login KDE session again to reinitialize all processes .

Beachten Sie, dass die obigen Befehle Nepomuk nicht permanent aktivieren werden. Wenn es nicht aktiviert ist, müssen Sie dies in den Systemeinstellungen durchführen.