Am 27.07.2015 um 11:41 schrieb Ralf Hildebrandt:
* Daniel Tröder <troe...@univention.de>:

Just guessing…

The signature of the command is:
doveadm [-Dv] import [-S socket_path] [-s] -u user source_location
dest_parent search_query

You supply "" as dest_parent which I guess could mean ".", and that may
be "/root" when run as root. Try "INBOX" or "restore_folder" and see if
the error vanishes.

With "INBOX", nothing changes on the output (although the script
doesn't restore properly anymore)

With ".", I get:

I think there are two independent errors.
First:
doveadm(restore@backup.invalid): Error: chdir(/root/) failed: Permission denied 
(euid=1001(theid) egid=1001(theid) missing +x perm: /root, dir owned by 0:0 
mode=0700)
doveadm(restore@backup.invalid): Error: chdir(/root) failed: Permission denied
Here I think doveadm import tries to do a chdir to the users HOME Directory and does it wrong. It uses the bash environment variable $HOME instead of the users home information as shown by doveadm user.

Why do I think so, because if I manually export the bash environment HOME to the Home Directory of the user I want to import to I don't receive this error anymore.

Example:
export HOME="/mailhome/userA"
doveadm import -u userA maildir:/backup/userA Backup ALL;
-> No Error
export HOME="/root"
doveadm import -u userA maildir:/backup/userA Backup ALL;
-> Error as seen above.

Second:
doveadm(restore@backup.invalid): Error: Couldn't create mailbox ./INBOX: 
Invalid mailbox name: Contains '.' part
This error is dependent on your namespace.
If using standard maildir with "/" as separator then "./INBOX" isn't a correct Mailbox name, because dot is not allowed. In this case it should only be "INBOX".
But as I said before this depends on your configuration.
If I'm not sure, I check the notation by using doveadm mailbox list -u userA.

I still think this is an obscure bug :)

If the first error is a bug or a feature I don't know, but doveadm import works correct with or without this error shown. At least for the things I have done.

Reply via email to