[Dovecot] Migration from v1 to v2 with hashed directory structure
Pavel Dimow
paveldimow at gmail.com
Fri Mar 1 13:57:57 EET 2013
Tnx will try ;)
On Fri, Mar 1, 2013 at 10:41 AM, Steffen Kaiser
<skdovecot at smail.inf.fh-brs.de> wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
>
> On Thu, 28 Feb 2013, Ed W wrote:
>>
>> On 28/02/2013 13:59, Pavel Dimow wrote:
>>>
>>> Hi,
>>>
>>> I want to upgrade to version 2 but I would like to solve a long
>>> standing problem with 'flat' directory structure ie
>>> we have /var/spool/vmail/mydomain.com/user at mydomain.com and I want a
>>> new server with version 2 to have
>>> hashed directory structure like /var/spool/vmail/mydomain.com/u/s/user
>>> I was wondering it f there is some better solution then dir hashing or
>>> a way to hash a dir other then first two letters.
>>> Also any suggestion how to perform this migration from old to new
>>> server with hashing on the fly?
>>>
>>
>> My thought would be that unless you have millions of users, such a rename
>> process will take only seconds to minutes? Why not just take the server
>> down for a couple of minutes to do the rename process?
>>
>> If you wanted to be really clever, you could do it live using symlinks to
>> move the dirs, then update the dovecot config?
>
>
> Yeah:
>
> for dir in /var/spool/vmail/mydomain.com/*; do
> to="$(script_to_map_name "$dir")"
> if ! test -d "$(dirname "$to")"; then
> # add -m 0555 if needed
> mkdir -p "$(dirname "$to")"
> fi
> # If a new mails arrives or the user access the box
> # there will be an error for a (very) short time
> mv "$dir" "$to"
> ln -s "$to" "$dir"
> # no more errors done
>
> Then update the config, reload Dovecot, wait a bit, remove the symlinks.
>
> - -- Steffen Kaiser
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.11 (GNU/Linux)
>
> iQEVAwUBUTB32F3r2wJMiz2NAQK2vgf/V5OCGWdToQJOxCtUlZp+aMslznBpr2Rq
> XrjANVYblMUzipd8HFR7YzbHkgJizm/t5k5+OHg9xX1D9YrsxB9/9k1pMRomAuCv
> nIBWmb4JTIvq2MJihstXZj8q/z3i5OXbb7Mp5o/YgkZqx9OBfD4IJvSRT6d7vuld
> 7xCSc56zF7MlpFfXXN9nBYBFNGXvOEmvgrZNd2BtL6iSWxC7tVZbfkdLfuUS0RKv
> FKIcuESPZNkKmr86NxEegpOz8fs7ZdSrvs5ibqNdDN4+oOnKC55EwOPgY1OOhWmB
> ZdzmDAdy8ztXauWmuznkAP+FzhZV5jIBXlNJLnkj2xGsT5x20/FTvg==
> =nW5U
> -----END PGP SIGNATURE-----
More information about the dovecot
mailing list