akonadi seems to make a socket by default at ~/.local/share/akonadi/akonadiserver.socket which is not cool for network (e.g. nfs) $HOME
https://bugs.kde.org/show_bug.cgi?id=179006#c5 contains a suggestion to customize socket location with by adding to akonadiserverrc: [Connection] SocketDirectory=/tmp/akonadi-myuser/
Yet upstream claims Akonadi works fine with NFS home. It seems they overlooked this particular detail.
See also fedora-devel thread, http://lists.fedoraproject.org/pipermail/devel/2010-March/133634.html and another related upstream related bug/comment, https://bugs.kde.org/show_bug.cgi?id=182292#c6
The problem with /tmp/akonadi-`whoami` is that it's a predictable name in what's usually a world-writable directory and so can be used for symlink attacks, or at least DoS attacks. Using some unique name (e.g. from mkdtemp) and symlinking it to some fixed name below the home directory is probably the safest solution.
(In reply to comment #4) > The problem with /tmp/akonadi-`whoami` is that it's a predictable name in > what's usually a world-writable directory and so can be used for symlink > attacks, or at least DoS attacks. [Connection] SocketDirectory=$(echo -c "echo /tmp/akonadi-$USER-$RANDOM-$RANDOM-$RANDOM/" ) > Using some unique name (e.g. from mkdtemp) and symlinking it > to some fixed name below the home directory is probably > the safest solution. How many chained symlinks do you recommend for added security? Three like in triple DES?
> How many chained symlinks do you recommend for added security? Three like in > triple DES? Nonsense. Further levels of symlinks don't add any security. You don't understand the issue at all! You just need 2 items: * the directory in /tmp, which is a local directory, so it can contain Unix sockets, but which MUST NOT have a predictable file name because /tmp is world-writable. * the symlink in ~, which is writable only by you (if your system setup is not screwed up), so it can safely use a predictable name, which can then be referenced in config files. If my explanation is to terse for you, maybe you'll understand Lennart Poettering's better: http://lists.fedoraproject.org/pipermail/devel/2010-March/133880.html
Oh, and: SocketDirectory=$(echo -c "echo /tmp/akonadi-$USER-$RANDOM-$RANDOM-$RANDOM/" ) is extremely unreliable as the value of that config entry will be different each time it is evaluated. Please don't even THINK of such a broken setup.
See also related issues, http://techbase.kde.org/Projects/PIM/Akonadi#Deployment_issues http://dev.mysql.com/doc/refman/6.0/en/innodb-restrictions.html
This seems resolved satisfactorily in akonadi-1.6.x, uses a scheme similar to kde symlinks put into ~/.kde/