Kubuntu 16.10 中的 Kontact 无法启动,因为 Akonadi 服务器无法启动

Kubuntu 16.10 中的 Kontact 无法启动,因为 Akonadi 服务器无法启动

我正在使用 Kubuntu 16.10,无法启动 Kontact,因为 Akonadi 无法启动。以下是 的输出akonadictl start

Akonadi 似乎出了严重问题。有人有什么想法吗?我只能说是吧?可以安装低版本的 Akonadi 和 Kontact 吗?

trekker@trekker-HP-Notebook:/usr/bin$ akonadictl start
Starting Akonadi Server...
   done.
Connecting to deprecated signal QDBusConnectionInterface::serviceOwnerChanged(QString,QString,QString)
trekker@trekker-HP-Notebook:/usr/bin$ akonadiprivate_log: search paths:  ("/home/trekker/bin", "/home/trekker/.local/bin", "/usr/local/sbin", "/usr/local/bin", "/usr/sbin", "/usr/bin", "/sbin", "/bin", "/usr/games", "/usr/local/games", "/snap/bin", "/usr/sbin", "/usr/local/sbin", "/usr/local/libexec", "/usr/libexec", "/opt/mysql/libexec", "/opt/local/lib/mysql5/bin", "/opt/mysql/sbin")
Found mysql_install_db:  "/usr/bin/mysql_install_db"
Found mysqlcheck:  "/usr/bin/mysqlcheck"
Using mysqld: "/usr/sbin/mysqld-akonadi"
mysqld reports version 5.7.16 (Oracle MySQL)
Executing:  "/usr/sbin/mysqld-akonadi" "--defaults-file=/etc/xdg/akonadi/mysql-global.conf --initialize --datadir=/home/trekker/.local/share/akonadi/db_data/"
mysqld: [ERROR] Could not open required defaults file: /etc/xdg/akonadi/mysql-global.conf
mysqld: [ERROR] Fatal error in defaults handling. Program aborted!
Executing: "/usr/sbin/mysqld-akonadi" "--defaults-file=/home/trekker/.local/share/akonadi/mysql.conf --datadir=/home/trekker/.local/share/akonadi/db_data/ --socket=/tmp/akonadi-trekker.LbKUAD/mysql.socket"
Database process exited unexpectedly during initial connection!
executable: "/usr/sbin/mysqld-akonadi"
arguments: ("--defaults-file=/home/trekker/.local/share/akonadi/mysql.conf", "--datadir=/home/trekker/.local/share/akonadi/db_data/", "--socket=/tmp/akonadi-trekker.LbKUAD/mysql.socket")
stdout: ""
stderr: "mysqld: Error on realpath() on '/var/lib/mysql-files' (Error 2 - No such file or directory)\n2016-11-18T19:16:26.102182Z 0 [Warning] The syntax '--log_warnings/-W' is deprecated and will be removed in a future release. Please use '--log_error_verbosity' instead.\n2016-11-18T19:16:26.102229Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is deprecated. Please use --explicit_defaults_for_timestamp server option (see documentation for more details).\n2016-11-18T19:16:26.102276Z 0 [ERROR] Failed to access directory for --secure-file-priv. Please make sure that directory exists and is accessible by MySQL Server. Supplied value : /var/lib/mysql-files\n2016-11-18T19:16:26.102279Z 0 [ERROR] Aborting\n\n2016-11-18T19:16:26.102290Z 0 [Note] Binlog end\n"
exit code: 1
process error: "Unknown error"
terminating service threads
terminating connection threads
stopping db process
Failed to remove Unix socket
Failed to remove runtime connection config file
Application 'akonadiserver' exited normally...

trekker@trekker-HP-Notebook:/usr/bin$ 

看来我找到了解决办法。根据我在 Kubuntu 论坛上找到的一个帖子,我做了以下事情:

sudo mkdir /var/lib/mysql-files

答案1

解决了删除本地配置目录rm ~/.local/share/akonadi并重新启动它的问题akonadictl start

答案2

对我来说这没有帮助(lubuntu 17.04)但是我发现这个漏洞

所以这解决了我的问题:

sudo apt-get install apparmor-utils
sudo aa-complain usr.sbin.mysqld-akonadi

答案3

我通过以下步骤解决了该问题:

创建文件夹:

sudo mkdir /var/lib/mysql-files

启动服务:

akonadictl start

清除并重新安装 Kontact:

sudo apt purge kontact && sudo apt install Kontact

启动 Kmail

希望这可以帮助。

问候。

答案4

这是来自 KDE 错误跟踪系统 – Bug 411093。

sudo service apparmor teardown
sudo service apparmor start
akonadictl start

对于我来说,这是第一次正确启动,但重启后必须重复此操作。

相关内容