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

From KDE UserBase Wiki
(Created page with 'Purtroppo questo driver non è parte della distribuzione (fino a gennaio 2010). Devi compilare il sorgente. Scarica il seguente file:')
m (Ο FuzzyBot μετακίνησε τη σελίδα Akonadi 4.4/Troubleshooting/it στη Archive:Http://userbase.kde.org/Akonadi 4.4/Troubleshooting/it χωρίς να αφήσει ανακατεύθυνση: Part of translatable page "Akonadi ...)
 
(83 intermediate revisions by 2 users not shown)
Line 14: Line 14:
* L'avvio manuale del server '''Akonadi''' dalla riga di comando può dare ulteriori informazioni utili. Questo può essere fatto eseguendo i seguenti comandi in una console:
* L'avvio manuale del server '''Akonadi''' dalla riga di comando può dare ulteriori informazioni utili. Questo può essere fatto eseguendo i seguenti comandi in una console:
{{input|1=akonadictl start}}
{{input|1=akonadictl start}}
Similarly, with this command the Akonadi server can be stopped again:
Allo stesso modo con questo comando il server Akonadi può essere fermato di nuovo:
{{input|1=akonadictl stop}}
{{input|1=akonadictl stop}}
This command gives more useful information:
Questo comando fornisce informazioni più utili:
{{input|1=akonadictl status}}
{{input|1=akonadictl status}}
==Problemi comuni==
==Problemi comuni==
Line 28: Line 28:
È noto che '''Kontact''' ha avuto problemi dopo un aggiornamento. Se è successo questo, prova ad avviare '''KMail''', '''KOrganizer''' o qualsiasi altra applicazione da '''KRunner''' (o '''Konsole'''). Le possibilità che queste applicazioni funzionino comunque in modo autonomo sono alte, nel frattempo puoi trovare il problema. Questo riguarda principalmente la versione 4.4.0.
È noto che '''Kontact''' ha avuto problemi dopo un aggiornamento. Se è successo questo, prova ad avviare '''KMail''', '''KOrganizer''' o qualsiasi altra applicazione da '''KRunner''' (o '''Konsole'''). Le possibilità che queste applicazioni funzionino comunque in modo autonomo sono alte, nel frattempo puoi trovare il problema. Questo riguarda principalmente la versione 4.4.0.


===Folder not found: "/Local"=== <!--T:13-->
===Cartella non trovata: "/Local"===


Alcune persone hanno segnalato questo errore nel caso in cui '''Kontact''' non si avviava. Sembra che in alcune prime versioni della 4.4 ci sia un bug nella migrazione che segnala a '''KMail''' di cercare la posta locale in ~/.local/share/Local, una cartella che non è stata impostata. La soluzione per questo problema non è tentare di correggerlo, ma, con '''KMail'''/'''Kontact''' chiusi, aprire la '''Console di Akonadi''':
Alcune persone hanno segnalato questo errore nel caso in cui '''Kontact''' non si avviava. Sembra che in alcune prime versioni della 4.4 ci sia un bug nella migrazione che segnala a '''KMail''' di cercare la posta locale in ~/.local/share/Local, una cartella che non è stata impostata. La soluzione per questo problema non è tentare di correggerlo, ma, con '''KMail'''/'''Kontact''' chiusi, aprire la '''Console di Akonadi''':
Line 54: Line 54:
[[image:NepomukError.png|418px|center]]
[[image:NepomukError.png|418px|center]]


Il motivo più comune per questo avviso è che '''Nepomuk''' è semplicemente disabilitato in '''System Settings'''. Prova ad abilitarlo in '''System Settings''' sotto <menuchoice>Avanzate -> Ricerca desktop -> Impostazioni di base</menuchoice> selezionando "Nepomuk Semantik Desktop" e facendo clic su "Applica".
Il motivo più comune per questo avviso è che '''Nepomuk''' è semplicemente disabilitato in '''Impostazioni di sistema'''. Prova ad abilitarlo in '''Impostazioni di sistema''' sotto <menuchoice>Avanzate -> Ricerca desktop -> Impostazioni di base</menuchoice> selezionando "Nepomuk Semantik Desktop" e facendo clic su "Applica".


Se questo non risolve il problema (o se l'opzione era già selezionata quando hai avuto il problema) e se prima hai utilizzato una versione di sviluppo di '''KDE SC 4.4''', potresti avere problemi a causa del cambiamento all'organizzazione interna del database (dovuto ad un aggiornamento del server database '''Virtuoso''' dalla versione 5 alla 6; le versioni definitive di '''KDE SC 4.4''' dovrebbero fornire la versione 6 di '''Virtuoso'''). I seguenti comandi dovrebbero farlo funzionare nuovamente:
Se questo non risolve il problema (o se l'opzione era già selezionata quando hai avuto il problema) e se prima hai utilizzato una versione di sviluppo di '''KDE SC 4.4''', potresti avere problemi a causa del cambiamento all'organizzazione interna del database (dovuto ad un aggiornamento del server database '''Virtuoso''' dalla versione 5 alla 6; le versioni definitive di '''KDE SC 4.4''' dovrebbero fornire la versione 6 di '''Virtuoso'''). I seguenti comandi dovrebbero farlo funzionare nuovamente:


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


Nota che i comandi qui sopra '''non''' abiliteranno '''Nepomuk''' in modo permanente se non è già attivato, devi utilizzare '''System Settings''' per far questo.
Nota che i comandi qui sopra '''non''' abiliteranno '''Nepomuk''' in modo permanente se non è già attivato, devi utilizzare '''Impostazioni di sistema''' per far questo.


Per far funzionare '''Akonadi''', e quindi '''Kontact''', è necessario che '''Nepomuk''' sia in funzione. Comunque puoi disabilitare l'indicizzatore '''Strigi''' che non è necessario per '''Kontact'''. L'indicizzatore '''Strigi''' è utilizzato solo per funzioni di ricerca desktop che non solo legate a '''Kontact'''. Semplicemente assicurati che '''Nepomuk''' sia correttamente in esecuzione per '''Kontact'''.
Per far funzionare '''Akonadi''', e quindi '''Kontact''', è necessario che '''Nepomuk''' sia in funzione. Comunque puoi disabilitare l'indicizzatore '''Strigi''' che non è necessario per '''Kontact'''. L'indicizzatore '''Strigi''' è utilizzato solo per funzioni di ricerca desktop che non solo legate a '''Kontact'''. Semplicemente assicurati che '''Nepomuk''' sia correttamente in esecuzione per '''Kontact'''.
Line 82: Line 86:
===I miei contatti non vengono mostrati quando utilizzo il pulsante Seleziona in KMail===
===I miei contatti non vengono mostrati quando utilizzo il pulsante Seleziona in KMail===


Controlla <menuchoice>System Settings -> scheda Avanzate -> Risorse di KDE</menuchoice>. Assicurati che la/e tua/e rubrica/he controllata/e da '''Akonadi''' sia(no) elencata/e, aggiungile se necessario. Nello stesso momento è buona idea fare in modo che la tua rubrica principale di '''Akonadi''', di solito chiamata "Contatti personali", sia impostata come predefinita. Maggiori dettagli al riguardo sono disponibili [[KAddressBook_4.4/it#Configurazione_della_tua_nuova_rubrica_(AddressBook)|qui]].
Controlla <menuchoice>Impostazioni di sistema -> scheda Avanzate -> Risorse di KDE</menuchoice>. Assicurati che la/e tua/e rubrica/he controllata/e da '''Akonadi''' sia(no) elencata/e, aggiungile se necessario. Nello stesso momento è buona idea fare in modo che la tua rubrica principale di '''Akonadi''', di solito chiamata "Contatti personali", sia impostata come predefinita. Maggiori dettagli al riguardo sono disponibili [[Special:myLanguage/KAddressBook_4.4#Setting_up_your_New_AddressBook|qui]].


===Come riavere la mia rubrica Groupware?===
===Come riavere la mia rubrica Groupware?===
Line 93: Line 97:
{{input|1=kcmshell4 kcm_akonadi}}
{{input|1=kcmshell4 kcm_akonadi}}
Poi aggiungi una risorsa '''Kolab'''. Il prossimo passo è aspettare che la risorsa imap venga sincronizzata, potrebbe richiedere molto tempo. Lo stato apparirà nel modulo di configurazione di '''Akonadi'''. Se non succede niente, prova a riavviare '''akonadiserver'''. Dopo un po' la/e rubrica/he '''Kolab''' dovrebbero apparire in '''KAddressBook'''.
Poi aggiungi una risorsa '''Kolab'''. Il prossimo passo è aspettare che la risorsa imap venga sincronizzata, potrebbe richiedere molto tempo. Lo stato apparirà nel modulo di configurazione di '''Akonadi'''. Se non succede niente, prova a riavviare '''akonadiserver'''. Dopo un po' la/e rubrica/he '''Kolab''' dovrebbero apparire in '''KAddressBook'''.
 
<span id="You experience long delays when sending mail"></span>
===Si verificano lunghi ritardi quando invii messaggi di posta===
===Si verificano lunghi ritardi quando invii messaggi di posta===


Line 100: Line 104:
È stato trovato un bug relativo al modo con cui '''Nepomuk''' controlla gli indirizzi. Questo può causare enormi ritardi. Sarà risolto nella SC 4.4.1. Se non puoi avere ancora la 4.4.1, c'è questo espediente:
È stato trovato un bug relativo al modo con cui '''Nepomuk''' controlla gli indirizzi. Questo può causare enormi ritardi. Sarà risolto nella SC 4.4.1. Se non puoi avere ancora la 4.4.1, c'è questo espediente:


Chiudi '''Kontact''' o '''KMail''' e '''KAddressbook''' se le stai eseguendo come applicazioni indipendenti. Disabilita '''Strigi''' in '''SystemSettings'''. Ferma '''Nepomuk''', cancella il database e riavvia '''nepomukserver'''. I comandi di cui hai bisogno sono (come utente):
Chiudi '''Kontact''' o '''KMail''' e '''KAddressbook''' se le stai eseguendo come applicazioni indipendenti. Disabilita '''Strigi''' in '''Impostazioni di sistema'''. Ferma '''Nepomuk''', cancella il database e riavvia '''nepomukserver'''. I comandi di cui hai bisogno sono (come utente):


<!--T:42-->
<!--T:42-->
:::{{input|1=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
rm -r ~/.kde4/share/apps/nepomuk
Line 109: Line 113:


Questo, naturalmente, eliminerà tutto il database, incluse tutte le etichette che hai aggiunto. In teoria ho appreso che è possibile fare una pulizia più selettiva del database. Se questo è importante per te, puoi trovare le istruzioni su [http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/TipsAndTricks#Remove_all_Strigi-indexed_data questa pagina]
Questo, naturalmente, eliminerà tutto il database, incluse tutte le etichette che hai aggiunto. In teoria ho appreso che è possibile fare una pulizia più selettiva del database. Se questo è importante per te, puoi trovare le istruzioni su [http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/TipsAndTricks#Remove_all_Strigi-indexed_data questa pagina]
===La risorsa IMAP afferma sempre di non essere in linea===
Sebbene il sistema disponga di una connessione internet, la risorsa IMAP rifiuta di passare alla modalità in linea.
Questo bug è causato da un'installazione mal configurata di NetworkManager sul tuo sistema. Controlla il risultato del seguente comando:
{{input|1=qdbus --system org.freedesktop.NetworkManager /org/freedesktop/NetworkManager org.freedesktop.NetworkManager.state}}
Puoi ottenere uno dei seguenti valori:
* '''20''' (precedentemente ''4''), '''disconnesso'''. Se puoi accedere a internet, allora la configurazione di NetworkManager deve essere sbagliata.
* '''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.
=== Can't read  any details of some messages or big delays to read it ===
if you aren't able to read some emails and see a message with " please wait ... ", you may logout and login KDE session to reinitialize all processes, might help.


== Alcuni problemi tecnici ==
== Alcuni problemi tecnici ==
Line 123: Line 146:


Alcune distribuzioni che utilizzano '''Apparmor''', lo hanno impostato in un modo che impedisce ad '''Akonadi''' di eseguire il suo server database interno. Ciò può comportare una serie di messaggi di errore, incluso, ma non limitato al seguente:
Alcune distribuzioni che utilizzano '''Apparmor''', lo hanno impostato in un modo che impedisce ad '''Akonadi''' di eseguire il suo server database interno. Ciò può comportare una serie di messaggi di errore, incluso, ma non limitato al seguente:
:::{{output|1=unknown error 255 when running akonadictl
{{output|1=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"}}


Line 137: Line 160:


Nota inoltre che alcune distribuzioni forniscono un binario '''mysqld''' addizionale chiamato '''mysqld-akonadi''' che è correttamente impostato in '''AppArmor'''. Se è così sul tuo sistema e hai comunque questo problema, ci sono due possibili ragioni:
Nota inoltre che alcune distribuzioni forniscono un binario '''mysqld''' addizionale chiamato '''mysqld-akonadi''' che è correttamente impostato in '''AppArmor'''. Se è così sul tuo sistema e hai comunque questo problema, ci sono due possibili ragioni:
* '''Akonadi''' utilizza ancora '''mysqld''' invece di '''mysqld-akonadi'''. Puoi cambiarlo in <menuchoice>Systemsettings -> Avanzate -> Akonadi -> Configurazione del server</menuchoice>.
* '''Akonadi''' utilizza ancora '''mysqld''' invece di '''mysqld-akonadi'''. Puoi cambiarlo in <menuchoice>Impostazioni di sistema -> Avanzate -> Akonadi -> Configurazione del server</menuchoice>.
* '''AppArmor''' non è impostato correttamente neanche per '''mysqld-akonadi'''. Prova ad eseguire il comando "aa-complain" sopracitato con '''mysqld-akonadi''' invece di '''mysqld'''.  
* '''AppArmor''' non è impostato correttamente neanche per '''mysqld-akonadi'''. Prova ad eseguire il comando "aa-complain" sopracitato con '''mysqld-akonadi''' invece di '''mysqld'''.  


Line 167: Line 190:
Se sei solito compilare le Qt4 tu stesso, assicurati di segnalare allo script di configurazione di compilare il supporto a MySQL passandogli la seguente opzione:
Se sei solito compilare le Qt4 tu stesso, assicurati di segnalare allo script di configurazione di compilare il supporto a MySQL passandogli la seguente opzione:
{{input|1=-plugin-sql-mysql}}
{{input|1=-plugin-sql-mysql}}
If "configure" cannot locate the necessary MySQL client code (i.e, says "MySQL support cannot be enabled due to functionality tests") then ensure that the corresponding package is installed (typically called ''[lib]mysql[client]-dev[el]''). Also, depending on the install location of the MySQL headers, additional parameters to "configure" might be needed (eg. "-I /usr/include/mysql" on ''OpenSuse'').
Se "configure" non riesce a localizzare il codice necessario del client MySQL (cioè riporta "MySQL support cannot be enabled due to functionality tests"), assicurati che il pacchetto corrispondente sia installato (tipicamente chiamato ''[lib]mysql[client]-dev[el]''). Inoltre, a seconda della posizione d'installazione degli header di MySQL, potrebbero essere necessari dei parametri aggiuntivi per "configure" (per esempio "-I /usr/include/mysql" su ''OpenSuse'').


Se hai preso le Qt4 direttamente da ''Nokia'', come ad esempio scaricando <code>qt-sdk-linux-x86_64-opensource-2009.05.bin</code>, otterrai (dal comando "akonadictl start") un errore al Test 1:
Se hai preso le Qt4 direttamente da ''Nokia'', come ad esempio scaricando <code>qt-sdk-linux-x86_64-opensource-2009.05.bin</code>, otterrai (dal comando "akonadictl start") un errore al Test 1:


<!--T:99-->
<!--T:99-->
:::{{output|1=Database driver not found.
{{output|1=Database driver not found.
Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server configuration.
Details: The QtSQL driver 'QMYSQL' is required by your current Akonadi server configuration.
The following drivers are installed: QSQLITE.
The following drivers are installed: QSQLITE.
Line 182: Line 205:
{{input|1=qt-everywhere-opensource-src-4.6.0.tar.bz}}
{{input|1=qt-everywhere-opensource-src-4.6.0.tar.bz}}


Then ''configure'' and ''make'' as above. But the ''make install'' doesn't copy the driver. So you have to copy it by yourself:
Quindi ''configure'' e ''make'' come sopra. Ma ''make install'' non copia il driver. Devi quindi copiarlo tu stesso:
{{input|1=cp <qt-src-dir>/qt-everywhere-opensource-src-4.6.0/plugins/sqldrivers/libqsqlmysql.so /usr/local/bin/sqldrivers/}}
{{input|1=cp <qt-src-dir>/qt-everywhere-opensource-src-4.6.0/plugins/sqldrivers/libqsqlmysql.so /usr/local/bin/sqldrivers/}}
'''But''' the Revision '''4.6.1''', such as qt-sdk-linux-x86_64-opensource-2010.xx.bin has the driver you needed.
'''Ma''' la revisione '''4.6.1''', come qt-sdk-linux-x86_64-opensource-2010.xx.bin, ha il driver di cui hai bisogno.
'''Ma''' potrebbe essere nuovamente necessario associare ''libqsqlmysql.so'' se ''libmysqlclient.so'' è passata a una nuova versione.


=== Environment Setup ===
=== Impostazione dell'ambiente ===


The '''Akonadi''' server searches for '''Akonadi''' agents and resources in the paths defined in the ''XDG_DATA_DIRS'' environment variable. If '''Akonadi''' complains about not finding agents or resources, check if this variable is set correctly. Also keep in mind that even if set in a current console session, it might not have been set when starting the server. Starting the server manually in the current console session excludes this cause.
Il server '''Akonadi''' cerca agenti e risorse '''Akonadi''' nei percorsi definiti dalla variabile d'ambiente ''XDG_DATA_DIRS''. Se '''Akonadi''' si lamenta riguardo l'impossibilità di trovare agenti o risorse, controlla se questa variabile è impostata correttamente. Inoltre tieni presente che anche se la imposti in una sessione attuale della console, potrebbe non essere impostata adeguatamente quando avvii il server. Avviare manualmente il server nella sessione attuale della console evita questo problema.


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


If the MySQL server log contains the following error, then your MySQL server was built without the InnoDB support which is required by '''Akonadi''' or '''InnoDB''' needs to be loaded in your ''mysql.conf'' file:
Se il log del server MySQL contiene il seguente errore, allora il tuo server MySQL è stato compilato senza il supporto a InnoDB che è necessario per '''Akonadi''' oppure '''InnoDB''' necessita di essere caricato nel tuo file ''mysql.conf'':
:::{{output|1=[ERROR] /usr/libexec/mysqld: unknown variable 'innodb_file_per_table=1'
{{output|1=[ERROR] /usr/libexec/mysqld: unknown variable 'innodb_file_per_table=1'
[ERROR] Aborting}}
[ERROR] Aborting}}


Try adding:
Prova ad aggiungere:


<!--T:100-->
<!--T:100-->
:::{{input|1=#sql_mode=strict_trans_tables <- Add underneath this line
{{input|1=#sql_mode=strict_trans_tables <- Add underneath this line
#plugins
#plugins
plugin_dir=usr/lib/mysql/plugin < - This may be a different path
plugin_dir=usr/lib/mysql/plugin < - This may be a different path
plugin-load=ha_innodb.so}}
plugin-load=ha_innodb.so}}
===Table 'mysql. servers' doesn't exist===
===La tabella 'mysql. servers' non esiste===


If MySQL server log contains the following error, then, most probably, you don't have your MySQL configuration file in place:
Se il log del server MySQL contiene il seguente errore, allora, molto probabilmente, il tuo file di configurazione di MySQL non è a posto:


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


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'''. After that, you may get the following errors:
Copiala da ''/usr/share/config/akonadi/mysql-global.conf'' a ''~/.config/akonadi/mysql-local.conf''. (Per gli utenti di ''debian'' e ''openSUSE'' il file si trova in ''/etc/akonadi/mysql-global.conf''). Poi aprilo e rimuovi il commento alla riga '''sql_mode=strict_trans_tables'''. Dopo di che potresti ottenere i seguenti errori:


<!--T:104-->
<!--T:104-->
:::{{output|1=[ERROR] Plugin 'InnoDB' init function returned error.
{{output|1=[ERROR] Plugin 'InnoDB' init function returned error.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
[ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
[ERROR] Unknown/unsupported table type: innodb
[ERROR] Unknown/unsupported table type: innodb
[ERROR] Aborting}}
[ERROR] Aborting}}


If so, 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.
Se è così, nello stesso file trova la riga che inizia come la precedente (che hai decommentato), ma presenta parametri aggiuntivi separati da virgole (qualcosa come '''sql_mode=strict_trans_tables,strict_all_tables, ...ecc'''). Commenta la riga ''sql_mode=...'' più corta e decommenta quella più lunga.


On ''openSUSE 11.2'' running the following command will fix this problem:
In ''openSUSE 11.2'' eseguire il seguente comando risolverà questo problema:


       <!--T:106-->
       <!--T:106-->
{{input|1=mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/}}
{{input|1=mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/}}


=== Kubuntu 10.4 Upgrade ===
Per ''Archlinux'':


This is a summary of other entries here for those upgrading from ''Kubuntu 9.10'' to 10.4 who may have been using a personal package archive (PPA) for KDE 4.3 for bug fixes.
{{input|1=mysql_install_db --datadir=$HOME/.local/share/akonadi/db_data/ --basedir=/usr}}


Install missing prerequisites. Remove previous '''akonadi''' cache. Start the '''akonadi''' service. Install the database. Upgrade the database. Stop and restart the '''akonadi''' service.
=== Aggiornare a Kubuntu 10.04 (Lucid Lynx) ===
:::{{input|1=sudo apt-get install virtuoso-server mysql-server-5.1
 
Questo è un riassunto di altri punti qui presenti per quelli che stanno aggiornando da ''Kubuntu 9.10'' alla 10.04 e che potrebbero aver utilizzato un personal package archive (PPA) per KDE 4.3 come bug fix.
 
Installa le dipendenze mancanti. Rimuovi la cache precedente di '''akonadi'''. Avvia il servizio '''akonadi'''. Installa il database. Aggiorna il database. Ferma e riavvia il servizio '''akonadi'''.
{{input|1=sudo apt-get install virtuoso-server mysql-server-5.1
rm -r $HOME/.local/share/akonadi
rm -r $HOME/.local/share/akonadi
akonadictl start
akonadictl start
Line 241: Line 269:
akonadictl start}}
akonadictl start}}


The mysql_install_db command above will report something like the following, which you can safely ignore:
Il comando precedente mysql_install_db riporterà qualcosa di simile al seguente, puoi tranquillamente ignorarlo:


<!--T:108-->
<!--T:108-->
:::{{output|1=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}}


Reference:
Riferimento:
[http://forum.kde.org/viewtopic.php?f=20&t=79717 forum.kde.org Akonadi 1.2.1 - some issues]
[http://forum.kde.org/viewtopic.php?f=20&t=79717 forum.kde.org Akonadi 1.2.1 - alcuni problemi]


=== KAddressBook upgrade ===
=== Aggiornamento di KAddressBook ===


In addition to the ''Kubuntu 10.4'' remedy above, problems trying to add a ''Vcard directory'' may require the following command while '''Akonadi''' is not running:
Oltre al rimedio precedente per ''Kubuntu 10.04'', i problemi relativi al tentativo di aggiungere una ''cartella Vcard'' potrebbero richiedere il comando seguente mentre '''Akonadi''' non è in esecuzione:
:::{{input|1=rm -rf $HOME/.config/akonadi}}
{{input|1=rm -rf $HOME/.config/akonadi}}
=== Can't initialize character set latin1 ===


If you get the following error when starting Akonadi, then you are probably using a MySQL server which has a version > 5.1.42:
=== Impossibile inizializzare il set di caratteri latin1 ===
 
Se ottieni il seguente errore quando avvii Akonadi, allora probabilmente stai utilizzando un server MySQL con versione > 5.1.42:


<!--T:84-->
<!--T:84-->
:::{{output|1=Character set 'latin1' is not a compiled character set and is not specified in the '/usr/share/mysql/charsets/Index.xml' file
{{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!
Nepomuk QueryServer interface not available!
Connecting to deprecated signal
Connecting to deprecated signal
Line 276: Line 305:
/usr/share/mysql/charsets/)"}}
/usr/share/mysql/charsets/)"}}


There is a known regression in MySQL 5.1.43 and 5.1.44 which prevents MySQL from starting.  
C'è una regressione nota in MySQL 5.1.43 e 5.1.44 che impedisce l'avvio di MySQL.  


See [http://bugs.kde.org/226960 the bug report] for more details.
Vedi [http://bugs.kde.org/226960 la segnalazione del bug] per maggiori dettagli.




=== Restarting after a previous error ===
=== Riavvio dopo un precedente errore ===


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 on the command line:
Se hai avuto problemi ad avviare '''Akonadi''' e li hai sistemati (come un pacchetto mancante o il problema con '''Apparmor'''), assicurati che il server '''Akonadi''' sia completamente disattivato prima di provare a riavviarlo tramite la riga di comando:
{{input|1=akonadictl stop}}
{{input|1=akonadictl stop}}
You can confirm that it was indeed shut down completely by running:
Puoi avere conferma che era effettivamente disattivato completamente eseguendo:
{{input|1=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.
In alcune circostanze il server '''Akonadi''' può rimanere bloccato dopo un errore in uno stato di parziale esecuzione che impedirà il successivo tentativo di riavviarlo con successo. Se hai questo problema, invia un resoconto del bug che includa il risultato del test autodiagnostico del problema iniziale.


=== The so-called "Gentoo-Assert" ===
=== Il cosiddetto "Gentoo-Assert" ===


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.
Questo è un problema particolarmente sgradevole che finora riguarda solo gli utenti delle distribuzioni basate su sorgente, principalmente ''Gentoo''. È stato così chiamato dopo le affermazioni di MySQL come quelle dell'esempio seguente ed è molto probabilmente causato da una mancata corrispondenza del protocollo MySQL tra il server MySQL e la libreria del client o il driver Qt MySQL.


<!--T:92-->
<!--T:92-->
:::{{output|1=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:
È estremamente difficile da diagnosticare dal momento che l'affermazione di cui sopra viene mostrata solo alcune volte. Invece otterrai una vasta gamma di strani sintomi:
* ASAP protocol logs show successful creation of objects which are supposedly no longer available when the next commands accesses them again.
* i log del protocollo ASAP mostrano la creazione con successo di oggetti che si suppongono non più disponibili quando i seguenti comandi accedono ad essi nuovamente.
* SQL protocol logs show INSERT or UPDATE commands with values that mismatch the corresponding column types and nevertheless succeed.
* I log del protocollo SQL mostrano comandi INSERT o UPDATE con valori che non combaciano ai tipi di colonne corrispondenti e ciononostante hanno successo.
* SQL protocol logs showing large apparently random record ids which are nevertheless considered valid.
* I log del protocollo SQL mostrano un gran numero di record id apparentemente casuali che sono tuttavia considerati validi.


References:
Riferimenti:
* 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 (contiene una possibile soluzione)
* 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).
Possibile soluzione: ricompilare il driver Qt MySQL dopo aver aggiornato MySQL (che molto probabilmente ha causato questo problema in primo luogo).
 
=== Per reimpostare Nepomuk e il sistema Akonadi in KMail 2 ===
 
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.
 
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 .  


[[Category:Sistema_(it)]]
[[Category:Sistema/it]]

Latest revision as of 16:53, 13 February 2013

Introduzione

Questa pagina riguarda principalmente la risoluzione dei problemi con Akonadi, dal momento che ci sono inevitabili difetti nelle prime fasi di migrazione. Per molte persone i primi segni di vita di Akonadi saranno visibili in KDE SC 4.4 e molti saranno confusi al riguardo. Per una breve descrizione dello scopo di Akonadi, guarda questa voce del glossario. Troverai anche collegamenti utili per ulteriori approfondimenti. Una volta che gli inevitabili problemi iniziali saranno finiti, Akonadi offrirà una potente base utilizzabile da molte applicazioni.

Comprensione della struttura

Puoi, naturalmente, utilizzare semplicemente Kontact per gestire tutti i tuoi contatti della rubrica, ma se disponi di un sistema di backup, per esempio, vorrai sapere dove si trovano i tuoi dati e come sono gestiti. La pagina Akonadi e AddressBook ti aiuterà.

Consigli per la risoluzione dei problemi

  • Nella segnalazione dei problemi con il server Akonadi, includere sempre il rapporto integrale dell'autodiagnostica. Questo rapporto può essere ottenuto dalla finestra di dialogo che viene mostrata ogni volta che il server Akonadi non è stato in grado di avviarsi con successo. Puoi trovare questa finestra nel modulo kcm che è accessibile tramite:
kcmshell4 kcm_akonadi
  • L'avvio manuale del server Akonadi dalla riga di comando può dare ulteriori informazioni utili. Questo può essere fatto eseguendo i seguenti comandi in una console:
akonadictl start

Allo stesso modo con questo comando il server Akonadi può essere fermato di nuovo:

akonadictl stop

Questo comando fornisce informazioni più utili:

akonadictl status

Problemi comuni

Kontact non si avvia e non mi dice niente

Se Kontact non si avvia e vedi messaggi d'errore, controlla che Akonadi sia in esecuzione. Akonadi dovrebbe avviarsi su richiesta. Se non è così, dovrai avviarlo prima dell'avvio di Kontact se hai una qualsiasi risorsa migrata (più probabilmente KAddressBook). Utilizza l'icona di Akonadi nel vassoio di sistema (ottenibile digitando "akonadi" in KRunner) o digita i comandi in Konsole per avviarlo.

Kontact non si avvia, seconda versione

È noto che Kontact ha avuto problemi dopo un aggiornamento. Se è successo questo, prova ad avviare KMail, KOrganizer o qualsiasi altra applicazione da KRunner (o Konsole). Le possibilità che queste applicazioni funzionino comunque in modo autonomo sono alte, nel frattempo puoi trovare il problema. Questo riguarda principalmente la versione 4.4.0.

Cartella non trovata: "/Local"

Alcune persone hanno segnalato questo errore nel caso in cui Kontact non si avviava. Sembra che in alcune prime versioni della 4.4 ci sia un bug nella migrazione che segnala a KMail di cercare la posta locale in ~/.local/share/Local, una cartella che non è stata impostata. La soluzione per questo problema non è tentare di correggerlo, ma, con KMail/Kontact chiusi, aprire la Console di Akonadi:

  • Utilizza KRunner tramite Alt-F2 o
  • "akonadiconsole" Konsole

Quindi rimuovere la risorsa relativa alla posta locale. Ora dovresti accorgerti che puoi avviare Kontact o KMail e che è stata creata una nuova risorsa che punta a ~/.local/share/local-mail.

Ci sono altre nuove cartelle in ~/.local/share/

Sì. Se la tua rubrica è stata migrata correttamente, è stata creata una nuova risorsa in ~/.local/share/contacts/.

Cosa sono /usr/bin/akonadi_maildir_resource e /usr/bin/akonadi_maildispatcher_agent?

Akonadi_maildir_resource è creata automaticamente da akonadi_maildispatcher_agent, mentre il secondo è sempre avviato insieme al server Akonadi dato che fornisce le funzionalità di base (per esempio l'invio della posta) che sono utilizzate da tutte le applicazioni per la posta elettronica che sono (e saranno) basate su Akonadi. Quindi è giusto che questi due siano in esecuzione, come utente puoi semplicemente ignorarli. Questa risorsa (akonadi_maildir_resource) autogenerata punterà sempre a ~/.local/share/local-mail/ che corrisponde al tuo account "Cartelle locali" dove le tue cartelle locali e la posta verranno memorizzate.

A questo punto, in KDE SC 4.4, la posta elettronica non è ancora in fase di migrazione.

Gli agenti di indicizzazione Nepomuk sono stati disattivati

Kontact è ora in esecuzione, ma continui a vedere questo avviso:

Il motivo più comune per questo avviso è che Nepomuk è semplicemente disabilitato in Impostazioni di sistema. Prova ad abilitarlo in Impostazioni di sistema sotto Avanzate -> Ricerca desktop -> Impostazioni di base selezionando "Nepomuk Semantik Desktop" e facendo clic su "Applica".

Se questo non risolve il problema (o se l'opzione era già selezionata quando hai avuto il problema) e se prima hai utilizzato una versione di sviluppo di KDE SC 4.4, potresti avere problemi a causa del cambiamento all'organizzazione interna del database (dovuto ad un aggiornamento del server database Virtuoso dalla versione 5 alla 6; le versioni definitive di KDE SC 4.4 dovrebbero fornire la versione 6 di Virtuoso). I seguenti comandi dovrebbero farlo funzionare nuovamente:

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

Nota che i comandi qui sopra non abiliteranno Nepomuk in modo permanente se non è già attivato, devi utilizzare Impostazioni di sistema per far questo.

Per far funzionare Akonadi, e quindi Kontact, è necessario che Nepomuk sia in funzione. Comunque puoi disabilitare l'indicizzatore Strigi che non è necessario per Kontact. L'indicizzatore Strigi è utilizzato solo per funzioni di ricerca desktop che non solo legate a Kontact. Semplicemente assicurati che Nepomuk sia correttamente in esecuzione per Kontact.

In Kontact, Nepomuk è usato per molte cose diverse che vanno dalla visualizzazione dei prossimi compleanni, alla gestione degli elenchi libero/occupato per mostrare una foto del contatto nel visualizzatore dei messaggi. Se Nepomuk non è in esecuzione, diverse cose in Kontact cesseranno di funzionare. L'avviso è lì per avvertirti delle funzionalità ridotte. Abilitare Nepomuk, come descritto sopra, risolve il problema.

Puoi verificare se Nepomuk è correttamente in esecuzione digitando:

akonadictl status

Voglio utilizzare la mia attuale Rubrica e l'Organizzatore personale. Posso?

Sì. Quando utilizzi la console di Akonadi per aggiungere una risorsa, puoi scegliere Rubrica standard, facendola puntare sul tuo std.vcf dovrebbe funzionare bene. La migrazione non distrugge la tua vecchia rubrica. Puoi continuare ad usarla, sebbene perderai tutti i benefici che Akonadi può portare. In alternativa puoi avere sia una rubrica Akonadi che la tua originale, per un po', se ti senti più sicuro così.

Non posso vedere dettagli nella mia rubrica

Al momento la causa di questo non è identificata, ma la cura è semplice. Chiudi Kontact e avvia KAddressBook come applicazione indipendente. Dopo averla chiusa sarai in grado di utilizzarla insieme a Kontact. Sembra che qualcosa non venga attivato quando viene avviato Kontact. Penso che questo problema sarà identificato e risolto al più presto. Sembra coinvolgere principalmente la versione 4.4.0.

I miei contatti non vengono mostrati quando utilizzo il pulsante Seleziona in KMail

Controlla Impostazioni di sistema -> scheda Avanzate -> Risorse di KDE. Assicurati che la/e tua/e rubrica/he controllata/e da Akonadi sia(no) elencata/e, aggiungile se necessario. Nello stesso momento è buona idea fare in modo che la tua rubrica principale di Akonadi, di solito chiamata "Contatti personali", sia impostata come predefinita. Maggiori dettagli al riguardo sono disponibili qui.

Come riavere la mia rubrica Groupware?

Due soluzioni: utilizzando la vecchia infrastruttura o quella nuova.

Vecchia infrastruttura: in akonadiconsole aggiungi un "KDE Address Book (tradizionale)". KDE Address Book significa che puoi impostare una vecchia kresources per utilizzarla con Akonadi. Nella configurazione di "KDE Address Book (tradizionale)", falla puntare su una KResource "IMAP via KMail" e in KMail dovresti abilitare le opzioni groupware. Questo dovrebbe funzionare per Kolab, eGroupware e rubriche simili. Avrai bisogno di controllare le opzioni per essere sicuro che sia selezionato il tipo corretto.

Nuova infrastruttura (testata solo con Kolab): nel modulo di configurazione di Akonadi, aggiungi una risorsa "Server di posta IMAP" e imposta il nome del tuo server di posta elettronica, il nome utente e la password, quindi fai clic su Identifica automaticamente. Esegui questo comando per farlo:

kcmshell4 kcm_akonadi

Poi aggiungi una risorsa Kolab. Il prossimo passo è aspettare che la risorsa imap venga sincronizzata, potrebbe richiedere molto tempo. Lo stato apparirà nel modulo di configurazione di Akonadi. Se non succede niente, prova a riavviare akonadiserver. Dopo un po' la/e rubrica/he Kolab dovrebbero apparire in KAddressBook.

Si verificano lunghi ritardi quando invii messaggi di posta

Questo si accompagna al "congelamento" di KMail fino a quando il messaggio di posta viene effettivamente spedito.

È stato trovato un bug relativo al modo con cui Nepomuk controlla gli indirizzi. Questo può causare enormi ritardi. Sarà risolto nella SC 4.4.1. Se non puoi avere ancora la 4.4.1, c'è questo espediente:

Chiudi Kontact o KMail e KAddressbook se le stai eseguendo come applicazioni indipendenti. Disabilita Strigi in Impostazioni di sistema. Ferma Nepomuk, cancella il database e riavvia nepomukserver. I comandi di cui hai bisogno sono (come utente):

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

Questo, naturalmente, eliminerà tutto il database, incluse tutte le etichette che hai aggiunto. In teoria ho appreso che è possibile fare una pulizia più selettiva del database. Se questo è importante per te, puoi trovare le istruzioni su questa pagina

La risorsa IMAP afferma sempre di non essere in linea

Sebbene il sistema disponga di una connessione internet, la risorsa IMAP rifiuta di passare alla modalità in linea.

Questo bug è causato da un'installazione mal configurata di NetworkManager sul tuo sistema. Controlla il risultato del seguente comando:

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

Puoi ottenere uno dei seguenti valori:

  • 20 (precedentemente 4), disconnesso. Se puoi accedere a internet, allora la configurazione di NetworkManager deve essere sbagliata.
  • 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.

Can't read any details of some messages or big delays to read it

if you aren't able to read some emails and see a message with " please wait ... ", you may logout and login KDE session to reinitialize all processes, might help.

Alcuni problemi tecnici

Nepomuk

A partire da KDE 4.4, è necessario che Nepomuk sia in esecuzione perché Akonadi possa funzionare correttamente. Akonadi verificherà questo e mostrerà una finestra di errore all'avvio se non è così.

Nepomuk funziona solo con il backend Virtuoso. Puoi controllare se Nepomuk è in esecuzione con il backend corretto utilizzando la finestra di autodiagnostica di Akonadi, come descritto sopra.

Sebbene Nepomuk debba essere necessariamente in esecuzione, puoi ancora disabilitare l'indicizzazione dei file tramite Strigi che di solito è la parte più avida di risorse dell'infrastruttura Nepomuk.

Apparmor

Alcune distribuzioni che utilizzano Apparmor, lo hanno impostato in un modo che impedisce ad Akonadi di eseguire il suo server database interno. Ciò può comportare una serie di messaggi di errore, incluso, ma non limitato al seguente:

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

Puoi risolvere questo problema eseguendo il comando seguente con i privilegi d'amministratore, poi ricarica apparmor:

aa-complain mysqld

Su Kubuntu fai così:

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

Nota che potresti stare utilizzando Apparmor anche se non compare nell'elenco dei processi.

Nota inoltre che alcune distribuzioni forniscono un binario mysqld addizionale chiamato mysqld-akonadi che è correttamente impostato in AppArmor. Se è così sul tuo sistema e hai comunque questo problema, ci sono due possibili ragioni:

  • Akonadi utilizza ancora mysqld invece di mysqld-akonadi. Puoi cambiarlo in Impostazioni di sistema -> Avanzate -> Akonadi -> Configurazione del server.
  • AppArmor non è impostato correttamente neanche per mysqld-akonadi. Prova ad eseguire il comando "aa-complain" sopracitato con mysqld-akonadi invece di mysqld.

---

Sperimenterai questo problema anche nel caso in cui tu stia utilizzando una cartella home cifrata tramite encryptfs in aggiunta ad AppArmor. Questo perché il profilo Akonadi apparmor attualmente non tiene conto di una home cifrata (comune per gli utenti di Ubuntu Jaunty). I messaggi d'errore includono:

  • dmesg che produce:
ecryptfs_do_create: Failure to create dentry in lower fs; rc = [-13]
ecryptfs_create: Failed to create file inlower filesystem
  • * Akonadi che elencherà i seguenti errori:
Akonadi server process not registered at D-Bus

La soluzione è modificare il seguente file "/etc/apparmor.d/usr.sbin.mysqld-akonadi". Sotto la riga:

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

aggiungine una nuova:

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

Riavvia apparmor e akonadi.

Prerequisito mancante

Per utilizzare Akonadi hai bisogno di aver installato i seguenti pacchetti (i nomi possono differire a seconda della tua distribuzione):

  • MySQL server (chiamato mysql in openSUSE)
  • Qt4 MySQL plugin (chiamato libqt4-sql-mysql in openSUSE)

Se sei solito compilare le Qt4 tu stesso, assicurati di segnalare allo script di configurazione di compilare il supporto a MySQL passandogli la seguente opzione:

-plugin-sql-mysql

Se "configure" non riesce a localizzare il codice necessario del client MySQL (cioè riporta "MySQL support cannot be enabled due to functionality tests"), assicurati che il pacchetto corrispondente sia installato (tipicamente chiamato [lib]mysql[client]-dev[el]). Inoltre, a seconda della posizione d'installazione degli header di MySQL, potrebbero essere necessari dei parametri aggiuntivi per "configure" (per esempio "-I /usr/include/mysql" su OpenSuse).

Se hai preso le Qt4 direttamente da Nokia, come ad esempio scaricando qt-sdk-linux-x86_64-opensource-2009.05.bin, otterrai (dal comando "akonadictl start") un errore al Test 1:

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.

Il driver di cui hai bisogno è libqsqlmysql.so

Purtroppo questo driver non è parte della distribuzione (fino a gennaio 2010). Devi compilare il sorgente. Scarica il seguente file:

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

Quindi configure e make come sopra. Ma make install non copia il driver. Devi quindi copiarlo tu stesso:

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

Ma la revisione 4.6.1, come qt-sdk-linux-x86_64-opensource-2010.xx.bin, ha il driver di cui hai bisogno. Ma potrebbe essere nuovamente necessario associare libqsqlmysql.so se libmysqlclient.so è passata a una nuova versione.

Impostazione dell'ambiente

Il server Akonadi cerca agenti e risorse Akonadi nei percorsi definiti dalla variabile d'ambiente XDG_DATA_DIRS. Se Akonadi si lamenta riguardo l'impossibilità di trovare agenti o risorse, controlla se questa variabile è impostata correttamente. Inoltre tieni presente che anche se la imposti in una sessione attuale della console, potrebbe non essere impostata adeguatamente quando avvii il server. Avviare manualmente il server nella sessione attuale della console evita questo problema.

mysqld: unknown variable 'innodb_file_per_table=1'

Se il log del server MySQL contiene il seguente errore, allora il tuo server MySQL è stato compilato senza il supporto a InnoDB che è necessario per Akonadi oppure InnoDB necessita di essere caricato nel tuo file mysql.conf:

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

Prova ad aggiungere:

#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

La tabella 'mysql. servers' non esiste

Se il log del server MySQL contiene il seguente errore, allora, molto probabilmente, il tuo file di configurazione di MySQL non è a posto:

[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

Copiala da /usr/share/config/akonadi/mysql-global.conf a ~/.config/akonadi/mysql-local.conf. (Per gli utenti di debian e openSUSE il file si trova in /etc/akonadi/mysql-global.conf). Poi aprilo e rimuovi il commento alla riga sql_mode=strict_trans_tables. Dopo di che potresti ottenere i seguenti errori:

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

Se è così, nello stesso file trova la riga che inizia come la precedente (che hai decommentato), ma presenta parametri aggiuntivi separati da virgole (qualcosa come sql_mode=strict_trans_tables,strict_all_tables, ...ecc). Commenta la riga sql_mode=... più corta e decommenta quella più lunga.

In openSUSE 11.2 eseguire il seguente comando risolverà questo problema:

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

Per Archlinux:

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

Aggiornare a Kubuntu 10.04 (Lucid Lynx)

Questo è un riassunto di altri punti qui presenti per quelli che stanno aggiornando da Kubuntu 9.10 alla 10.04 e che potrebbero aver utilizzato un personal package archive (PPA) per KDE 4.3 come bug fix.

Installa le dipendenze mancanti. Rimuovi la cache precedente di akonadi. Avvia il servizio akonadi. Installa il database. Aggiorna il database. Ferma e riavvia il servizio akonadi.

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

Il comando precedente mysql_install_db riporterà qualcosa di simile al seguente, puoi tranquillamente ignorarlo:

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

Riferimento: forum.kde.org Akonadi 1.2.1 - alcuni problemi

Aggiornamento di KAddressBook

Oltre al rimedio precedente per Kubuntu 10.04, i problemi relativi al tentativo di aggiungere una cartella Vcard potrebbero richiedere il comando seguente mentre Akonadi non è in esecuzione:

rm -rf $HOME/.config/akonadi

Impossibile inizializzare il set di caratteri latin1

Se ottieni il seguente errore quando avvii Akonadi, allora probabilmente stai utilizzando un server MySQL con versione > 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/)"

C'è una regressione nota in MySQL 5.1.43 e 5.1.44 che impedisce l'avvio di MySQL.

Vedi la segnalazione del bug per maggiori dettagli.


Riavvio dopo un precedente errore

Se hai avuto problemi ad avviare Akonadi e li hai sistemati (come un pacchetto mancante o il problema con Apparmor), assicurati che il server Akonadi sia completamente disattivato prima di provare a riavviarlo tramite la riga di comando:

akonadictl stop

Puoi avere conferma che era effettivamente disattivato completamente eseguendo:

akonadictl status

In alcune circostanze il server Akonadi può rimanere bloccato dopo un errore in uno stato di parziale esecuzione che impedirà il successivo tentativo di riavviarlo con successo. Se hai questo problema, invia un resoconto del bug che includa il risultato del test autodiagnostico del problema iniziale.

Il cosiddetto "Gentoo-Assert"

Questo è un problema particolarmente sgradevole che finora riguarda solo gli utenti delle distribuzioni basate su sorgente, principalmente Gentoo. È stato così chiamato dopo le affermazioni di MySQL come quelle dell'esempio seguente ed è molto probabilmente causato da una mancata corrispondenza del protocollo MySQL tra il server MySQL e la libreria del client o il driver Qt MySQL.

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

È estremamente difficile da diagnosticare dal momento che l'affermazione di cui sopra viene mostrata solo alcune volte. Invece otterrai una vasta gamma di strani sintomi:

  • i log del protocollo ASAP mostrano la creazione con successo di oggetti che si suppongono non più disponibili quando i seguenti comandi accedono ad essi nuovamente.
  • I log del protocollo SQL mostrano comandi INSERT o UPDATE con valori che non combaciano ai tipi di colonne corrispondenti e ciononostante hanno successo.
  • I log del protocollo SQL mostrano un gran numero di record id apparentemente casuali che sono tuttavia considerati validi.

Riferimenti:

Possibile soluzione: ricompilare il driver Qt MySQL dopo aver aggiornato MySQL (che molto probabilmente ha causato questo problema in primo luogo).

Per reimpostare Nepomuk e il sistema Akonadi in KMail 2

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 .