/[packages]/cauldron/cyrus-imapd/current/SOURCES/cyrus-imapd.cron-daily
ViewVC logotype

Contents of /cauldron/cyrus-imapd/current/SOURCES/cyrus-imapd.cron-daily

Parent Directory Parent Directory | Revision Log Revision Log


Revision 33418 - (show annotations) (download)
Sat Jan 22 23:52:57 2011 UTC (13 years, 2 months ago) by ennael
File size: 925 byte(s)
imported package cyrus-imapd
1 #!/bin/sh
2 #
3 # This file is run on a daily basis to perform a backup of your
4 # mailbox list which can be used to recreate mailboxes.db from backup.
5 # Restore is done using ctl_mboxlist after uncompressing the file.
6
7 ROTATE=6
8
9 configdirectory=`awk '/^[[:space:]]*configdirectory:/ {print $NF}' /etc/imapd.conf`
10 backdir="${configdirectory}/backup"
11 mboxlist="${backdir}/mboxlist"
12
13 [ -x /usr/lib/cyrus-imapd/ctl_mboxlist ] || exit 0
14 [ -s ${configdirectory}/mailboxes.db ] || exit 0
15
16 [ -d ${backdir} ] || mkdir -p ${backdir}
17
18 # rotate mailbox lists
19 while [ ${ROTATE:-0} -gt 1 ]; do
20 _prev=$(( $ROTATE -1 ))
21 [ -f ${mboxlist}.${_prev}.gz ] && mv -f ${mboxlist}.${_prev}.gz ${mboxlist}.${ROTATE}.gz
22 ROTATE=${_prev}
23 done
24 [ ${ROTATE:-0} -gt 0 -a -f ${mboxlist}.gz ] && mv -f ${mboxlist}.gz ${mboxlist}.1.gz
25
26 # export mailboxes.db
27 su - cyrus -c "umask 077 ; /usr/lib/cyrus-imapd/ctl_mboxlist -d | gzip > ${mboxlist}.gz"
28
29 exit 0
30 # EOF

  ViewVC Help
Powered by ViewVC 1.1.30