ソースを参照

[Fix] Preserve email quota when (un)suspending and rebuilding mail accounts

Completes PR #670
Robert Zollner 5 年 前
コミット
18d0254222
3 ファイル変更3 行追加3 行削除
  1. 1 1
      bin/v-suspend-mail-account
  2. 1 1
      bin/v-unsuspend-mail-account
  3. 1 1
      func/rebuild.sh

+ 1 - 1
bin/v-suspend-mail-account

@@ -54,7 +54,7 @@ if [[ "$MAIL_SYSTEM" =~ exim ]]; then
       quota=0                                                                                              
       quota=0                                                                                              
     fi
     fi
     sed -i "/^$account:/d" $HOMEDIR/$user/conf/mail/$domain/passwd
     sed -i "/^$account:/d" $HOMEDIR/$user/conf/mail/$domain/passwd
-    str="$account:SUSPENDED:$user:mail::$HOMEDIR/$user:$quota"
+    str="$account:SUSPENDED:$user:mail::$HOMEDIR/$user::userdb_quota_rule=*:storage=${quota}M"
     echo $str >> $HOMEDIR/$user/conf/mail/$domain/passwd
     echo $str >> $HOMEDIR/$user/conf/mail/$domain/passwd
 fi
 fi
 
 

+ 1 - 1
bin/v-unsuspend-mail-account

@@ -52,7 +52,7 @@ if [[ "$MAIL_SYSTEM" =~ exim ]]; then
         quota=0
         quota=0
     fi
     fi
     sed -i "/^$account:/d" $HOMEDIR/$user/conf/mail/$domain/passwd
     sed -i "/^$account:/d" $HOMEDIR/$user/conf/mail/$domain/passwd
-    str="$account:$md5:$user:mail::$HOMEDIR/$user:$quota"
+    str="$account:$md5:$user:mail::$HOMEDIR/$user::userdb_quota_rule=*:storage=${quota}M"
     echo $str >> $HOMEDIR/$user/conf/mail/$domain/passwd
     echo $str >> $HOMEDIR/$user/conf/mail/$domain/passwd
 fi
 fi
 
 

+ 1 - 1
func/rebuild.sh

@@ -557,7 +557,7 @@ rebuild_mail_domain_conf() {
             if [ "$QUOTA" = 'unlimited' ]; then
             if [ "$QUOTA" = 'unlimited' ]; then
                 QUOTA=0
                 QUOTA=0
             fi
             fi
-            str="$account:$MD5:$user:mail::$HOMEDIR/$user:$QUOTA"
+            str="$account:$MD5:$user:mail::$HOMEDIR/$user::userdb_quota_rule=*:storage=${QUOTA}M"
             echo $str >> $HOMEDIR/$user/conf/mail/$domain/passwd
             echo $str >> $HOMEDIR/$user/conf/mail/$domain/passwd
             for malias in ${ALIAS//,/ }; do
             for malias in ${ALIAS//,/ }; do
                 echo "$malias@$domain_idn:$account@$domain_idn" >> $dom_aliases
                 echo "$malias@$domain_idn:$account@$domain_idn" >> $dom_aliases