From cb04379840266328d620a073521a512636d9f94c Mon Sep 17 00:00:00 2001 From: milkmaker Date: Wed, 24 May 2023 09:04:22 +0000 Subject: [PATCH] =?UTF-8?q?Deploying=20to=20gh-pages=20from=20@=20mailcow/?= =?UTF-8?q?mailcow-dockerized-docs@98c8d3033684a866a2230822235b1f221d2a93b?= =?UTF-8?q?4=20=F0=9F=9A=80?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- 404.html | 14 + .../Dovecot/u_e-dovecot-performance.de.png | Bin 0 -> 50296 bytes .../Dovecot/u_e-dovecot-performance.en.png | Bin 0 -> 51550 bytes .../b_n_r-accidental_deletion/index.html | 14 + backup_restore/b_n_r-backup/index.html | 14 + .../b_n_r-backup_restore-maildir/index.html | 14 + .../b_n_r-backup_restore-mysql/index.html | 14 + backup_restore/b_n_r-coldstandby/index.html | 14 + backup_restore/b_n_r-restore/index.html | 14 + client/client-android/index.html | 14 + client/client-apple/index.html | 14 + client/client-emclient/index.html | 14 + client/client-kontact/index.html | 14 + client/client-manual/index.html | 14 + client/client-outlook/index.html | 14 + client/client-thunderbird/index.html | 14 + client/client-windows/index.html | 14 + client/client/index.html | 14 + .../b_n_r-accidental_deletion/index.html | 14 + de/backup_restore/b_n_r-backup/index.html | 14 + .../b_n_r-backup_restore-maildir/index.html | 14 + .../b_n_r-backup_restore-mysql/index.html | 14 + .../b_n_r-coldstandby/index.html | 14 + de/backup_restore/b_n_r-restore/index.html | 14 + de/client/client-android/index.html | 14 + de/client/client-apple/index.html | 14 + de/client/client-emclient/index.html | 14 + de/client/client-kontact/index.html | 14 + de/client/client-manual/index.html | 14 + de/client/client-outlook/index.html | 14 + de/client/client-thunderbird/index.html | 14 + de/client/client-windows/index.html | 14 + de/client/client/index.html | 14 + de/i_u_m/i_u_m_deinstall/index.html | 14 + de/i_u_m/i_u_m_install/index.html | 14 + de/i_u_m/i_u_m_migration/index.html | 14 + de/i_u_m/i_u_m_update/index.html | 14 + de/index.html | 14 + .../u_e-clamav-additional_dbs/index.html | 14 + .../ClamAV/u_e-clamav-whitelist/index.html | 14 + .../u_e-docker-cust_dockerfiles/index.html | 14 + .../Dovecot/u_e-dovecot-any_acl/index.html | 14 + .../u_e-dovecot-catchall_vacation/index.html | 14 + .../Dovecot/u_e-dovecot-expunge/index.html | 14 + .../Dovecot/u_e-dovecot-extra_conf/index.html | 14 + .../Dovecot/u_e-dovecot-fts/index.html | 14 + .../u_e-dovecot-idle_interval/index.html | 14 + .../Dovecot/u_e-dovecot-mail-crypt/index.html | 14 + .../Dovecot/u_e-dovecot-more/index.html | 14 + .../u_e-dovecot-performance/index.html | 2633 +++++++++++++++++ .../u_e-dovecot-public_folder/index.html | 16 +- .../u_e-dovecot-static_master/index.html | 14 + .../u_e-dovecot-vmail-volume/index.html | 16 +- .../Nginx/u_e-nginx_custom/index.html | 14 + .../Nginx/u_e-nginx_webmail-site/index.html | 14 + .../u_e-postfix-attachment_size/index.html | 14 + .../u_e-postfix-custom_transport/index.html | 14 + .../index.html | 14 + .../Postfix/u_e-postfix-extra_cf/index.html | 14 + .../Postfix/u_e-postfix-pflogsumm/index.html | 14 + .../index.html | 14 + .../Postfix/u_e-postfix-relayhost/index.html | 14 + .../u_e-postfix-trust_networks/index.html | 14 + de/manual-guides/Redis/u_e-redis/index.html | 14 + de/manual-guides/Rspamd/u_e-rspamd/index.html | 14 + de/manual-guides/SOGo/u_e-sogo/index.html | 14 + .../Unbound/u_e-unbound-fwd/index.html | 14 + .../u_e-watchdog-thresholds/index.html | 14 + .../u_e-mailcow_ui-bl_wl/index.html | 14 + .../u_e-mailcow_ui-config/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-css/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-fido/index.html | 14 + .../u_e-mailcow_ui-netfilter/index.html | 14 + .../u_e-mailcow_ui-pushover/index.html | 14 + .../u_e-mailcow_ui-spamalias/index.html | 14 + .../u_e-mailcow_ui-spamfilter/index.html | 14 + .../u_e-mailcow_ui-sub_addressing/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-tags/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-tfa/index.html | 14 + de/manual-guides/u_e-80_to_443/index.html | 14 + .../u_e-autodiscover_config/index.html | 14 + .../u_e-reeanble-weak-protocols/index.html | 14 + de/manual-guides/u_e-update-hooks/index.html | 14 + de/manual-guides/u_e-why_unbound/index.html | 14 + de/models/model-acl/index.html | 14 + de/models/model-passwd/index.html | 14 + de/models/model-sender_rcv/index.html | 14 + .../firststeps-disable_ipv6/index.html | 14 + .../firststeps-dmarc_reporting/index.html | 14 + .../firststeps-ip_bindings/index.html | 14 + .../firststeps-local_mta/index.html | 14 + .../firststeps-logging/index.html | 14 + de/post_installation/firststeps-rp/index.html | 14 + .../firststeps-rspamd_ui/index.html | 14 + .../firststeps-snat/index.html | 14 + .../firststeps-ssl/index.html | 14 + .../firststeps-sync_jobs_migration/index.html | 14 + de/prerequisite/prerequisite-dns/index.html | 14 + .../prerequisite-system/index.html | 14 + .../third_party-borgmatic/index.html | 14 + de/third_party/checkmk/u_e-checkmk/index.html | 14 + .../third_party-exchange_onprem/index.html | 14 + .../gitea/third_party-gitea/index.html | 14 + .../gogs/third_party-gogs/index.html | 14 + .../mailman3/third_party-mailman3/index.html | 14 + .../index.html | 14 + .../third_party-nextcloud/index.html | 14 + .../third_party-portainer/index.html | 14 + .../third_party-roundcube/index.html | 14 + .../debug-admin_login_sogo/index.html | 14 + .../debug-attach_service/index.html | 14 + .../debug-common_problems/index.html | 14 + de/troubleshooting/debug-logs/index.html | 14 + .../debug-mysql_aria/index.html | 14 + .../debug-mysql_upgrade/index.html | 14 + de/troubleshooting/debug-reset_pw/index.html | 14 + de/troubleshooting/debug-reset_tls/index.html | 14 + .../debug-rm_volumes/index.html | 14 + .../debug-rspamd_memory_leaks/index.html | 14 + de/troubleshooting/debug/index.html | 14 + .../b_n_r-accidental_deletion/index.html | 14 + en/backup_restore/b_n_r-backup/index.html | 14 + .../b_n_r-backup_restore-maildir/index.html | 14 + .../b_n_r-backup_restore-mysql/index.html | 14 + .../b_n_r-coldstandby/index.html | 14 + en/backup_restore/b_n_r-restore/index.html | 14 + en/client/client-android/index.html | 14 + en/client/client-apple/index.html | 14 + en/client/client-emclient/index.html | 14 + en/client/client-kontact/index.html | 14 + en/client/client-manual/index.html | 14 + en/client/client-outlook/index.html | 14 + en/client/client-thunderbird/index.html | 14 + en/client/client-windows/index.html | 14 + en/client/client/index.html | 14 + en/i_u_m/i_u_m_deinstall/index.html | 14 + en/i_u_m/i_u_m_install/index.html | 14 + en/i_u_m/i_u_m_migration/index.html | 14 + en/i_u_m/i_u_m_update/index.html | 14 + en/index.html | 14 + .../u_e-clamav-additional_dbs/index.html | 14 + .../ClamAV/u_e-clamav-whitelist/index.html | 14 + .../u_e-docker-cust_dockerfiles/index.html | 14 + .../Dovecot/u_e-dovecot-any_acl/index.html | 14 + .../u_e-dovecot-catchall_vacation/index.html | 14 + .../Dovecot/u_e-dovecot-expunge/index.html | 14 + .../Dovecot/u_e-dovecot-extra_conf/index.html | 14 + .../Dovecot/u_e-dovecot-fts/index.html | 14 + .../u_e-dovecot-idle_interval/index.html | 14 + .../Dovecot/u_e-dovecot-mail-crypt/index.html | 14 + .../Dovecot/u_e-dovecot-more/index.html | 14 + .../u_e-dovecot-performance/index.html | 2633 +++++++++++++++++ .../u_e-dovecot-public_folder/index.html | 16 +- .../u_e-dovecot-static_master/index.html | 14 + .../u_e-dovecot-vmail-volume/index.html | 16 +- .../Nginx/u_e-nginx_custom/index.html | 14 + .../Nginx/u_e-nginx_webmail-site/index.html | 14 + .../u_e-postfix-attachment_size/index.html | 14 + .../u_e-postfix-custom_transport/index.html | 14 + .../index.html | 14 + .../Postfix/u_e-postfix-extra_cf/index.html | 14 + .../Postfix/u_e-postfix-pflogsumm/index.html | 14 + .../index.html | 14 + .../Postfix/u_e-postfix-relayhost/index.html | 14 + .../u_e-postfix-trust_networks/index.html | 14 + en/manual-guides/Redis/u_e-redis/index.html | 14 + en/manual-guides/Rspamd/u_e-rspamd/index.html | 14 + en/manual-guides/SOGo/u_e-sogo/index.html | 14 + .../Unbound/u_e-unbound-fwd/index.html | 14 + .../u_e-watchdog-thresholds/index.html | 14 + .../u_e-mailcow_ui-bl_wl/index.html | 14 + .../u_e-mailcow_ui-config/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-css/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-fido/index.html | 14 + .../u_e-mailcow_ui-netfilter/index.html | 14 + .../u_e-mailcow_ui-pushover/index.html | 14 + .../u_e-mailcow_ui-spamalias/index.html | 14 + .../u_e-mailcow_ui-spamfilter/index.html | 14 + .../u_e-mailcow_ui-sub_addressing/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-tags/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-tfa/index.html | 14 + en/manual-guides/u_e-80_to_443/index.html | 14 + .../u_e-autodiscover_config/index.html | 14 + .../u_e-reeanble-weak-protocols/index.html | 14 + en/manual-guides/u_e-update-hooks/index.html | 14 + en/manual-guides/u_e-why_unbound/index.html | 14 + en/models/model-acl/index.html | 14 + en/models/model-passwd/index.html | 14 + en/models/model-sender_rcv/index.html | 14 + .../firststeps-disable_ipv6/index.html | 14 + .../firststeps-dmarc_reporting/index.html | 14 + .../firststeps-ip_bindings/index.html | 14 + .../firststeps-local_mta/index.html | 14 + .../firststeps-logging/index.html | 14 + en/post_installation/firststeps-rp/index.html | 14 + .../firststeps-rspamd_ui/index.html | 14 + .../firststeps-snat/index.html | 14 + .../firststeps-ssl/index.html | 14 + .../firststeps-sync_jobs_migration/index.html | 14 + en/prerequisite/prerequisite-dns/index.html | 14 + .../prerequisite-system/index.html | 14 + .../third_party-borgmatic/index.html | 14 + en/third_party/checkmk/u_e-checkmk/index.html | 14 + .../third_party-exchange_onprem/index.html | 14 + .../gitea/third_party-gitea/index.html | 14 + .../gogs/third_party-gogs/index.html | 14 + .../mailman3/third_party-mailman3/index.html | 14 + .../index.html | 14 + .../third_party-nextcloud/index.html | 14 + .../third_party-portainer/index.html | 14 + .../third_party-roundcube/index.html | 14 + .../debug-admin_login_sogo/index.html | 14 + .../debug-attach_service/index.html | 14 + .../debug-common_problems/index.html | 14 + en/troubleshooting/debug-logs/index.html | 14 + .../debug-mysql_aria/index.html | 14 + .../debug-mysql_upgrade/index.html | 14 + en/troubleshooting/debug-reset_pw/index.html | 14 + en/troubleshooting/debug-reset_tls/index.html | 14 + .../debug-rm_volumes/index.html | 14 + .../debug-rspamd_memory_leaks/index.html | 14 + en/troubleshooting/debug/index.html | 14 + i_u_m/i_u_m_deinstall/index.html | 14 + i_u_m/i_u_m_install/index.html | 14 + i_u_m/i_u_m_migration/index.html | 14 + i_u_m/i_u_m_update/index.html | 14 + index.html | 14 + .../u_e-clamav-additional_dbs/index.html | 14 + .../ClamAV/u_e-clamav-whitelist/index.html | 14 + .../u_e-docker-cust_dockerfiles/index.html | 14 + .../Dovecot/u_e-dovecot-any_acl/index.html | 14 + .../u_e-dovecot-catchall_vacation/index.html | 14 + .../Dovecot/u_e-dovecot-expunge/index.html | 14 + .../Dovecot/u_e-dovecot-extra_conf/index.html | 14 + .../Dovecot/u_e-dovecot-fts/index.html | 14 + .../u_e-dovecot-idle_interval/index.html | 14 + .../Dovecot/u_e-dovecot-mail-crypt/index.html | 14 + .../Dovecot/u_e-dovecot-more/index.html | 14 + .../u_e-dovecot-performance/index.html | 2633 +++++++++++++++++ .../u_e-dovecot-public_folder/index.html | 16 +- .../u_e-dovecot-static_master/index.html | 14 + .../u_e-dovecot-vmail-volume/index.html | 16 +- .../Nginx/u_e-nginx_custom/index.html | 14 + .../Nginx/u_e-nginx_webmail-site/index.html | 14 + .../u_e-postfix-attachment_size/index.html | 14 + .../u_e-postfix-custom_transport/index.html | 14 + .../index.html | 14 + .../Postfix/u_e-postfix-extra_cf/index.html | 14 + .../Postfix/u_e-postfix-pflogsumm/index.html | 14 + .../index.html | 14 + .../Postfix/u_e-postfix-relayhost/index.html | 14 + .../u_e-postfix-trust_networks/index.html | 14 + manual-guides/Redis/u_e-redis/index.html | 14 + manual-guides/Rspamd/u_e-rspamd/index.html | 14 + manual-guides/SOGo/u_e-sogo/index.html | 14 + .../Unbound/u_e-unbound-fwd/index.html | 14 + .../u_e-watchdog-thresholds/index.html | 14 + .../u_e-mailcow_ui-bl_wl/index.html | 14 + .../u_e-mailcow_ui-config/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-css/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-fido/index.html | 14 + .../u_e-mailcow_ui-netfilter/index.html | 14 + .../u_e-mailcow_ui-pushover/index.html | 14 + .../u_e-mailcow_ui-spamalias/index.html | 14 + .../u_e-mailcow_ui-spamfilter/index.html | 14 + .../u_e-mailcow_ui-sub_addressing/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-tags/index.html | 14 + .../mailcow-UI/u_e-mailcow_ui-tfa/index.html | 14 + manual-guides/u_e-80_to_443/index.html | 14 + .../u_e-autodiscover_config/index.html | 14 + .../u_e-reeanble-weak-protocols/index.html | 14 + manual-guides/u_e-update-hooks/index.html | 14 + manual-guides/u_e-why_unbound/index.html | 14 + models/model-acl/index.html | 14 + models/model-passwd/index.html | 14 + models/model-sender_rcv/index.html | 14 + .../firststeps-disable_ipv6/index.html | 14 + .../firststeps-dmarc_reporting/index.html | 14 + .../firststeps-ip_bindings/index.html | 14 + .../firststeps-local_mta/index.html | 14 + .../firststeps-logging/index.html | 14 + post_installation/firststeps-rp/index.html | 14 + .../firststeps-rspamd_ui/index.html | 14 + post_installation/firststeps-snat/index.html | 14 + post_installation/firststeps-ssl/index.html | 14 + .../firststeps-sync_jobs_migration/index.html | 14 + prerequisite/prerequisite-dns/index.html | 14 + prerequisite/prerequisite-system/index.html | 14 + search/search_index.json | 2 +- sitemap.xml | 210 +- sitemap.xml.gz | Bin 2207 -> 2226 bytes .../third_party-borgmatic/index.html | 14 + third_party/checkmk/u_e-checkmk/index.html | 14 + .../third_party-exchange_onprem/index.html | 14 + .../gitea/third_party-gitea/index.html | 14 + third_party/gogs/third_party-gogs/index.html | 14 + .../mailman3/third_party-mailman3/index.html | 14 + .../index.html | 14 + .../third_party-nextcloud/index.html | 14 + .../third_party-portainer/index.html | 14 + .../third_party-roundcube/index.html | 14 + .../debug-admin_login_sogo/index.html | 14 + .../debug-attach_service/index.html | 14 + .../debug-common_problems/index.html | 14 + troubleshooting/debug-logs/index.html | 14 + troubleshooting/debug-mysql_aria/index.html | 14 + .../debug-mysql_upgrade/index.html | 14 + troubleshooting/debug-reset_pw/index.html | 14 + troubleshooting/debug-reset_tls/index.html | 14 + troubleshooting/debug-rm_volumes/index.html | 14 + .../debug-rspamd_memory_leaks/index.html | 14 + troubleshooting/debug/index.html | 14 + 312 files changed, 12271 insertions(+), 108 deletions(-) create mode 100644 assets/images/social/manual-guides/Dovecot/u_e-dovecot-performance.de.png create mode 100644 assets/images/social/manual-guides/Dovecot/u_e-dovecot-performance.en.png create mode 100644 de/manual-guides/Dovecot/u_e-dovecot-performance/index.html create mode 100644 en/manual-guides/Dovecot/u_e-dovecot-performance/index.html create mode 100644 manual-guides/Dovecot/u_e-dovecot-performance/index.html diff --git a/404.html b/404.html index e1cb43507..ecf732661 100644 --- a/404.html +++ b/404.html @@ -1653,6 +1653,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/assets/images/social/manual-guides/Dovecot/u_e-dovecot-performance.de.png b/assets/images/social/manual-guides/Dovecot/u_e-dovecot-performance.de.png new file mode 100644 index 0000000000000000000000000000000000000000..a59c9910fc3208d60ca0bac08317c14282aa1e99 GIT binary patch literal 50296 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 WLpgE5@N!V=Vfwm8I>px?zWgugi-L*( literal 0 HcmV?d00001 diff --git a/assets/images/social/manual-guides/Dovecot/u_e-dovecot-performance.en.png b/assets/images/social/manual-guides/Dovecot/u_e-dovecot-performance.en.png new file mode 100644 index 0000000000000000000000000000000000000000..1ac56392c7cc25d0b6cc76e42be05e3242c7690d GIT binary patch literal 51550 zcmeFZ^;cBy_dYCADnlzB(kk5zDj+DS(v5U8bTU5Uq`&PGDb?o--nXz zqYBx-4>R45fh_-=F_C_s1;{Poa@&CUT)%W}< znag>5#s+^O1K(8B2lZ(K&7Q$*1M#UQhL1}Bn06n)641Q9UR}SD9;WYOy{>+sGA1k0 zg)IBIA;@je{)C$SySIngqkr8ZZKbR&_cL`_Hs((i@Kv-Jm5pl5i;_Yk?f!u&4bR@= zv$m|kW}UI0i!5o3|GJDt#qSq!(^731RZ=k2&m#794QOfh_5xL1)rW8`$#Q~VqKx4W z8d?K84mMx67ZRT5{^L4kI8C>oU)UftjQylNWIR6GW@`?D_}>+}LwdK8p=FjMx$o?R zGMaM4dwLLBRiEDb+IT2^5B1lEvoZy%><4Si=`QCV4hvR|UX zB5`nuqfl_=Pz@vDR6P6@rIJNw#OMCsUH`zY&f~}=4KI;icF!28u+w-F;4?8q{Z89( z`!KdGO@?{@Q2oiE6>vml5`>ilnWa!4w3x{3{9gwHsmj&tg`K8?-K zFz;!YfW73NlzScN_n8?-1XmfB1zDM`K{yNP{)Hue_22Y2QbLI)XPG2YM zdeL5!s&O3KW)K)fJCE9CHhIu0{koH-koo_dXPZGNbJ`{rsa&8_QIP~~aeQc-!oq3- z?cKkah8=>1Ioe%1a60-tgg~ya@iZFIwS6Z#18pU!T-LF5p?EuC6im7f0GW!oAAV zFz1^mg0dvUcFtdCal%ajgpO09C$9PTb{>1&&Yt=n(o#R;j=JY`AQR)e>5_4HlSWAq zp+xTO7^%>D;v*v~%Nktc1ZB#~^fNR759%nmPpDDDIm`9Bk>#c9P*g1tf@#0In9b<& z;k_ouHc3=Nw<*Ec55;a5CxZ}-;87B+6eS_%ECL1d`+QsXr2919CZ~#(=oofRaF?y+ zy0AYhei5Wjm7#*Df%XCw>O7Fka04$+wn7~AYSyE!7j*pSlQ6g>>Vl}tblSNC>O3By z-kEJo_$bOA7c5aTG8PI!vAQL)>r)x_Eh6hNz(*Zl=S#d`EPL{sXQr;W@2i6Je%UY8 z{LGsE<@!G1@J&|7ff)=MoNd0pOTis5cHhvqi-SM_wEO#D0_^&;Jm#YwZCLaWsg|Hso@I)D23RzBKh0F9H0~Gz^H2x( zpHi71Nr!i(6O0Z8NuUoEJSj;GQ@&<&xcKU`)%mo#^?~TDm-56T5{~lBWNJvVUp%T% zF&T@Hv3K(w-E*-_Rq9xb$P_zSBuSI{?(FF-H3vJuCyxK9I5hkraWlU)KL(T_WV4#3 z-re}No|3UF4xz0NIT6&XgMBLPA>`CqVtOKLJ)AWDwPe*;9zR^Xc(d=Z6#sHgF9%8* z)}Ndz{L;fF$p?iO8;z%el}S+#d>X7pW&)(-Fcdr6qfX3V7;$mY&|Nnt-nKP43a;w# zh}ANFP2VXXq#*MZGHpHF*KE78>^m6 z#9|qU_gazYwa|&eC9xPki-1Qeu%sy=um4?o)1bn|Sf__VuM!6AIY%PCm$T2#w?)l3 zduwnyEs3byW(y1B#rU5`PAhNC4+(n$(bo2lo;5E`l532Vb55Ov>2`vpVfSHY_}M#9 zUZOZG=G^BtiW4P2>=^(aV`=UplRA);?_RrhX>wu_09|*1wsTXwR3o)8(;*)GF&_th zVkbBSH--aXs9n2Vw?b$aZ=n->_sQM?zvZrg&4#bRB=kGmId88qjpa)sfk0q~TStru zqa-zef95InD`70_r@L)o^GmtJXZ!ohW#Qt-{tk>~(D8vcBR?ejnvYpunCj?H6M<6N zb?v_TD4AG2q&%OeY;#l=zv>IZL=0`dP@8*7;^2bkb)A;Z`^iEZQlQ=dni z`PCQ0ialRs?%@mdqQuV5FD=Vs}=>2vnfi z7#%6R4LpM}7|BEym9K=)4J1uchWE;MjwkeD6W_(Obc$_XX6n?%xmXy`G;rMO6fy)8?h?x(1BVXp<4;FwObbsZDlW@*lx~Z`rnlpOu7cod?XX@ZZ{)!?Y zEAZ_{4oUpouK7xr7!!YU+$WW6v*QBUWxLB~7#~Fb4Q?`r^Y=_SD3|Chv<;6gUPaJ{ zPO>IQc&syVluLEm`;6qe08IMMB%k}AhO-(Tcdk=p?AV%PETN8W9tRzu@E`8dYvPMe zmPcHcOaDq4MfF=$H$38mbRZ=d!NMX#+r>jwu4cYuL-rO+9V5hbPh9x*Ypn2gEcd!P zzR=nJ)F9Tj?LWupZIm@Y-&wx><*#q|Y#+!7n)|IqvMwI2Tq$%LfPEGixg-O~kcgBI z35Qk=%E)sV*)1wX($24_#xV`lhy`tMXCTj-ZZEmSijR=_=<*p-S9>VkHai@xF&(5uBNhj#m=+p&+=sJmSX*QLAb`JNKP z_fx2Y>DC(p_XBDXkhi8^Fnz$DHKv1)og%;E)pE*SqX1H z5o7B(H}t_nBp)qs8%ZtKN-w#6jk_D{8Y)tCf}cjs)aS(NoIYITO@*BSR3&CRxgBQ3 ze`rmrLG=Ox&imc`0s@xU=qQeBG&V(RNA1a-Rp<_Eo4!IDBKo%a_%X^J8ar1NV_buI zK|2<-1+Dp686KHkD`ndz2lO!_`dOI{J#OU>a1KDemPqPM@0yXG0%+EZ`E zsQF~6tKP1NkU`UC`ps12A64}JXy)ilPuB3=Z9%AM@$+1OHL{J-8(wI@7anlcYvF$d z@zeLa&|kc`8(}1-|N0b~rqP+H!=mrfqkns9n{hErkHT+g`F#A$(SO(m3|zl{HI)uV zs3jbJm99&&E&B>dDb&4KYm@3+$?MOR+KAT&j@d2Vg7|+H(MYiRs7RnF%A3syd{7?8 zN8Az;Yux002Ah5-l9ts@i_3UHjp-t8fP!LLwrC)yL=<}^9W zsa*9mUIHJ48=I?w2GUU^Ybc7;<}$d@ww2CS4ieFEF_+?Gr6>Ok!snTLz>R(1LhibhE#F zSX9e8BERS+WSPZ#ZnmgKUYNr*B8Lz>{G5@3oaL4r=u!pvw`7)-Fn9iWw-S{p!|c4; zJ*%d5KE%`Wp#&oSzPu@Zv&K*&(N85f(yJUpJxSj4wweriXISIieueK0IT(mSIIZ`% zoL{19kMfLmX(q(vmo`qMAZIVmY@4RlB@m2^{K=*q7B9w&{XbAu{tdDlA-?&aTw__xNA zNrLRf=XI+33ifVxN^$1RVAPPD@7e+a;05%klEWJ~KQ83@G`srwm2{J*DdycpLsa;+ zv42%UC`9kh9sj@|sT1N4^KAAR4eQx{5|TZQgqG2tD0lUfkKZc}e^5c^zuH|lN-aEz zU%B5=7ZV1jkh%#%g689H9qKJG22%n41mPb`5Vcx=P-jF(YfyaAbK~1woy62YVcYrU zx5aq&6wTups1e^9_Gv%W_UiRSxUlm|1Ag9OU764b?qaR~XxM@$`(SUecAQ79p$F5L zZA(2XG82mwWr(TWR-00HyO;jzpf0iH_DQjJ-FFM69h!bu>A$wEt>1q{PS!%ewqoMx zW&b4xOFRIocX1EzMJ#He)m!dK_RaDesWY&PcIB_&kuokZF|h~1^A!z0myp+|hSe9X zs#Q%HWo8L>LgG)~M5EMm0@hu~kqOkPRX-ZDsL7XJxk)Hn1YahtGfkiSu}WP{WZW;| zeeu>aiTMq;Hd4Q9$FS8#i6t%8)bq$C70`II;3$VF|l!VNXwJEIu!gb$qOACLRAKIG&C-9?Y zohBV5plpR2pu*y7kL3Np=8)94VOK87a?Qb|WuBgU9La`qnT}fZCZ?J0`5GBX9{lv1cyexWag?3=@|TOE&(F{cZF74% zky>?KBAEZ-xm^&nBjQ-1S17dPeo5{GQKy7iHG?#o0LM7Zn!Dyy4Q>twtTP4cetLag6n&S5O25&$}{6*C{EEj7UtIJZx&_2+()I8moCHF zXjVO4iVkX(((b<=KM)cdodIvf`cM(M=U>-_y2iniU=DbcAU0?!_R^!s1xky14Y>$ahE_=@AXA zv~*>PTlbaM?D9+VXFdK7QEo%>A2cY}`R_azzuoL_4jnJ5O1#`5A`f)*?6KJxp{u_$ zvAS5f+h2ov(6RzJi?!5`>bUhpmnC%#$yN%WdcUU!Z8*F$^f&Z^+>oVL=Yx`6(zl>X zth?iQB(6dJ?J1Zk1a$w&&XLOGjsvrIscLk;2wTTm^EBV=7y4^oHk8z)f)I6;nTcos zGU3Tkwz$(B8fC%}RM+jt=o~sqm%^P@FcKW8UZ9f!;q)m_Z2!VOZfKC|3_pJskcI~SSRm0T00zpR(9tXt58o+o z4jpKmWlnti`*$LRY476nz*lhl3v!XLR#l;?x8IAiTrJttMuhnK-K!Q1u+kozeA&Yb zi-xayzHipfRLBJg8@?fWo>Nkkl5qUu6H7t8Ayx?sz@?gojC~ZZ>&w3SXC)y;4k}un zUlrak-;su`(n;xKt=gM)@_aEpV9OZ$cDQMmQ~MFMYjjB9D3sO|0=xn%_L*n-Z^q+4 zu6vvT9+U9B#v>%O`qgObh-<$`DRtEm6S98=H`-sdy?GteawRV6`YWS6;5GpR#m*k1 zW<-t9{8Zx`#XRsL7)(`H(w>-dv$fF% zj*o)P>Y#JduG}#Ym#ct7rvy&bn(@W>bw{IG=XO7CvAUqS1F@lTx%EupZk}dB|9u8J z-!)m$-JmW5iIYuW>)C~(^$&62`^QlY^G?I}Tak%-es%b#oagAf@PpV64-}bjf94h` zY~^lG7jAM@TOaQC(?6r#T}yVnz(bUlce&xmNsOthVZ-DQLTWm^hp9z1hqtOy?J52- zsdWbqmJ_DRzNgvT3}ORLai65?dc-!EB4uf$P6-jbmaz7y3Ok{-kZivQ%sTRQXYb)$$zdw@1zp_hGt`gi`MNdXGIC&Vpkq1A`iCX`-78d zT-4tAAAk ziEnWgq-9)KR1%t!+eCphS`hmyu&k@#x@z&RkuGJ~Pe2m$C+d?Ux&DivEI4&vbp;oo zUv)EE^iiJk$bja^c0W-ZqKed~DNLuAMG7AAVcytb><*b8Onx+QubP=&#le%&*MICOm2t zN5=vK6#aUUBI0a8GvQFX^;ZI0T^&J_5&g||*Zh^5=~A2D(&|+YyS)E|?FfYcwGJ!w z@fg&RN+9&-*EkPGLyx>MTfa|Ay`t89i?*~`vkU>yeaX?cE{dOjC%zbXF@RV8D02ic zV@L{&m6$b?`om-mtnl~Ju#m%%PnUERnZd^W4dkdrrw_^T7^Xjrsz@rZ(gbLgAy)IJ zkHbCe3gDhh#=!YXgIL^IfQCz|6YR7+*9^v(u+Yz|DM(2(jSc^@xBu~jZ7uE}>ZeEFD?(5y`&_UZ!5^?L zMwSf}!pBP`R!-U|N)0}WqZ&Au@+TsSdK39ZH8W4q*23jB>K07vvDA4c9w0-3)qpUe zF!@qk#$H-xdUiZDWZ3xmxKYRRNTlH&l)x{VR;C5+Y=?6H9Y@=7;%engBcmnsMrcU- zM^gOrcB;aC^_N1_1U8{m0HnQ(k32}$cUj5e;;eqNZ7|IPp}(%eS=L8RByT8 zb;Q1OoI1~4Lzia9v+KQ2z52RjdI3dGd$QuYa?Phd4e$ih`{!C42TpNEH-0nXUwK*~ zQCpK%?Q?lFIn}Mx_#@N6M;u2mK(!#4n7g^xw7;_>#*5z9^$`0VIvmZD?RCIF&`Hk-N_%@RsHB!eI?j#n@AoBY?%VY9uB>A5yZ5gcy#S}6Jo-+B(t6#Lg-@l!s1I@6!m&Z)T!xDb_0<-BSrLN6cu)=Khaz+W80P?JGG4cn#mTeyYE0HcAdeP*H7@ zU|P`oo*%J-UG_R#15#7vzKS=6x{4Wlwdr)yE&U#%ca)wXH^$I+Qo(FGa|hTg-<~H9 zlfqDWxxR-;ufxOh@7COBE_x-VU~VY&1!H9n7w={*HMsH%`p+rChtU29B7kow<74O5 zt;52%xx16pkZUyc1nGbO%h632+E-&!_&XG`rI1bI+WLxe?yD0lAAz>=QoIbx$<>)Y_Ll5Wlzg`Q|=#?&<0l)M(dHWlt& z_NHr?>2SUtrHkEP>hHQk*^-s$LVibOcXUqeM9P}N398WSn>~%0EQ&ZL^Fa|+N;$kU zwJluU|3+DtV7EO+_UbZKV-jj{(W{tN{Rv-%`B6}uY! zygB&zu(cipp|c;r1{D44G)OM>UCwSb?yWP4}xUS;f_11XO0v zp=Af(meud;^L}^lYYE@SU;%zFy^c1=srwZ5hDPdg-{qO;Pf_F|W|r@Ytty~N|G$tv zB=~X3mMN|555l^|J|>Ruq*c~TRC?9T@5d0u3t|$ltvVcXIo3_BA-m=<{@U^h|1>J4 z3N?m1d(=*wpZHcE$^^L2SSey#?t|^dE}Wo(0-RFE@`^a1_n?0avcEQJ>M`netp?p| z_`XBRLgTV&c4@(Pa>F4`*OF=wC*7XOQat0dj?ZD>fe~*7kj}WD`Ry)|sR_Yvw=jMiRq+M$1_` zA99E1NL8RxDOT_Q*vXfARk}xcwtHaQ-$^==S8n*eXZJGb36_VnQxaOP(*xU>?-l7g zf@_M4bgHXtMzP!b@#mwge;{0%$!Y!yoXGVC5bEy6d+{9H1lko(R*4I!PvOU&c6an! z&`rsHobdev2K@y>IUi(wM$qH;5A=O3A9d+b@+*%qYXqD6C{K!hkd=Kjox-)E?SYL~ z{Ja0M!6gq~FF-#de^r^ME-=)Ka{=b(gh5vu=@g-DNtZo?v%Xgc*7GefvT~f33x~Qd z$Vylf_vwI~u{*>#Qu0De!?(DO1v}?C`g!M!074pgS6>D%4tE0H6v5u_fgA(9v?e=z zgpm(v6f6^ur;JV~%`S!KfdVs$pUfks$PXh8M|bbvONTc$;7@YsKk^Uic+y~!zhFNs zus_TDEj4XNM8G|HbkabobNs_IwB-+lA%p;z#`dM_khb}r>|5su8Tmv%^2c{)k$5_7 z?#BrWwXq%6p7y7s6E$)9HTH+z8$(nQN(EYe_P(P%Wi<_poNPYlk>4>eV84?!IQCHo zez@XSAg%?Zv8hqudLu|{{+DliW5V0)LigI372+q~OZ^USp$-(cUKCM((dN8AdTeH8 zuFcDWUNoO?-soXJ-yp2TZwweDibJkIGLE;4e|gP~-o&sD2x<+%K@1iySJUN^9g8|h&XY1)7WN>l*@28>bJsoq-gE5ESO17HlGJZm%^8Pe0foxET8^9#Lsp1wI9Ay<>gb4fizMr|LSA&@?={ ze>hk1(*oqU!Jk6wA$qjJ}YduC;0C9s8+f8u%~89+qU1JGngQw zJCn^@X&Gg2y}zL~liNh?;Kk)oAmh5c#;0rSzJri+8O@$X!w0hRMc>RL6UekC3I`ep}4a6YS;U6&+& zAl{iMj)N1ax@Q-X*!fL+Xg&O{$)(#~Iav-l=!u|)(zsp?*X<+XWF%7A*f-!=5z`Cm zb}nLVuxc4~{FIb8JQmTUILb`?do4ogTfVV-g7F9iV&doXwJBcuN#2j3lDyHQKuH3r z3lT*j{g-der+y62%YVY8hxcf^9>wHWrx=IkxWW+k11Do-hNaFa$K9m4=Mb#RBP+>fc)IddE|O|ywEU-c`8Y|O7FeB9a9->l z-NL-Yr*{D;O!=$ZRv#l=d8%;kep>5uW3(8zPCmR*q!{jhZF+PL>p-_Qv^fb4l4$`N z{f>h9$T%q^66gB=VREEKo}uX6GPP|^*a{{L>Bnc0XlPt+RgMXXMWV(2<`b_$(1Hr{ z>ftdt2h;mdu+&8a#Ndw%iG#1Y&`_Ag?PrSo3VZ*z+hjVFpPt3$fC5EJbaW&)&%%%c zIQTALB5ZJ?MW>H_{nELNU>x_Es8F_j+|*xQ3FV;yWM7|4Ts~)IbXT3_LuZF>&_FBg z3Dd1+EG`!K&C7ijGUx(ei_E^Myk!clj~I@iY52U;=ixbBba4U|B9E(XcZ%wR%iwAw zHXR+5TT3wQJLdH$n2T6O#%1dW35rKL1-L1ag?(4n8(KEXzn> znXNNuYgqM3Y2qvSRRbrCm;S9|9J?*&-E}hLVuPHEmIrSo_rkpS%$)sV+e1~|S&&Zk zs1Pm8QEH7)SCk1iJ3m2`6t7RWEkRmkvhpV|YNmj&^3oO2X)ZH##Rn~`BU-XOzddX5 z>s_UFlyFgdnm7#dJ)+Kd&Q5#L^+r*z%&zh8WKVR#aA%K}GClp{Bn&_kd>-d$1P$;< zy>;KSFJ#^aqLISzHrQOwI!Wq1+Cn&!A01+fTb;GHU1ji}_Z*y&gr>l11#k)3qWoir zE$2-Ca&OA)@K_E@b9*KbX=OOvdw1@d2RWiGKb46+6YMQ4>N@A_yThmd?Gp_y$8NxK z+-?KPBG?W`nD3PTrZJWh`m&jU64K$4yE}VK1i7;p)|x*N)6DX?sJD2bR4}3aluYs{ zGff*mg{X=)x`t%1p34A2HG9){gXwMbYQIm?)s?b#6B==Xrs>0W-X)PpD4j@>{d(0q z|HEYVt<52l7!jtC^v6*ucJCLoT3eC>E;cVPK_f%idIR!H{Kvc0e-vzZHsQ(5)lyqc zSh?^1Dh7EGy4pl-)Q~RR>U?NnbEtN;Cbpf=91zB@k861mEVnzs`E&r?zYOKha-AM5U(9v!k=3;4$Ao1 zx8X?71Gas(2dwTA)752$?fhk5g*VR>x>ppl8?7eSjShd$p-bABJwDB(r;XJ8Tj#oM zJ3(*$-!y1h}1!1F!nrRhzyZsYK@r zQmn@`&lwrR#7Ex`o_)uG3DK}+4P$HcQUu$9N=^ka=*R^5NSO1SAyF4e;j^olz0-kESJkH{`>sKqqY4g#HW5)hr0);-?{Q)@=d%7 zLQ0DeP-){*{ov9dn(7l}2tKFYL9?6MLGcenRdGQ=7H2iyZ(&Mme1^=YVHRa=mtBh{ zZ9h4=qoT#uJ(N$+2iWD2eWc31>*9LI%dB~{!huCRL<{c3IH`P2dGXqm~>5hOwO z7ny`?vdW>@b9E=MPiTtWZoC)Y;qOz8+Upg5;+w_YWiy>v^S~(HFhOh<+2laIDk&^D&~R4 zoH>js4+|_k(%%-`U%ZIF`U9!mS9>!HBdP%{KBIf=shTR2Wv3Sxj;O=`6?m22vdtZ< zvpe2Ed_bAzduL6A$dR~t2wIZOD`QK3^uOX~8n>j_cF(%09gEeBsNR!q|4g2a z-d|+-I|K*Uj1V6$*!v201dTE@^>b6dM-2M=(Z<=;3Z`wJTJ(84j|&eKjUP$WR* z`JWmJM%~{0#K_K)7b0-unn`qgW?25ti&XmjVyL;D9R|<(F}QSB9K_Oxr@KD-e_p${=0q2`b;ac)j+2vK z@8gcPMK|h=e1FTz2*`J) zD3MX#dZU8J)05M*15aZhO*WhRXAI-pj*-s7NnX`ZccNw;q~jV8x9@y zjwo=oS$h>C+dx%fKlUQy?)8HIw8_5Tk9gbiOei`zMK_jUCqE$$ZXch_wAeY*y!AzY zJm+fH4IGGbv|pKWykXZeln9R!7OJo?f1;7h%LvXXmF#K_F_1Xy1Nx%^t{|?j9yWm0 z(d5tc^m9?`9H{tLu)ZmZor_9)Tl51aivI2s+Y@u*vW8D|Ww!N*jyJ8>rJSa}>vHn> zG3c*%W%QdXgZ}iUq(9M6*X&hbt=^qk=qUA|StAUP>Psevu3SKAuDqlE60Lgvv=^X5 z3IWyP#kD2pM(kDW;pPS@hN+8fdcgHi2#3*!jtTCJK~Rn0ki)Z_5{}m%b*kvk?8WEm z5kYVE{g*eRv(x^m?EZ;sf0|8f7tgdDyw5%fm6cm+`rU^J3e@F$xw?>|aYL$BYHA?E z(4}{Ve)nWU4*7%#fu1cY4%t1HWU^}(VOkPv6$ljT@JzoEtDb?eW>9*{F-#S=bQV=G^f)66S z%U+W45u|9-saObUvlA?n*Fy5rU376D@u%r)Xvd);u}!ce3m5kI7kvV~%R15l=Hd4D zRE4Sflbtnl%Xv9-#u)m{^Kn+d{ddJSGoJ9lXT_zE%aAtNIuU03^@^@x@2=wEwj0*8 zvNP+k0~_W!LZJjDb5?t+yzJpoo`C1V%}1E#?d`Unb)LgG2PVHms^_XyO!l-^o0X`)hpTcr=|0UMCJ^S#PSpxlaUf z+p@7=?J&BDh&7exl~GqIuzSuRgEDaa<637G>l=6J#4E|B0A46{fsZ=SEB;vwt~+p0 zSXy37&!qzz|A*Y80zZ3`mSWXmRZu{gW?@5^ZMVFoY++ilrVn0+>$y9qc?w4UJ4&)< zZ6r_Iwg43J-^_gc$;-8t261b29r)d^i6{P9!)H3h6cH&IVStBz++_A1Fr&(Fm>Z- zIwhYscZyy6PwUt@riqWpGhV3u(~|xnaF5gF;xyK!4~q*d&eOfUZv_uRFM(g&d^ivQ zlU110cZ2pv!@nrIRi2`j3YrRly`ft7BDKx*`RT|9qIzep)|jp@*o=B~^+t)_V4C>` zEDwdo%4=!0-?W`$WDP@bLbb|vh;&o++{@rcrcs{{pE1+_+ll|^L>;N`-@4~3#&?8K zO)6HVxNPaU3tKweqz{lAk24u2N`BoN7)Bd#``jMaLuC+zHq@6AtN1@&W+=s5MVF#( z(ys0frLmz(R(-=t6j*Gm)^F8^bDS5CF}m>bz=|(+js^=y){o$i%D)Hy+nf%ZnKOjO z)#`V**1lUEQ!o-~?Jl`e%hyQ-Qb($smBmHXq(mS{Vm#sC z$YwPM=7F2GyXWF`4Y=G??4FW8T^kR0MGQj)RRf5}WS?s*N^Aq`tE02+S|ZR(`?+Q( zf$iVEL-^#R0h*;5c1z-t83R1aLhxmB%{4e0&Or>}^`eHMFhA8Q6j+ak-)hDdrR=)+>We*mj~y^-fz;IJ^L16oT(3L<{bUtJ5DsH+Fs6t9|_P zpZO03Vzb}}b^AIHXk8Yx((E}g?nag$OJusv3=f5qktt18zl!_(E&qM#k7|U4Te%$X zJ=Z_-ij>LwOuWCnY`Y7qF)_KRh-S#@CkkaNT1&~i1MKfKgEBn8isRY8AKwNvAp%Kv`Ho>o zA)c)Z{s?L1X3}ZLwz+<)kK+Xps@BOswGkI|aAj6K+ZrH^?ylm{(KakGNCN(6>Sjm_ zw)%}@vGJ|Rc6th#<-%D%l;cB8X<@t-0D?kB&f0h2()e^Q96mnloOu;+H=&PtbH9K; ztrgv+>gLrSqZm~a#YgbpgYSZDH`EL?-cS&fwTd;a`~N1`|2igvdsY2X?k$bS=WycJ z4w{{8^yhfEwbF)8ZhAymm_-$3^;SYr2qiZOwvTt)e@~=|V%NVSJsN4!*}hF-=PqKH zD$gcaqpGt^*rV~>6dDqE;PbghS5ad1Jyjfu$|=ulQ*@Du?z{{7AmrP(N5ZCnG`lm| zCz?a+EULD7*Q0F-oBl)))~J>_KAgf4@i%{gof!$`YsT4-B)7$Pdq>=3qvzHy;{2kD z%e7y+*(-Cs+=3iQ#5%Nwn++02f7FiqUg<=GJMDI)Pd@Di%#5V}ZWW!=*qr}k$AzX4 z5!Y{P@rs+od?_)m%5spknNh>U!1?r)qsTt5aZ68t=0+gd{!WIuiTu0o^4b=B@`u*r zzXs{juws=-`*&Huzm)`9@S)PO-J#k~AG}^&Pqy>DtUkKg4P1`~Zf;wd9x!>RXnU@U z5xk;sZZ3#{!3g+TRT;?&zBdLB9P_o4fJjN}Lt!7@ldzE;^_hhP>-mVrGCX+Q*qD(2 z(YmBYHkbI_I}+Kv_a*q0it(xVGIR|$!W@P!LdJc-OrI4OS->Z5@Jj5@dKZ@7qb70N-{qN=40(=-@UEJjpMpk z5;htvEgSfWrVCq3ni>KOA`Ob<1&x>qqZV8U5pNbAJ}h_Nm+W33lnOe)t#@#EU_ya~ zuFvD8WWVyLidwq4Ff40a)8Do&deFHVu1%(>EcXyHCyp#T;p=reA4Qum-OiQpT4%AB zqUMJWnj?#QdRx1jW?P?GJi)^6BFrCLbEwXr%A<=dMx$`vQLQlS3afRhlx#NwJ-X&_ z1%XE|N0A~16K{34rQS6j6l7e4YEWBoHne`*8yKC${ChCd>_N8Q0cS~i)04KQ#HYWo za%gMcdQo6a4yQpW5&Gyh0>HUWH`3E{@FR`1bD&jzeX?jQ+^OVevJc&FB_dG0!#ZA)TM$G0n;47}>`=h^~SJlUSmY`ouKfa*Vx-bbWa>f*UnNNU$S$&_f( zy{Ooly&mnt{XMr9e3-w@8ns?4PXBE(D=^0gc02>iGONHJX?451xXbbx?E_ zog#o;?1rinmGED6ZlB&*t2jo>6jf)@#?6Po$%O6=>xzF%yP8eam-8|gJXAYkC&IkO&%}>Y9^ELN8JDMv)y3`O>{*5iV*jFDf=IoQBx0 zG1Fm*>+VGL?x?vQ2ruYtgjqhW20*DWB``$is^?~a=|f1vuyZB1kZK6iB^i4lxNch9 zi7tLyYLTb8TD%N2@A`5)KsBEjT$rxoQt?vHcJAw?9p$t+f(eD@Fy!iP7SZU_{kon| zZ*ZDzrMqFKpM;z2y8+R3p?L?+GAT&Gx794nlJ{@e;EQg@HC-+UKo3|QsH$l?h**a{ zH6c+W2B~^3a}^LHl^5zHIR34kcc7laSOK zay4_diJ8wQ^)vB)-lr<yy z^(xsx21uI<4?i3CG@h<6s_+gcrZSyzI!gANJF6y&>eyMLLrgiwu6Xghnq9V5Ri6Kw z+rBZjFQeK?DD)Z9QR|$RS{fcHeEq3%9vaead9;o0j<%%`xH6^y%{M(K?^KdCd>p#+ zg(03ivT8lY=K|qzjh`xs#CAnXq+P0QGCN0k-SCH8(wTVRH2UYpPD6Kd*OSDtsM&=ogD9l?KK_gr%JGGP$$=XiGYCiEZ5~2C7hu~p66xy zGQjCmrci7&Kw45l zapb>~;bzfQl+W0Oo7Zn1l5vb2A`c3jT0{n64o@Y1zDhwf+AUSbeTNC5JLbZpb8IJO zbZmc?JS%Aa6lr#atERsi)m7Bdq3r#No;-}*8T0j&-cy$UY4cTlQzRy=Cgmvry);%59mRLI z`kLipudUM<5-I(>D5X#T32pr{L~EZt4G#yN1>6NuC~88#qdT8Ejg65^a0;-eGh0wL zo>G5Vq}$h|8F|<%}yx)mp4l<hy-G+}{a_q9UFp1a z|F!K=NFWd3p^PF0=-fYWr!mt5_5xO}Bef!fi@Qs|+(3ZbDRRop>0+|wjJFD9Q6ztF zXb7u5Ffqz=w{?j_4^>n+9r+d&vm^Zhy+9FnV_|iOyMY_r$PVD z>aiu)-W=GF#8{j`b?b8QIBL=&Ev8qlFmh_@V<-4A zbF&iu=ZN?k=FAh6x?+i4AnjfX8=ImZWm3G%6Tr+?&|X-m))(sgU$?iv<(-NYBu`=E z=lp_^U}1oF?i2LtMGQ;nj@~NVJ|_J;wmj|*e%_VttwK=20}7F+x_aRk9aL7*Q`eIf zd1&^Ef&`19_bd2YSSv%=$C38y%NOrV$4oLBF++3q@Tyg?v`h>o%W)j%mM!^z2@8ID zRQi?Aq8$M0HR%2Z=OTUcPY70c^_nAD`(uB92xe&wjkVprEtNwcS6gBHm6;O8Of}&| zWX*B|7oO!5(P{JBC2499`pd```)F~n9DB1M`Ls&^nHoiupy12QM9h+QLMt1|v4egJ zg^SU>?8W%-niN@q&RiYA`dEGwnHS*`v%dw()^XK?MXT?5T#K`q{yRmV|CE7YYVEfo zs(6SO6n!wUI2N|06_ot&8xv-iQm@DFK0&v*%8DE+Q&u3Iw5fvouTK!(%qkB}*?aKG zz{uRR2W;X0rd+|=_w{=EQ(-uL7S+s6AN?@M0v&Ti%~f|El^EvKs3#{^e9NKgT9bX* zOEKO*0>suHb)?AoNWcoZU(%oR&scvx5!q`!-ul7>Ub8BxEj#zoxL6O>#eHRuoSMm$ zRK7O)Rau@)br9J$j(PQy6PN{1Q#| zwcZZ|FA~`@W>aIfX7_+hIy9Wn?N8~?KvqX*s&DfDz5cx%LG9I$0AuIjRu`FJ6?AW@o}|jc1v-34lspNl2VwRXzP{@^}bt5-e~HE z(k52^OIJPw@?hDyM`UX=g3;lQ@^KP{Ge!zk10nY>w1!b-=1z;Ru`U@i0ckVDOG-{Q zp$R|2Qe{g4c;EJ!{repW+!^fMl|q8&@?^PV4vax1K7Pa__xW{6Tn(kVs<7yrO(C|wp+TlHum;D@If7m{7cB2({ZQx^ z=B2MVj#%|*W^h&CN!d~*dTuyXe5~I02T}k3$JAMeMYVkoA5=m*q)U)cx;rGKBm||q zySqVYba)840UZ5D>p9S7R zwDT?HdG)n-;@ddDSvjdD5Lux?aX3luIA{1O>H0?fGX<{E+#+vejiYTz?Mn+QYcB(z z_&*e+c{m(yHa^kI2lJHC;;_@3|Gq>;3Xpwe3#HJVU%4gOw1HN41|q||It_t4MH&u_sfy` z%**U*Z2z5}C@??|Xm3-MBEUhdE=*~T-s3s@P+ay-T`?3pB;A#`ZiUP}NG9|8>Sym} zlWSQRUKlo0aqi;Kp-SPK^@0gUmzpu}eME+!%L#i|p$rDu>lDYb^+CJdH^#t;Qot&p zoNgbRc8;uf!U}Lce>*5*Mj_nt%Xzk!S-CYqhtqO^!~>gP=GM^iUkBk$`zl5tgKl$2 z{J2mkl2zY552{#8N77QHUmbf*K{hALA-|C;(CPq-FBz|**sS}yIi7C?L)*7tA z^nP8)rQJ>_XXeGf>1Ayj3L_#99j$+_GxH<@wHOM*B`r-hzYVi*UzDuAZ)7w^s-X7& zPp9Hr&PJjxFk8?0W(5fMr3doT4oI6F?GK@Xpc+Vug2d3e$t3(v3ItW4iN3uztjAQf zCfuzU{L6YxQQv4wfG>&YRD!$hEzOEoC;aFF-k?*VX|iZ{i5oo+M1(gr($4Ts8O>@% z#^mcem`FZP!!Zp^Wx}XROKXAQ11(~!gSQzM2ucQO?G8VGHDyZv^3)VXj9{U0w}HD$ zY4ZD7K=!ZF`@sxP zZwT<=BO_@)*6p30J_P+br8ZHOePDnJ*>%02#J{W!)iyVbVpzoVwP%*;uK+j;rssm$ zc;%U`KzR6$TxE5ffxyN+dL}Hr!#$@VwYETmJLf8Bb~8_#4Hrx#6s_6QlmQd0r>%v< zfs@Bx=Qui^Lb?CCLHd^hErdQFpADY32i6l#HSS-kj$~%|?kCyJ?XBH29s$yciO|aXKs}3Z87~s(BRQmxnh~jEX^oTF_xr@W|LxJ*0&9C=?d31$3 z4dGpUbrlb7pmE@ML_#z0JGo5f79B{V#8tVA1Lp@6BWs<<=VNk9TGCJF!YUt%Hj(sz zLUVW`PCfs3x`F6Zxefo{kznz)dtJ@fZVdmxkN85FK|{>QjXbE6cO4&Gb{# zKKj_?xmi?3yJzCilczFK;b?R?O+cuLIz91i8GpM>TjJrD(Z2h!wX=XHlQ1WrK8NyA zMd!F{`1l+P?*R5UaHd2{k>Jdo1u=1N2TV2yp_7w2REavweCdBIEF@iG0HD_+s3GxRckL8z1LPoD=axU5#8OTGxSTk zZ`CNq@QWFn1CcYYkbqTUhLiuUp57*G?d9LYE$xhmv>A{<_G%rnynMa-?KQH=|L1=8 z;e6wntssCN5mXV?FMcI%gbF2zSYZ&Ah8Prm-%Gk2|{ z=_^vJNJh4C=RgL|{_#U4oMKP5asRyC4;2AEKjxg@ULzGj7&?vRABu|C zW|?1EsM(z;rQg&*9qLiB_2-y>8uzD&VHs_dwX^oDHUwJUen5=+DQRTCJBRyEcJ_m> zfu%edeH3#u0~Z~Me_EJFX0K9`wAK(t%<59;IuS;Sc8yJ(zR*ZH^1Vlm1nTFYx1vJF9v+ z0vTSVNCXipCti3la(gg1n9N|mqWK=bEPfc#zedy;1iYh`Scl9D5$Pfed$uzvvb5nU z(=ND@rX5;K?urmEeE4r8TGDeRKLR?gGr24nGVx%E)?HR2>;kjk6acsMfAqGP7x*uM zI$7Fcdf`1e_yjdrJ$%KlTKyADbKIu**>Gr1s9J*tfPxp8);c2|fSS;?5C)=pCT95% zAWvrsm^ydzm}rM@M1oWjSm427(ZlMR-pmbF+Hg;G9DU2*Opy>xI#W`18$kHBf@tkdz zL^#vB|LDJCwCIWknh`7*LAbq6ue*F3p-jDD3E|Cd&9%7T2;U1Sm*r4MjJz7z*Sh>9G;rger1)H{%e1nJpVPB}*Bsg=JgG(?9s(nqt5AK5R zsDP%JQ)6XsslF3>Dt}sk1TD&WXlO9Thl;1vyRv}Y<^~%#31&nvP=q#qX60F*ux^)W zex8VV$6msl#EkFLjRrrsT_Se2|xK{wLAe z$1T>f9R0^v7B~?@U%V<{fHVq3%Y_OVGSYce7|gm!*mzae?WBcUzS1{Zx^!o!<$YRP ze%emrL#3_w9opp8ni9^^kSW0*vwFF*1e6?KtzZ!F*Vq*i81xyldOkR08G$1Uf@!2} zZ>hxcX`;_4FugAip4OK&Y)I_5vr)aUYR`UaHI=<@EeGynC|E?E5CQ285ieMAaBcd} zNB+4isOpsx7J}vYL^dtd_k~;;KX6i69C{EwD6$)O>8-uT--_c zD~0bPb=uZ$QYN^YXa+zW03ji3qtI-$+Gmw@S4_FXYz|*Y<;9r9&fX5blj+ZmrW#I; zO0PlV<9xLzY6I8v$2<6;A#P&819>XbBAx@;BxeTzMLRFV-40Jz-4w#DXyz_IQ)C7~ z-?yd$oJwDLvgg# z=*LXM59@R`OfE4axF-&G`7-|Xwg?a`$oDRY#Dl{w(1Fhuu*69`LZDY?PMT>wZw%n1 zL|l_Jk!-1n2l_MdyD%DJtEyOza##XmW5<87b1>2NlC$(YR86lpF`kI^V_b3NS`yR+ zvjjoJ?Mw@bw}QAMB`Ea^mL^=y_f_pQ7Sjj4{-OkC5uMV)s=XmL37?ja zz%|e044cX0eH>{JP?r|U>j(a*Htf;KvNY5FWK)SN#%-B>yOC2zMn0z`)HxV!5sv8TjM?hI3 znXXKLD*NPd$A|wi#_1))7aga!D!a+=y-$+@Qig$ym@vMgwsPm)%DwdZ))es$Yopm~ ziKWc$Fmbnwg=O)j5;f5v)oDOCCWBmAn0(GwBA6XkCM)$Mjl2ZP-4+%?#BvOS5GzY+ z9ckjyy~aNAL-UyY+wN3fP~=*g*{=b9yD$-B2#%FZx zHRdQ6(C!qmOt&ry+bQg57SL|5sm19DQ4R^1;;d7Lvw(Wf=O0!!HRLf< zNtgM98Du)~=q7B?9d1i3QAd8DCTB*!?b@7$8h3N*D0+`3gAp46Zn=7Q5a`+{({+bD z({o>ecVYf_N#R;Js!8?sezhGxdfMgS_7+vr4Bcxb(64Bjp| z9Yb;Y1OP7{W zm!LvZoq|GTWTfeM;H2rebU{NZfuVbc%20#fWaXxiR(BOD_F1al$6w}(`mG#2)_N1r z%kdKU^ofr~pW+>6rYg<3^V

    )!8

    3sy;V{9Ff-&l-JLME(8*7IMA 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 XF7-1VUq|YpXR9b{+$*|c`tpAP+7tV> literal 0 HcmV?d00001 diff --git a/backup_restore/b_n_r-accidental_deletion/index.html b/backup_restore/b_n_r-accidental_deletion/index.html index 33058a841..a68f7ced9 100644 --- a/backup_restore/b_n_r-accidental_deletion/index.html +++ b/backup_restore/b_n_r-accidental_deletion/index.html @@ -1738,6 +1738,20 @@ +

  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/backup_restore/b_n_r-backup/index.html b/backup_restore/b_n_r-backup/index.html index 68e26b37e..14158ff34 100644 --- a/backup_restore/b_n_r-backup/index.html +++ b/backup_restore/b_n_r-backup/index.html @@ -1785,6 +1785,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/backup_restore/b_n_r-backup_restore-maildir/index.html b/backup_restore/b_n_r-backup_restore-maildir/index.html index bf3c1dae3..6c0f2c9e9 100644 --- a/backup_restore/b_n_r-backup_restore-maildir/index.html +++ b/backup_restore/b_n_r-backup_restore-maildir/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/backup_restore/b_n_r-backup_restore-mysql/index.html b/backup_restore/b_n_r-backup_restore-mysql/index.html index a3739d5e8..be96e3006 100644 --- a/backup_restore/b_n_r-backup_restore-mysql/index.html +++ b/backup_restore/b_n_r-backup_restore-mysql/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/backup_restore/b_n_r-coldstandby/index.html b/backup_restore/b_n_r-coldstandby/index.html index e48ff184a..38d828938 100644 --- a/backup_restore/b_n_r-coldstandby/index.html +++ b/backup_restore/b_n_r-coldstandby/index.html @@ -1754,6 +1754,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/backup_restore/b_n_r-restore/index.html b/backup_restore/b_n_r-restore/index.html index f9a7d7986..c066367c2 100644 --- a/backup_restore/b_n_r-restore/index.html +++ b/backup_restore/b_n_r-restore/index.html @@ -1731,6 +1731,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-android/index.html b/client/client-android/index.html index f73f55ef0..8fae3177c 100644 --- a/client/client-android/index.html +++ b/client/client-android/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-apple/index.html b/client/client-apple/index.html index a7857b4a1..ffd09554b 100644 --- a/client/client-apple/index.html +++ b/client/client-apple/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-emclient/index.html b/client/client-emclient/index.html index 938202620..0015aaf6a 100644 --- a/client/client-emclient/index.html +++ b/client/client-emclient/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-kontact/index.html b/client/client-kontact/index.html index d8d33171e..190254d90 100644 --- a/client/client-kontact/index.html +++ b/client/client-kontact/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-manual/index.html b/client/client-manual/index.html index 0a726e35b..36e893a09 100644 --- a/client/client-manual/index.html +++ b/client/client-manual/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-outlook/index.html b/client/client-outlook/index.html index 62a66cfa5..d70214f85 100644 --- a/client/client-outlook/index.html +++ b/client/client-outlook/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-thunderbird/index.html b/client/client-thunderbird/index.html index 78d17070b..c781219f2 100644 --- a/client/client-thunderbird/index.html +++ b/client/client-thunderbird/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client-windows/index.html b/client/client-windows/index.html index ea58ef9f0..6a564f0ea 100644 --- a/client/client-windows/index.html +++ b/client/client-windows/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/client/client/index.html b/client/client/index.html index 7fb04a99f..2c8cbbb7f 100644 --- a/client/client/index.html +++ b/client/client/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/de/backup_restore/b_n_r-accidental_deletion/index.html b/de/backup_restore/b_n_r-accidental_deletion/index.html index 9908d95dd..8f23a5358 100644 --- a/de/backup_restore/b_n_r-accidental_deletion/index.html +++ b/de/backup_restore/b_n_r-accidental_deletion/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/backup_restore/b_n_r-backup/index.html b/de/backup_restore/b_n_r-backup/index.html index 57c0da16d..1a809b88b 100644 --- a/de/backup_restore/b_n_r-backup/index.html +++ b/de/backup_restore/b_n_r-backup/index.html @@ -1785,6 +1785,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/backup_restore/b_n_r-backup_restore-maildir/index.html b/de/backup_restore/b_n_r-backup_restore-maildir/index.html index fe5a135a3..db3fc8772 100644 --- a/de/backup_restore/b_n_r-backup_restore-maildir/index.html +++ b/de/backup_restore/b_n_r-backup_restore-maildir/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/backup_restore/b_n_r-backup_restore-mysql/index.html b/de/backup_restore/b_n_r-backup_restore-mysql/index.html index 8348a2c0b..a1e811120 100644 --- a/de/backup_restore/b_n_r-backup_restore-mysql/index.html +++ b/de/backup_restore/b_n_r-backup_restore-mysql/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/backup_restore/b_n_r-coldstandby/index.html b/de/backup_restore/b_n_r-coldstandby/index.html index 007a2cea0..c7725e422 100644 --- a/de/backup_restore/b_n_r-coldstandby/index.html +++ b/de/backup_restore/b_n_r-coldstandby/index.html @@ -1754,6 +1754,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/backup_restore/b_n_r-restore/index.html b/de/backup_restore/b_n_r-restore/index.html index 60282ff4e..49569f93f 100644 --- a/de/backup_restore/b_n_r-restore/index.html +++ b/de/backup_restore/b_n_r-restore/index.html @@ -1731,6 +1731,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-android/index.html b/de/client/client-android/index.html index 78c28ef60..8e4a297f7 100644 --- a/de/client/client-android/index.html +++ b/de/client/client-android/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-apple/index.html b/de/client/client-apple/index.html index 4846a6862..909903301 100644 --- a/de/client/client-apple/index.html +++ b/de/client/client-apple/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-emclient/index.html b/de/client/client-emclient/index.html index 6c4c1b96e..21c020ab3 100644 --- a/de/client/client-emclient/index.html +++ b/de/client/client-emclient/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-kontact/index.html b/de/client/client-kontact/index.html index e4d96229f..efd1cb9a3 100644 --- a/de/client/client-kontact/index.html +++ b/de/client/client-kontact/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-manual/index.html b/de/client/client-manual/index.html index 6be1b6d8f..c859ca9bf 100644 --- a/de/client/client-manual/index.html +++ b/de/client/client-manual/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-outlook/index.html b/de/client/client-outlook/index.html index 2649d018a..a944bfa80 100644 --- a/de/client/client-outlook/index.html +++ b/de/client/client-outlook/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-thunderbird/index.html b/de/client/client-thunderbird/index.html index cc9fb8c14..a58d3dc51 100644 --- a/de/client/client-thunderbird/index.html +++ b/de/client/client-thunderbird/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client-windows/index.html b/de/client/client-windows/index.html index a5d64e8f9..9b2a05a54 100644 --- a/de/client/client-windows/index.html +++ b/de/client/client-windows/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/client/client/index.html b/de/client/client/index.html index 6597fa471..0fe54994f 100644 --- a/de/client/client/index.html +++ b/de/client/client/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/i_u_m/i_u_m_deinstall/index.html b/de/i_u_m/i_u_m_deinstall/index.html index 378345d3d..cf88af92b 100644 --- a/de/i_u_m/i_u_m_deinstall/index.html +++ b/de/i_u_m/i_u_m_deinstall/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/i_u_m/i_u_m_install/index.html b/de/i_u_m/i_u_m_install/index.html index 9f9e82cbc..a94013c10 100644 --- a/de/i_u_m/i_u_m_install/index.html +++ b/de/i_u_m/i_u_m_install/index.html @@ -1824,6 +1824,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/i_u_m/i_u_m_migration/index.html b/de/i_u_m/i_u_m_migration/index.html index 3ca8dfa2e..550b63931 100644 --- a/de/i_u_m/i_u_m_migration/index.html +++ b/de/i_u_m/i_u_m_migration/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/i_u_m/i_u_m_update/index.html b/de/i_u_m/i_u_m_update/index.html index 92043a69d..a6f3567ad 100644 --- a/de/i_u_m/i_u_m_update/index.html +++ b/de/i_u_m/i_u_m_update/index.html @@ -1811,6 +1811,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/index.html b/de/index.html index aaeb95a96..09d21a6e1 100644 --- a/de/index.html +++ b/de/index.html @@ -1770,6 +1770,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html b/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html index 5f4763acb..bd6096fd8 100644 --- a/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html +++ b/de/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html b/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html index a558920a6..75b24e6b2 100644 --- a/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html +++ b/de/manual-guides/ClamAV/u_e-clamav-whitelist/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html b/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html index 476fd3f8b..e16e8929c 100644 --- a/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html +++ b/de/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html b/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html index a1775bbb5..b162bea56 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html b/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html index 7afce825d..c1eef9409 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html @@ -1689,6 +1689,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html b/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html index 3371a8055..192b13532 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-expunge/index.html @@ -1758,6 +1758,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html b/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html index c6d96d2b4..87eabf2f0 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html b/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html index 27d200fb1..6db18ba2c 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-fts/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html b/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html index ece1a2037..d8036a7ca 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html @@ -1762,6 +1762,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html b/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html index ea15d3cc1..238733199 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-more/index.html b/de/manual-guides/Dovecot/u_e-dovecot-more/index.html index 36aabff94..aa8fb1ef5 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-more/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-more/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-performance/index.html b/de/manual-guides/Dovecot/u_e-dovecot-performance/index.html new file mode 100644 index 000000000..c47f11473 --- /dev/null +++ b/de/manual-guides/Dovecot/u_e-dovecot-performance/index.html @@ -0,0 +1,2633 @@ + + + + + + + + + + + + + + + + + + + + + + + + Performance Optimierungen - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Performance Optimierungen

    + +

    maildir_very_dirty_syncs

    +

    Dovecot's maildir_very_dirty_syncs Option ist seit mailcow Release 2023-05 standardmäßig aktiviert. Diese Option kann die Leistung von Postfächern, die sehr große Ordner (über 100.000 E-Mails) enthalten, erheblich verbessern.

    +

    Mit dieser Option wird vermieden, dass beim Laden einer E-Mail das gesamte cur-Verzeichnis erneut durchsucht wird. Wenn diese Option deaktiviert ist, geht Dovecot auf Nummer sicher und durchsucht das gesamte cur-Verzeichnis (vergleichbar mit dem Ausführen eines ls), um zu prüfen, ob diese bestimmte E-Mail berührt (umbenannt, etc.) wurde, indem es nach allen Dateien sucht, deren Namen die richtige ID enthalten. Dies ist sehr langsam, wenn das Verzeichnis groß ist, selbst auf Dateisystemen, die für solche Anwendungsfälle optimiert sind (wie ext4 mit aktiviertem dir_index) auf schnellen SSD-Laufwerken.

    +

    Diese Option ist sicher, solange Sie Dateien unter cur nicht manuell anfassen (da Dovecot die Änderungen dann möglicherweise nicht bemerkt). Auch wenn diese Option aktiviert ist, wird Dovecot Änderungen bemerken, wenn die mtime (last modified time) der Datei geändert wurde, aber ansonsten wird das Verzeichnis nicht gescannt und es wird einfach angenommen, dass der Index aktuell ist. Dies entspricht im Wesentlichen dem, was sdbox/mdbox tun, und mit dieser Option können Sie einen Teil der Leistungssteigerung erhalten, die mit sdbox/mdbox einhergehen würde, während Sie weiterhin maildir verwenden.

    +

    Diese Option ist bei einer Standard-mailcow-Installation sicher zu verwenden. Wenn Sie jedoch Tools von Drittanbietern verwenden, die manuell Dateien direkt im Maildir modifizieren (anstatt über IMAP), möchten Sie diese Option vielleicht deaktivieren. Um diese Option zu deaktivieren, erstellen Sie eine data/conf/dovecot/extra.conf Datei und fügen Sie diese Einstellung hinzu:

    +
    maildir_very_dirty_syncs=no
    +
    +
    +

    Achtung

    +

    Bitte nutzen Sie für eigene Anpassungen IMMER, die oben erwähnte extra.conf, da Änderungen, welche in der normalen dovecot.conf geändert werden möglicherweise nach einem Update vom GitHub Quellcode überschrieben werden.

    +
    + +
    +
    + + + Letztes Update: + 2023-05-03 12:19:46 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html b/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html index 0a499e06d..48275dd96 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html @@ -11,7 +11,7 @@ - + @@ -1693,6 +1693,20 @@ + +
  • + + Performance Optimierungen + +
  • + + + + + + + + diff --git a/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html b/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html index 15112cf48..154998495 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-static_master/index.html @@ -1689,6 +1689,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html b/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html index 1fa00d0e0..e7ba1ec58 100644 --- a/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html +++ b/de/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html @@ -14,7 +14,7 @@ - + @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Nginx/u_e-nginx_custom/index.html b/de/manual-guides/Nginx/u_e-nginx_custom/index.html index ee1bf1ae0..3721eaf69 100644 --- a/de/manual-guides/Nginx/u_e-nginx_custom/index.html +++ b/de/manual-guides/Nginx/u_e-nginx_custom/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html b/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html index 9633af9b2..6c9d51345 100644 --- a/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html +++ b/de/manual-guides/Nginx/u_e-nginx_webmail-site/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html b/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html index e8daadabe..1d680098b 100644 --- a/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-attachment_size/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html b/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html index 245e994ef..ef97860dc 100644 --- a/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-custom_transport/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html b/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html index 53ef34732..b77802f8e 100644 --- a/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html b/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html index af171e38c..42ff2190f 100644 --- a/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-extra_cf/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html b/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html index 76ac3f384..1e0abac3e 100644 --- a/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html b/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html index 5eb49b31a..11c761c6d 100644 --- a/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html b/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html index 05f20e578..63b54b6ca 100644 --- a/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-relayhost/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html b/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html index a4ff2a925..59963e8da 100644 --- a/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html +++ b/de/manual-guides/Postfix/u_e-postfix-trust_networks/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Redis/u_e-redis/index.html b/de/manual-guides/Redis/u_e-redis/index.html index 05e5786a9..ff070e6f5 100644 --- a/de/manual-guides/Redis/u_e-redis/index.html +++ b/de/manual-guides/Redis/u_e-redis/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Rspamd/u_e-rspamd/index.html b/de/manual-guides/Rspamd/u_e-rspamd/index.html index d7df5c18d..89d1aab9d 100644 --- a/de/manual-guides/Rspamd/u_e-rspamd/index.html +++ b/de/manual-guides/Rspamd/u_e-rspamd/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/SOGo/u_e-sogo/index.html b/de/manual-guides/SOGo/u_e-sogo/index.html index 4b9aeb115..1cb43c59f 100644 --- a/de/manual-guides/SOGo/u_e-sogo/index.html +++ b/de/manual-guides/SOGo/u_e-sogo/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Unbound/u_e-unbound-fwd/index.html b/de/manual-guides/Unbound/u_e-unbound-fwd/index.html index a772a926f..0e6bbfad3 100644 --- a/de/manual-guides/Unbound/u_e-unbound-fwd/index.html +++ b/de/manual-guides/Unbound/u_e-unbound-fwd/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html b/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html index 1a16dd73a..f9511d6e3 100644 --- a/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html +++ b/de/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html index 1b68f7761..3acdafd0e 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html index fc6a37c79..fe30c1393 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html index 7ef7ff1ff..27c2e8b89 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html index f18dd548e..3ba93659e 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html @@ -1745,6 +1745,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html index 4c55b8db5..2099f2b88 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html index fe0fd4cae..47f83ac51 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html index 8b3c82dd5..7a88de566 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html index b78af9ef3..6f6ad4b23 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html index ae9e44eff..e3bf44156 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html @@ -1731,6 +1731,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html index 87420b07b..383010616 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html @@ -1752,6 +1752,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html index ee9bfa9c9..b3ddf9ca9 100644 --- a/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html +++ b/de/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html @@ -1792,6 +1792,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/u_e-80_to_443/index.html b/de/manual-guides/u_e-80_to_443/index.html index cb7335ded..e6316f58b 100644 --- a/de/manual-guides/u_e-80_to_443/index.html +++ b/de/manual-guides/u_e-80_to_443/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/u_e-autodiscover_config/index.html b/de/manual-guides/u_e-autodiscover_config/index.html index 419834a80..2f9ab3c57 100644 --- a/de/manual-guides/u_e-autodiscover_config/index.html +++ b/de/manual-guides/u_e-autodiscover_config/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/u_e-reeanble-weak-protocols/index.html b/de/manual-guides/u_e-reeanble-weak-protocols/index.html index f8c47f924..547bdce8a 100644 --- a/de/manual-guides/u_e-reeanble-weak-protocols/index.html +++ b/de/manual-guides/u_e-reeanble-weak-protocols/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/u_e-update-hooks/index.html b/de/manual-guides/u_e-update-hooks/index.html index d6f090068..aafa52f5f 100644 --- a/de/manual-guides/u_e-update-hooks/index.html +++ b/de/manual-guides/u_e-update-hooks/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/manual-guides/u_e-why_unbound/index.html b/de/manual-guides/u_e-why_unbound/index.html index 4b7828ae5..1130f4511 100644 --- a/de/manual-guides/u_e-why_unbound/index.html +++ b/de/manual-guides/u_e-why_unbound/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/models/model-acl/index.html b/de/models/model-acl/index.html index d33327784..293cc8834 100644 --- a/de/models/model-acl/index.html +++ b/de/models/model-acl/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/models/model-passwd/index.html b/de/models/model-passwd/index.html index dbc0bc22c..b1060a037 100644 --- a/de/models/model-passwd/index.html +++ b/de/models/model-passwd/index.html @@ -1736,6 +1736,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/models/model-sender_rcv/index.html b/de/models/model-sender_rcv/index.html index a2adc7caa..2ff2c9f47 100644 --- a/de/models/model-sender_rcv/index.html +++ b/de/models/model-sender_rcv/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-disable_ipv6/index.html b/de/post_installation/firststeps-disable_ipv6/index.html index 588f0ac29..4a7ac2436 100644 --- a/de/post_installation/firststeps-disable_ipv6/index.html +++ b/de/post_installation/firststeps-disable_ipv6/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-dmarc_reporting/index.html b/de/post_installation/firststeps-dmarc_reporting/index.html index f2d22275d..7bbf63cef 100644 --- a/de/post_installation/firststeps-dmarc_reporting/index.html +++ b/de/post_installation/firststeps-dmarc_reporting/index.html @@ -1757,6 +1757,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-ip_bindings/index.html b/de/post_installation/firststeps-ip_bindings/index.html index f268ed9b9..a1e08ae00 100644 --- a/de/post_installation/firststeps-ip_bindings/index.html +++ b/de/post_installation/firststeps-ip_bindings/index.html @@ -1736,6 +1736,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-local_mta/index.html b/de/post_installation/firststeps-local_mta/index.html index 5934bb598..5608a778b 100644 --- a/de/post_installation/firststeps-local_mta/index.html +++ b/de/post_installation/firststeps-local_mta/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-logging/index.html b/de/post_installation/firststeps-logging/index.html index 3c2dac92d..6c057d097 100644 --- a/de/post_installation/firststeps-logging/index.html +++ b/de/post_installation/firststeps-logging/index.html @@ -1776,6 +1776,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-rp/index.html b/de/post_installation/firststeps-rp/index.html index e9c43ace6..1a376a675 100644 --- a/de/post_installation/firststeps-rp/index.html +++ b/de/post_installation/firststeps-rp/index.html @@ -1771,6 +1771,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-rspamd_ui/index.html b/de/post_installation/firststeps-rspamd_ui/index.html index 52838e0e2..3be6b297f 100644 --- a/de/post_installation/firststeps-rspamd_ui/index.html +++ b/de/post_installation/firststeps-rspamd_ui/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-snat/index.html b/de/post_installation/firststeps-snat/index.html index fb3bbaf1c..5a82c7d18 100644 --- a/de/post_installation/firststeps-snat/index.html +++ b/de/post_installation/firststeps-snat/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-ssl/index.html b/de/post_installation/firststeps-ssl/index.html index 8ad7bc6cf..96939227b 100644 --- a/de/post_installation/firststeps-ssl/index.html +++ b/de/post_installation/firststeps-ssl/index.html @@ -1818,6 +1818,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/post_installation/firststeps-sync_jobs_migration/index.html b/de/post_installation/firststeps-sync_jobs_migration/index.html index 715ba2368..39292ea5c 100644 --- a/de/post_installation/firststeps-sync_jobs_migration/index.html +++ b/de/post_installation/firststeps-sync_jobs_migration/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/prerequisite/prerequisite-dns/index.html b/de/prerequisite/prerequisite-dns/index.html index ac68bdbe2..cb1fd62b2 100644 --- a/de/prerequisite/prerequisite-dns/index.html +++ b/de/prerequisite/prerequisite-dns/index.html @@ -1798,6 +1798,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/prerequisite/prerequisite-system/index.html b/de/prerequisite/prerequisite-system/index.html index 40492e483..f4943f755 100644 --- a/de/prerequisite/prerequisite-system/index.html +++ b/de/prerequisite/prerequisite-system/index.html @@ -1797,6 +1797,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/borgmatic/third_party-borgmatic/index.html b/de/third_party/borgmatic/third_party-borgmatic/index.html index 187e6dd2c..1bbc7a088 100644 --- a/de/third_party/borgmatic/third_party-borgmatic/index.html +++ b/de/third_party/borgmatic/third_party-borgmatic/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/checkmk/u_e-checkmk/index.html b/de/third_party/checkmk/u_e-checkmk/index.html index 60d1fa7c8..b4a8ac03d 100644 --- a/de/third_party/checkmk/u_e-checkmk/index.html +++ b/de/third_party/checkmk/u_e-checkmk/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html b/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html index 34b3cf6ce..ce0662cb5 100644 --- a/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html +++ b/de/third_party/exchange_onprem/third_party-exchange_onprem/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/gitea/third_party-gitea/index.html b/de/third_party/gitea/third_party-gitea/index.html index f188fe747..b027178a3 100644 --- a/de/third_party/gitea/third_party-gitea/index.html +++ b/de/third_party/gitea/third_party-gitea/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/gogs/third_party-gogs/index.html b/de/third_party/gogs/third_party-gogs/index.html index 57f90d181..046b7d081 100644 --- a/de/third_party/gogs/third_party-gogs/index.html +++ b/de/third_party/gogs/third_party-gogs/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/mailman3/third_party-mailman3/index.html b/de/third_party/mailman3/third_party-mailman3/index.html index 88d595f13..8d229a4ff 100644 --- a/de/third_party/mailman3/third_party-mailman3/index.html +++ b/de/third_party/mailman3/third_party-mailman3/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/mailpiler/third_party-mailpiler_integration/index.html b/de/third_party/mailpiler/third_party-mailpiler_integration/index.html index 401d11222..920825957 100644 --- a/de/third_party/mailpiler/third_party-mailpiler_integration/index.html +++ b/de/third_party/mailpiler/third_party-mailpiler_integration/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/nextcloud/third_party-nextcloud/index.html b/de/third_party/nextcloud/third_party-nextcloud/index.html index 03fd6140f..591f088c8 100644 --- a/de/third_party/nextcloud/third_party-nextcloud/index.html +++ b/de/third_party/nextcloud/third_party-nextcloud/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/portainer/third_party-portainer/index.html b/de/third_party/portainer/third_party-portainer/index.html index 3595646de..60e97db26 100644 --- a/de/third_party/portainer/third_party-portainer/index.html +++ b/de/third_party/portainer/third_party-portainer/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/third_party/roundcube/third_party-roundcube/index.html b/de/third_party/roundcube/third_party-roundcube/index.html index bbf821c0a..1f53dc468 100644 --- a/de/third_party/roundcube/third_party-roundcube/index.html +++ b/de/third_party/roundcube/third_party-roundcube/index.html @@ -1688,6 +1688,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-admin_login_sogo/index.html b/de/troubleshooting/debug-admin_login_sogo/index.html index 9669ebea6..8e67a2651 100644 --- a/de/troubleshooting/debug-admin_login_sogo/index.html +++ b/de/troubleshooting/debug-admin_login_sogo/index.html @@ -1743,6 +1743,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-attach_service/index.html b/de/troubleshooting/debug-attach_service/index.html index ef9d689e0..c4c5deb15 100644 --- a/de/troubleshooting/debug-attach_service/index.html +++ b/de/troubleshooting/debug-attach_service/index.html @@ -1769,6 +1769,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-common_problems/index.html b/de/troubleshooting/debug-common_problems/index.html index c23301d84..bf78e42d9 100644 --- a/de/troubleshooting/debug-common_problems/index.html +++ b/de/troubleshooting/debug-common_problems/index.html @@ -1792,6 +1792,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-logs/index.html b/de/troubleshooting/debug-logs/index.html index 39c951d97..52e7372f5 100644 --- a/de/troubleshooting/debug-logs/index.html +++ b/de/troubleshooting/debug-logs/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-mysql_aria/index.html b/de/troubleshooting/debug-mysql_aria/index.html index 539d316e0..a2b0aa0db 100644 --- a/de/troubleshooting/debug-mysql_aria/index.html +++ b/de/troubleshooting/debug-mysql_aria/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-mysql_upgrade/index.html b/de/troubleshooting/debug-mysql_upgrade/index.html index 16148c5df..8f167997f 100644 --- a/de/troubleshooting/debug-mysql_upgrade/index.html +++ b/de/troubleshooting/debug-mysql_upgrade/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-reset_pw/index.html b/de/troubleshooting/debug-reset_pw/index.html index 3af51ddbb..7a4801d08 100644 --- a/de/troubleshooting/debug-reset_pw/index.html +++ b/de/troubleshooting/debug-reset_pw/index.html @@ -1803,6 +1803,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-reset_tls/index.html b/de/troubleshooting/debug-reset_tls/index.html index 89f0812bb..6f798d39f 100644 --- a/de/troubleshooting/debug-reset_tls/index.html +++ b/de/troubleshooting/debug-reset_tls/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-rm_volumes/index.html b/de/troubleshooting/debug-rm_volumes/index.html index cd184e0ef..6a20cf6d5 100644 --- a/de/troubleshooting/debug-rm_volumes/index.html +++ b/de/troubleshooting/debug-rm_volumes/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug-rspamd_memory_leaks/index.html b/de/troubleshooting/debug-rspamd_memory_leaks/index.html index 750727130..2fe1490d5 100644 --- a/de/troubleshooting/debug-rspamd_memory_leaks/index.html +++ b/de/troubleshooting/debug-rspamd_memory_leaks/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/de/troubleshooting/debug/index.html b/de/troubleshooting/debug/index.html index 709965b83..36d5224c3 100644 --- a/de/troubleshooting/debug/index.html +++ b/de/troubleshooting/debug/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimierungen + +
  • + + + + + + + + +
  • Öffentliche Ordner diff --git a/en/backup_restore/b_n_r-accidental_deletion/index.html b/en/backup_restore/b_n_r-accidental_deletion/index.html index a7ff94880..3c2456b0c 100644 --- a/en/backup_restore/b_n_r-accidental_deletion/index.html +++ b/en/backup_restore/b_n_r-accidental_deletion/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/backup_restore/b_n_r-backup/index.html b/en/backup_restore/b_n_r-backup/index.html index cf4c29b74..fa3c2ecf7 100644 --- a/en/backup_restore/b_n_r-backup/index.html +++ b/en/backup_restore/b_n_r-backup/index.html @@ -1785,6 +1785,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/backup_restore/b_n_r-backup_restore-maildir/index.html b/en/backup_restore/b_n_r-backup_restore-maildir/index.html index ce5a22e75..9570e2d5d 100644 --- a/en/backup_restore/b_n_r-backup_restore-maildir/index.html +++ b/en/backup_restore/b_n_r-backup_restore-maildir/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/backup_restore/b_n_r-backup_restore-mysql/index.html b/en/backup_restore/b_n_r-backup_restore-mysql/index.html index 9b22bb085..56fd888a3 100644 --- a/en/backup_restore/b_n_r-backup_restore-mysql/index.html +++ b/en/backup_restore/b_n_r-backup_restore-mysql/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/backup_restore/b_n_r-coldstandby/index.html b/en/backup_restore/b_n_r-coldstandby/index.html index 50ed4ef82..0c73ec71c 100644 --- a/en/backup_restore/b_n_r-coldstandby/index.html +++ b/en/backup_restore/b_n_r-coldstandby/index.html @@ -1754,6 +1754,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/backup_restore/b_n_r-restore/index.html b/en/backup_restore/b_n_r-restore/index.html index 215771534..bd2fb9e50 100644 --- a/en/backup_restore/b_n_r-restore/index.html +++ b/en/backup_restore/b_n_r-restore/index.html @@ -1731,6 +1731,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-android/index.html b/en/client/client-android/index.html index 790bff85d..8485304a8 100644 --- a/en/client/client-android/index.html +++ b/en/client/client-android/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-apple/index.html b/en/client/client-apple/index.html index bc5cd5ad5..25d37d034 100644 --- a/en/client/client-apple/index.html +++ b/en/client/client-apple/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-emclient/index.html b/en/client/client-emclient/index.html index 6a9e3a277..4396ce442 100644 --- a/en/client/client-emclient/index.html +++ b/en/client/client-emclient/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-kontact/index.html b/en/client/client-kontact/index.html index 43cf64b5b..a74f77430 100644 --- a/en/client/client-kontact/index.html +++ b/en/client/client-kontact/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-manual/index.html b/en/client/client-manual/index.html index 9844f960e..1137a9a0f 100644 --- a/en/client/client-manual/index.html +++ b/en/client/client-manual/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-outlook/index.html b/en/client/client-outlook/index.html index d3e9ea327..b8f2d15a1 100644 --- a/en/client/client-outlook/index.html +++ b/en/client/client-outlook/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-thunderbird/index.html b/en/client/client-thunderbird/index.html index 8c32d083d..b960b88cf 100644 --- a/en/client/client-thunderbird/index.html +++ b/en/client/client-thunderbird/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client-windows/index.html b/en/client/client-windows/index.html index 1afdc774d..8a96c3c12 100644 --- a/en/client/client-windows/index.html +++ b/en/client/client-windows/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/client/client/index.html b/en/client/client/index.html index 602ee6688..6ffa9095f 100644 --- a/en/client/client/index.html +++ b/en/client/client/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/i_u_m/i_u_m_deinstall/index.html b/en/i_u_m/i_u_m_deinstall/index.html index 90053c549..8f166f00d 100644 --- a/en/i_u_m/i_u_m_deinstall/index.html +++ b/en/i_u_m/i_u_m_deinstall/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/i_u_m/i_u_m_install/index.html b/en/i_u_m/i_u_m_install/index.html index 0285abd7b..5c06725bb 100644 --- a/en/i_u_m/i_u_m_install/index.html +++ b/en/i_u_m/i_u_m_install/index.html @@ -1824,6 +1824,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/i_u_m/i_u_m_migration/index.html b/en/i_u_m/i_u_m_migration/index.html index 8161f4611..620abc235 100644 --- a/en/i_u_m/i_u_m_migration/index.html +++ b/en/i_u_m/i_u_m_migration/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/i_u_m/i_u_m_update/index.html b/en/i_u_m/i_u_m_update/index.html index 25b90d442..2e5fe82cf 100644 --- a/en/i_u_m/i_u_m_update/index.html +++ b/en/i_u_m/i_u_m_update/index.html @@ -1811,6 +1811,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/index.html b/en/index.html index 59372025f..66ad09b3e 100644 --- a/en/index.html +++ b/en/index.html @@ -1770,6 +1770,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html b/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html index 85b7b3861..a7f53eb1a 100644 --- a/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html +++ b/en/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html b/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html index 6e816f4f6..da1389b3c 100644 --- a/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html +++ b/en/manual-guides/ClamAV/u_e-clamav-whitelist/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html b/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html index 81060e718..ddd1ebd78 100644 --- a/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html +++ b/en/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html b/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html index 226d91e87..0263f40e2 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html b/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html index 14ab6de17..81ad049bf 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html @@ -1689,6 +1689,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html b/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html index d8251dc79..8b26925eb 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-expunge/index.html @@ -1758,6 +1758,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html b/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html index 9f0b4a6c2..32f46da93 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html b/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html index 4bc7faeb5..59824ec5d 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-fts/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html b/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html index 490ed90ab..20185b2ec 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html @@ -1762,6 +1762,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html b/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html index e2776c086..f71ec82bd 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-more/index.html b/en/manual-guides/Dovecot/u_e-dovecot-more/index.html index 0c0d9e0e9..2ae4bc200 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-more/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-more/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-performance/index.html b/en/manual-guides/Dovecot/u_e-dovecot-performance/index.html new file mode 100644 index 000000000..02d9df5c6 --- /dev/null +++ b/en/manual-guides/Dovecot/u_e-dovecot-performance/index.html @@ -0,0 +1,2633 @@ + + + + + + + + + + + + + + + + + + + + + + + + Performance Optimizations - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Performance Optimizations

    + +

    maildir_very_dirty_syncs

    +

    Dovecot's maildir_very_dirty_syncs option is enabled by default since mailcow Release 2023-05. This option can significantly improve the performance of mailboxes that contain very large folders (over 100,000 emails).

    +

    What this option does is it avoids rescanning the entire cur directory whenever loading an email. With this option disabled, Dovecot takes it safe and scans the entire cur directory (comparable with running an ls) to check if that particular email was touched (renamed, etc), by looking for all files whose names contain the correct ID. This is very slow if the directory is large, even on filesystems optimized for such use cases (such as ext4 with dir_index enabled) on fast SSD drives.

    +

    This option is safe to use as long as you do not manually touch files under cur (as then Dovecot may not notice the changes). Even with this option enabled, Dovecot will still notice changes if the file's mtime (last modified time) is changed, but otherwise it will not scan the directory and just assumes the index is up-to-date. This is essentially the same as what sdbox/mdbox do, and with this option you can get some of the performance increase that would come with sdbox/mdbox while still using maildir.

    +

    This option is safe to use on a standard Mailcow installation. However, if you use any third-party tools that manually modify files directly in the maildir (rather than via IMAP), you may wish to disable it. To disable this option, create a data/conf/dovecot/extra.conf file and add this setting to it:

    +
    maildir_very_dirty_syncs=no
    +
    +
    +

    Warning

    +

    Please ALWAYS use the above mentioned extra.conf for your own customizations, as changes made in the normal dovecot.conf might be overwritten after an update from GitHub source code.

    +
    + +
    +
    + + + Last update: + 2023-05-03 12:19:46 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html b/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html index 53917531e..a95a6eea2 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html @@ -11,7 +11,7 @@ - + @@ -1693,6 +1693,20 @@ + +
  • + + Performance Optimizations + +
  • + + + + + + + + diff --git a/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html b/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html index 8a38ea1e7..5d4d0137a 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-static_master/index.html @@ -1689,6 +1689,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html b/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html index 2a077b4f4..9b6ea4416 100644 --- a/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html +++ b/en/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html @@ -14,7 +14,7 @@ - + @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Nginx/u_e-nginx_custom/index.html b/en/manual-guides/Nginx/u_e-nginx_custom/index.html index ccbcf123e..db22d8f50 100644 --- a/en/manual-guides/Nginx/u_e-nginx_custom/index.html +++ b/en/manual-guides/Nginx/u_e-nginx_custom/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html b/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html index 5c0a870c6..08d553b36 100644 --- a/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html +++ b/en/manual-guides/Nginx/u_e-nginx_webmail-site/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html b/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html index 08c82e05b..2eaa5be6a 100644 --- a/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-attachment_size/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html b/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html index 07ef6d11d..f3dd0043a 100644 --- a/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-custom_transport/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html b/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html index 9dbf48898..e089df6b0 100644 --- a/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html b/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html index c0ba56e9e..6afcf04d2 100644 --- a/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-extra_cf/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html b/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html index 5ab497895..9e614879a 100644 --- a/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html b/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html index 975bf5388..1a11cc123 100644 --- a/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html b/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html index 11e8e8e42..39b300a88 100644 --- a/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-relayhost/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html b/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html index c5dba7e7e..24503a3ac 100644 --- a/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html +++ b/en/manual-guides/Postfix/u_e-postfix-trust_networks/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Redis/u_e-redis/index.html b/en/manual-guides/Redis/u_e-redis/index.html index 309f150eb..27bce025f 100644 --- a/en/manual-guides/Redis/u_e-redis/index.html +++ b/en/manual-guides/Redis/u_e-redis/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Rspamd/u_e-rspamd/index.html b/en/manual-guides/Rspamd/u_e-rspamd/index.html index d3cea75b2..953b91d7e 100644 --- a/en/manual-guides/Rspamd/u_e-rspamd/index.html +++ b/en/manual-guides/Rspamd/u_e-rspamd/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/SOGo/u_e-sogo/index.html b/en/manual-guides/SOGo/u_e-sogo/index.html index 7d4308eb4..cfa63417c 100644 --- a/en/manual-guides/SOGo/u_e-sogo/index.html +++ b/en/manual-guides/SOGo/u_e-sogo/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Unbound/u_e-unbound-fwd/index.html b/en/manual-guides/Unbound/u_e-unbound-fwd/index.html index c9343dea4..f72886654 100644 --- a/en/manual-guides/Unbound/u_e-unbound-fwd/index.html +++ b/en/manual-guides/Unbound/u_e-unbound-fwd/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html b/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html index 549f731ff..0152a707f 100644 --- a/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html +++ b/en/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html index 8354c0850..f7aef030c 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html index 406fcf841..4d288db11 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html index 6d064e61e..dc1072971 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html index 1367ef4a7..7ae1ff540 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html @@ -1745,6 +1745,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html index 6ada36479..ab0dcb294 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html index 7c7a3ae78..4c28e1547 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html index 71a1163bd..a396945da 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html index 7edd03d5a..a2e0b5a28 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html index 961f6b2b5..c8b1e5d92 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html @@ -1731,6 +1731,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html index 6e598cfc2..91a503ccf 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html @@ -1752,6 +1752,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html index 7ed23b31f..6d37a2aff 100644 --- a/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html +++ b/en/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html @@ -1792,6 +1792,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/u_e-80_to_443/index.html b/en/manual-guides/u_e-80_to_443/index.html index 73058d733..c058be116 100644 --- a/en/manual-guides/u_e-80_to_443/index.html +++ b/en/manual-guides/u_e-80_to_443/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/u_e-autodiscover_config/index.html b/en/manual-guides/u_e-autodiscover_config/index.html index 6961428d0..924f93d9f 100644 --- a/en/manual-guides/u_e-autodiscover_config/index.html +++ b/en/manual-guides/u_e-autodiscover_config/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/u_e-reeanble-weak-protocols/index.html b/en/manual-guides/u_e-reeanble-weak-protocols/index.html index 035e65d28..d906fe60b 100644 --- a/en/manual-guides/u_e-reeanble-weak-protocols/index.html +++ b/en/manual-guides/u_e-reeanble-weak-protocols/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/u_e-update-hooks/index.html b/en/manual-guides/u_e-update-hooks/index.html index 969610b61..a88987829 100644 --- a/en/manual-guides/u_e-update-hooks/index.html +++ b/en/manual-guides/u_e-update-hooks/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/manual-guides/u_e-why_unbound/index.html b/en/manual-guides/u_e-why_unbound/index.html index c33cfedd8..7b12b9eb6 100644 --- a/en/manual-guides/u_e-why_unbound/index.html +++ b/en/manual-guides/u_e-why_unbound/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/models/model-acl/index.html b/en/models/model-acl/index.html index dc6928339..8ff1120f1 100644 --- a/en/models/model-acl/index.html +++ b/en/models/model-acl/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/models/model-passwd/index.html b/en/models/model-passwd/index.html index 57007a1f5..6f9b58a08 100644 --- a/en/models/model-passwd/index.html +++ b/en/models/model-passwd/index.html @@ -1736,6 +1736,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/models/model-sender_rcv/index.html b/en/models/model-sender_rcv/index.html index 94f9a933b..c1bd1b086 100644 --- a/en/models/model-sender_rcv/index.html +++ b/en/models/model-sender_rcv/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-disable_ipv6/index.html b/en/post_installation/firststeps-disable_ipv6/index.html index a3cfee439..4874952d1 100644 --- a/en/post_installation/firststeps-disable_ipv6/index.html +++ b/en/post_installation/firststeps-disable_ipv6/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-dmarc_reporting/index.html b/en/post_installation/firststeps-dmarc_reporting/index.html index c17750be6..a7d19bf18 100644 --- a/en/post_installation/firststeps-dmarc_reporting/index.html +++ b/en/post_installation/firststeps-dmarc_reporting/index.html @@ -1757,6 +1757,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-ip_bindings/index.html b/en/post_installation/firststeps-ip_bindings/index.html index 744c34b6a..df609d09f 100644 --- a/en/post_installation/firststeps-ip_bindings/index.html +++ b/en/post_installation/firststeps-ip_bindings/index.html @@ -1736,6 +1736,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-local_mta/index.html b/en/post_installation/firststeps-local_mta/index.html index e130cd0fc..dc009c5c7 100644 --- a/en/post_installation/firststeps-local_mta/index.html +++ b/en/post_installation/firststeps-local_mta/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-logging/index.html b/en/post_installation/firststeps-logging/index.html index 672448ddc..25d8e4ce2 100644 --- a/en/post_installation/firststeps-logging/index.html +++ b/en/post_installation/firststeps-logging/index.html @@ -1776,6 +1776,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-rp/index.html b/en/post_installation/firststeps-rp/index.html index 26da9b0f6..04f5c1973 100644 --- a/en/post_installation/firststeps-rp/index.html +++ b/en/post_installation/firststeps-rp/index.html @@ -1771,6 +1771,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-rspamd_ui/index.html b/en/post_installation/firststeps-rspamd_ui/index.html index 729351a92..8c4f59e12 100644 --- a/en/post_installation/firststeps-rspamd_ui/index.html +++ b/en/post_installation/firststeps-rspamd_ui/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-snat/index.html b/en/post_installation/firststeps-snat/index.html index e7523938b..6250e142a 100644 --- a/en/post_installation/firststeps-snat/index.html +++ b/en/post_installation/firststeps-snat/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-ssl/index.html b/en/post_installation/firststeps-ssl/index.html index dc39ccd35..5d9b2b7a6 100644 --- a/en/post_installation/firststeps-ssl/index.html +++ b/en/post_installation/firststeps-ssl/index.html @@ -1818,6 +1818,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/post_installation/firststeps-sync_jobs_migration/index.html b/en/post_installation/firststeps-sync_jobs_migration/index.html index 585ed180b..e5059c35c 100644 --- a/en/post_installation/firststeps-sync_jobs_migration/index.html +++ b/en/post_installation/firststeps-sync_jobs_migration/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/prerequisite/prerequisite-dns/index.html b/en/prerequisite/prerequisite-dns/index.html index 6d1854eef..29d64f9fe 100644 --- a/en/prerequisite/prerequisite-dns/index.html +++ b/en/prerequisite/prerequisite-dns/index.html @@ -1798,6 +1798,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/prerequisite/prerequisite-system/index.html b/en/prerequisite/prerequisite-system/index.html index 2851a5027..2f821867b 100644 --- a/en/prerequisite/prerequisite-system/index.html +++ b/en/prerequisite/prerequisite-system/index.html @@ -1797,6 +1797,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/borgmatic/third_party-borgmatic/index.html b/en/third_party/borgmatic/third_party-borgmatic/index.html index 7a429c382..a8f211531 100644 --- a/en/third_party/borgmatic/third_party-borgmatic/index.html +++ b/en/third_party/borgmatic/third_party-borgmatic/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/checkmk/u_e-checkmk/index.html b/en/third_party/checkmk/u_e-checkmk/index.html index da2508a5d..947158445 100644 --- a/en/third_party/checkmk/u_e-checkmk/index.html +++ b/en/third_party/checkmk/u_e-checkmk/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html b/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html index 22e86acfd..43ec55c2d 100644 --- a/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html +++ b/en/third_party/exchange_onprem/third_party-exchange_onprem/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/gitea/third_party-gitea/index.html b/en/third_party/gitea/third_party-gitea/index.html index 9ed9a88e3..45a990839 100644 --- a/en/third_party/gitea/third_party-gitea/index.html +++ b/en/third_party/gitea/third_party-gitea/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/gogs/third_party-gogs/index.html b/en/third_party/gogs/third_party-gogs/index.html index c0bde5a3b..8fa2273e6 100644 --- a/en/third_party/gogs/third_party-gogs/index.html +++ b/en/third_party/gogs/third_party-gogs/index.html @@ -1685,6 +1685,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/mailman3/third_party-mailman3/index.html b/en/third_party/mailman3/third_party-mailman3/index.html index 259722861..6588a12a3 100644 --- a/en/third_party/mailman3/third_party-mailman3/index.html +++ b/en/third_party/mailman3/third_party-mailman3/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/mailpiler/third_party-mailpiler_integration/index.html b/en/third_party/mailpiler/third_party-mailpiler_integration/index.html index 31ae1d116..49385cca5 100644 --- a/en/third_party/mailpiler/third_party-mailpiler_integration/index.html +++ b/en/third_party/mailpiler/third_party-mailpiler_integration/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/nextcloud/third_party-nextcloud/index.html b/en/third_party/nextcloud/third_party-nextcloud/index.html index a4cacf800..f211a6dee 100644 --- a/en/third_party/nextcloud/third_party-nextcloud/index.html +++ b/en/third_party/nextcloud/third_party-nextcloud/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/portainer/third_party-portainer/index.html b/en/third_party/portainer/third_party-portainer/index.html index 5727ccd49..f69b90ce7 100644 --- a/en/third_party/portainer/third_party-portainer/index.html +++ b/en/third_party/portainer/third_party-portainer/index.html @@ -1690,6 +1690,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/third_party/roundcube/third_party-roundcube/index.html b/en/third_party/roundcube/third_party-roundcube/index.html index 63ba30676..67f8706c5 100644 --- a/en/third_party/roundcube/third_party-roundcube/index.html +++ b/en/third_party/roundcube/third_party-roundcube/index.html @@ -1688,6 +1688,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-admin_login_sogo/index.html b/en/troubleshooting/debug-admin_login_sogo/index.html index 12fa9dcd2..4f10da9ed 100644 --- a/en/troubleshooting/debug-admin_login_sogo/index.html +++ b/en/troubleshooting/debug-admin_login_sogo/index.html @@ -1743,6 +1743,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-attach_service/index.html b/en/troubleshooting/debug-attach_service/index.html index 502d8e57e..9f658e895 100644 --- a/en/troubleshooting/debug-attach_service/index.html +++ b/en/troubleshooting/debug-attach_service/index.html @@ -1769,6 +1769,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-common_problems/index.html b/en/troubleshooting/debug-common_problems/index.html index d06b1f9f7..a558d9f6f 100644 --- a/en/troubleshooting/debug-common_problems/index.html +++ b/en/troubleshooting/debug-common_problems/index.html @@ -1792,6 +1792,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-logs/index.html b/en/troubleshooting/debug-logs/index.html index 74dbbf541..31bc3d461 100644 --- a/en/troubleshooting/debug-logs/index.html +++ b/en/troubleshooting/debug-logs/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-mysql_aria/index.html b/en/troubleshooting/debug-mysql_aria/index.html index b4cd3fb68..4bfdb96db 100644 --- a/en/troubleshooting/debug-mysql_aria/index.html +++ b/en/troubleshooting/debug-mysql_aria/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-mysql_upgrade/index.html b/en/troubleshooting/debug-mysql_upgrade/index.html index 5accb633c..c03e3cad4 100644 --- a/en/troubleshooting/debug-mysql_upgrade/index.html +++ b/en/troubleshooting/debug-mysql_upgrade/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-reset_pw/index.html b/en/troubleshooting/debug-reset_pw/index.html index c427d59d8..447fd163b 100644 --- a/en/troubleshooting/debug-reset_pw/index.html +++ b/en/troubleshooting/debug-reset_pw/index.html @@ -1803,6 +1803,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-reset_tls/index.html b/en/troubleshooting/debug-reset_tls/index.html index 5faff1173..1e243725f 100644 --- a/en/troubleshooting/debug-reset_tls/index.html +++ b/en/troubleshooting/debug-reset_tls/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-rm_volumes/index.html b/en/troubleshooting/debug-rm_volumes/index.html index a24dab871..2ffd979cb 100644 --- a/en/troubleshooting/debug-rm_volumes/index.html +++ b/en/troubleshooting/debug-rm_volumes/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug-rspamd_memory_leaks/index.html b/en/troubleshooting/debug-rspamd_memory_leaks/index.html index 2c162c85d..e4afc525c 100644 --- a/en/troubleshooting/debug-rspamd_memory_leaks/index.html +++ b/en/troubleshooting/debug-rspamd_memory_leaks/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/en/troubleshooting/debug/index.html b/en/troubleshooting/debug/index.html index 8055f9e98..4aab0bec4 100644 --- a/en/troubleshooting/debug/index.html +++ b/en/troubleshooting/debug/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/i_u_m/i_u_m_deinstall/index.html b/i_u_m/i_u_m_deinstall/index.html index cb9083949..467656e8a 100644 --- a/i_u_m/i_u_m_deinstall/index.html +++ b/i_u_m/i_u_m_deinstall/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/i_u_m/i_u_m_install/index.html b/i_u_m/i_u_m_install/index.html index 520a04af0..1e1d17c43 100644 --- a/i_u_m/i_u_m_install/index.html +++ b/i_u_m/i_u_m_install/index.html @@ -1824,6 +1824,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/i_u_m/i_u_m_migration/index.html b/i_u_m/i_u_m_migration/index.html index 2e3858eb2..d0ca70916 100644 --- a/i_u_m/i_u_m_migration/index.html +++ b/i_u_m/i_u_m_migration/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/i_u_m/i_u_m_update/index.html b/i_u_m/i_u_m_update/index.html index 2bb429001..2077ef96d 100644 --- a/i_u_m/i_u_m_update/index.html +++ b/i_u_m/i_u_m_update/index.html @@ -1811,6 +1811,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/index.html b/index.html index 6befcab00..645c41e89 100644 --- a/index.html +++ b/index.html @@ -1770,6 +1770,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html b/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html index a9c50890c..fa9f9537e 100644 --- a/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html +++ b/manual-guides/ClamAV/u_e-clamav-additional_dbs/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/ClamAV/u_e-clamav-whitelist/index.html b/manual-guides/ClamAV/u_e-clamav-whitelist/index.html index a58eb7a0e..1c29687a7 100644 --- a/manual-guides/ClamAV/u_e-clamav-whitelist/index.html +++ b/manual-guides/ClamAV/u_e-clamav-whitelist/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html b/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html index 190b05218..217f5b3b5 100644 --- a/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html +++ b/manual-guides/Docker/u_e-docker-cust_dockerfiles/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html b/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html index 0475ce3f6..8cbebfeff 100644 --- a/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-any_acl/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html b/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html index 5b42074e8..7c3fd20dd 100644 --- a/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-catchall_vacation/index.html @@ -1689,6 +1689,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-expunge/index.html b/manual-guides/Dovecot/u_e-dovecot-expunge/index.html index ed54aa7d1..4d4dfba23 100644 --- a/manual-guides/Dovecot/u_e-dovecot-expunge/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-expunge/index.html @@ -1758,6 +1758,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html b/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html index a57bca25a..1a5b52b58 100644 --- a/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-extra_conf/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-fts/index.html b/manual-guides/Dovecot/u_e-dovecot-fts/index.html index b377d94ed..04eb3e008 100644 --- a/manual-guides/Dovecot/u_e-dovecot-fts/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-fts/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html b/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html index 06c6df6eb..0b6799ae0 100644 --- a/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-idle_interval/index.html @@ -1762,6 +1762,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html b/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html index 5e86aae3e..762a8106e 100644 --- a/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-mail-crypt/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-more/index.html b/manual-guides/Dovecot/u_e-dovecot-more/index.html index d09f4162d..053f59c94 100644 --- a/manual-guides/Dovecot/u_e-dovecot-more/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-more/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-performance/index.html b/manual-guides/Dovecot/u_e-dovecot-performance/index.html new file mode 100644 index 000000000..80380d74c --- /dev/null +++ b/manual-guides/Dovecot/u_e-dovecot-performance/index.html @@ -0,0 +1,2633 @@ + + + + + + + + + + + + + + + + + + + + + + + + Performance Optimizations - mailcow: dockerized documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
    + + + +
    + + + + + + +
    + + +
    + +
    + + + + + + +
    +
    + + + +
    +
    +
    + + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    +
    + + + +
    +
    + + + + + + + +

    Performance Optimizations

    + +

    maildir_very_dirty_syncs

    +

    Dovecot's maildir_very_dirty_syncs option is enabled by default since mailcow Release 2023-05. This option can significantly improve the performance of mailboxes that contain very large folders (over 100,000 emails).

    +

    What this option does is it avoids rescanning the entire cur directory whenever loading an email. With this option disabled, Dovecot takes it safe and scans the entire cur directory (comparable with running an ls) to check if that particular email was touched (renamed, etc), by looking for all files whose names contain the correct ID. This is very slow if the directory is large, even on filesystems optimized for such use cases (such as ext4 with dir_index enabled) on fast SSD drives.

    +

    This option is safe to use as long as you do not manually touch files under cur (as then Dovecot may not notice the changes). Even with this option enabled, Dovecot will still notice changes if the file's mtime (last modified time) is changed, but otherwise it will not scan the directory and just assumes the index is up-to-date. This is essentially the same as what sdbox/mdbox do, and with this option you can get some of the performance increase that would come with sdbox/mdbox while still using maildir.

    +

    This option is safe to use on a standard Mailcow installation. However, if you use any third-party tools that manually modify files directly in the maildir (rather than via IMAP), you may wish to disable it. To disable this option, create a data/conf/dovecot/extra.conf file and add this setting to it:

    +
    maildir_very_dirty_syncs=no
    +
    +
    +

    Warning

    +

    Please ALWAYS use the above mentioned extra.conf for your own customizations, as changes made in the normal dovecot.conf might be overwritten after an update from GitHub source code.

    +
    + +
    +
    + + + Last update: + 2023-05-03 12:19:46 + + + +
    + + + + + + +
    +
    + + + + +
    + + + +
    + + + +
    +
    +
    +
    + + + + + + + + + + + \ No newline at end of file diff --git a/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html b/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html index 588733890..5306f3c1e 100644 --- a/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-public_folder/index.html @@ -11,7 +11,7 @@ - + @@ -1693,6 +1693,20 @@ + +
  • + + Performance Optimizations + +
  • + + + + + + + + diff --git a/manual-guides/Dovecot/u_e-dovecot-static_master/index.html b/manual-guides/Dovecot/u_e-dovecot-static_master/index.html index 1580df6e7..7804b88d6 100644 --- a/manual-guides/Dovecot/u_e-dovecot-static_master/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-static_master/index.html @@ -1689,6 +1689,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html b/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html index e19f3691a..d85a48bcd 100644 --- a/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html +++ b/manual-guides/Dovecot/u_e-dovecot-vmail-volume/index.html @@ -14,7 +14,7 @@ - + @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Nginx/u_e-nginx_custom/index.html b/manual-guides/Nginx/u_e-nginx_custom/index.html index e5e45a63e..9bcf51780 100644 --- a/manual-guides/Nginx/u_e-nginx_custom/index.html +++ b/manual-guides/Nginx/u_e-nginx_custom/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Nginx/u_e-nginx_webmail-site/index.html b/manual-guides/Nginx/u_e-nginx_webmail-site/index.html index b7723a380..418333c52 100644 --- a/manual-guides/Nginx/u_e-nginx_webmail-site/index.html +++ b/manual-guides/Nginx/u_e-nginx_webmail-site/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-attachment_size/index.html b/manual-guides/Postfix/u_e-postfix-attachment_size/index.html index e1455a444..2626fabdb 100644 --- a/manual-guides/Postfix/u_e-postfix-attachment_size/index.html +++ b/manual-guides/Postfix/u_e-postfix-attachment_size/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-custom_transport/index.html b/manual-guides/Postfix/u_e-postfix-custom_transport/index.html index f818dcdf9..844f25b3f 100644 --- a/manual-guides/Postfix/u_e-postfix-custom_transport/index.html +++ b/manual-guides/Postfix/u_e-postfix-custom_transport/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html b/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html index a71010bb3..514bccd5c 100644 --- a/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html +++ b/manual-guides/Postfix/u_e-postfix-disable_sender_verification/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-extra_cf/index.html b/manual-guides/Postfix/u_e-postfix-extra_cf/index.html index 41fa92b35..4f134bb1d 100644 --- a/manual-guides/Postfix/u_e-postfix-extra_cf/index.html +++ b/manual-guides/Postfix/u_e-postfix-extra_cf/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html b/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html index a0024c471..7b7d651eb 100644 --- a/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html +++ b/manual-guides/Postfix/u_e-postfix-pflogsumm/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html b/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html index 2a5bb9dca..92eda0f6d 100644 --- a/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html +++ b/manual-guides/Postfix/u_e-postfix-postscreen_whitelist/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-relayhost/index.html b/manual-guides/Postfix/u_e-postfix-relayhost/index.html index 6e13adfbe..aa89ad89c 100644 --- a/manual-guides/Postfix/u_e-postfix-relayhost/index.html +++ b/manual-guides/Postfix/u_e-postfix-relayhost/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Postfix/u_e-postfix-trust_networks/index.html b/manual-guides/Postfix/u_e-postfix-trust_networks/index.html index b771cc6ad..c47322918 100644 --- a/manual-guides/Postfix/u_e-postfix-trust_networks/index.html +++ b/manual-guides/Postfix/u_e-postfix-trust_networks/index.html @@ -1751,6 +1751,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Redis/u_e-redis/index.html b/manual-guides/Redis/u_e-redis/index.html index 9c1daf986..3abf1fcc5 100644 --- a/manual-guides/Redis/u_e-redis/index.html +++ b/manual-guides/Redis/u_e-redis/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Rspamd/u_e-rspamd/index.html b/manual-guides/Rspamd/u_e-rspamd/index.html index f98e559cd..adc920bc1 100644 --- a/manual-guides/Rspamd/u_e-rspamd/index.html +++ b/manual-guides/Rspamd/u_e-rspamd/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/SOGo/u_e-sogo/index.html b/manual-guides/SOGo/u_e-sogo/index.html index b0f1950b4..5d5a55eca 100644 --- a/manual-guides/SOGo/u_e-sogo/index.html +++ b/manual-guides/SOGo/u_e-sogo/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Unbound/u_e-unbound-fwd/index.html b/manual-guides/Unbound/u_e-unbound-fwd/index.html index fea29bccc..cae7e3800 100644 --- a/manual-guides/Unbound/u_e-unbound-fwd/index.html +++ b/manual-guides/Unbound/u_e-unbound-fwd/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html b/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html index eb8233caf..d6b90fd09 100644 --- a/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html +++ b/manual-guides/Watchdog/u_e-watchdog-thresholds/index.html @@ -1692,6 +1692,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html index 05772f384..ec3519775 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-bl_wl/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html index 96fa396ff..9d0ed6fa8 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-config/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html index a462ba2c4..0bc384fda 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-css/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html index 8e1ed13be..3199c86bd 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-fido/index.html @@ -1745,6 +1745,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html index 995997032..4656ffdfe 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-netfilter/index.html @@ -1738,6 +1738,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html index e519bdcfe..8152e9821 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-pushover/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html index a4768a84f..4c2aa1d0f 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamalias/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html index ec1540e4f..435524d23 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-spamfilter/index.html @@ -1697,6 +1697,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html index 2e67f5a37..bf8542939 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-sub_addressing/index.html @@ -1731,6 +1731,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html index 3ea875f0c..461d9dd20 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-tags/index.html @@ -1752,6 +1752,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html b/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html index 15da5bd42..2f32a598a 100644 --- a/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html +++ b/manual-guides/mailcow-UI/u_e-mailcow_ui-tfa/index.html @@ -1792,6 +1792,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/u_e-80_to_443/index.html b/manual-guides/u_e-80_to_443/index.html index 433d4fa2d..ef05243fa 100644 --- a/manual-guides/u_e-80_to_443/index.html +++ b/manual-guides/u_e-80_to_443/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/u_e-autodiscover_config/index.html b/manual-guides/u_e-autodiscover_config/index.html index d30960526..ddae68b51 100644 --- a/manual-guides/u_e-autodiscover_config/index.html +++ b/manual-guides/u_e-autodiscover_config/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/u_e-reeanble-weak-protocols/index.html b/manual-guides/u_e-reeanble-weak-protocols/index.html index 7f48dfd7f..3e263b3d1 100644 --- a/manual-guides/u_e-reeanble-weak-protocols/index.html +++ b/manual-guides/u_e-reeanble-weak-protocols/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/u_e-update-hooks/index.html b/manual-guides/u_e-update-hooks/index.html index 1b554e93b..a3bc7619b 100644 --- a/manual-guides/u_e-update-hooks/index.html +++ b/manual-guides/u_e-update-hooks/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/manual-guides/u_e-why_unbound/index.html b/manual-guides/u_e-why_unbound/index.html index c50453f2e..f271f3f3f 100644 --- a/manual-guides/u_e-why_unbound/index.html +++ b/manual-guides/u_e-why_unbound/index.html @@ -1687,6 +1687,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/models/model-acl/index.html b/models/model-acl/index.html index c445e1906..8473f9830 100644 --- a/models/model-acl/index.html +++ b/models/model-acl/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/models/model-passwd/index.html b/models/model-passwd/index.html index fb4332fe1..e9edf6186 100644 --- a/models/model-passwd/index.html +++ b/models/model-passwd/index.html @@ -1736,6 +1736,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/models/model-sender_rcv/index.html b/models/model-sender_rcv/index.html index 37317d780..1bc24cb8a 100644 --- a/models/model-sender_rcv/index.html +++ b/models/model-sender_rcv/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-disable_ipv6/index.html b/post_installation/firststeps-disable_ipv6/index.html index c45c0455e..e7f8ff6eb 100644 --- a/post_installation/firststeps-disable_ipv6/index.html +++ b/post_installation/firststeps-disable_ipv6/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-dmarc_reporting/index.html b/post_installation/firststeps-dmarc_reporting/index.html index 685d04092..69a49f2ff 100644 --- a/post_installation/firststeps-dmarc_reporting/index.html +++ b/post_installation/firststeps-dmarc_reporting/index.html @@ -1757,6 +1757,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-ip_bindings/index.html b/post_installation/firststeps-ip_bindings/index.html index 953881632..b932769c3 100644 --- a/post_installation/firststeps-ip_bindings/index.html +++ b/post_installation/firststeps-ip_bindings/index.html @@ -1736,6 +1736,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-local_mta/index.html b/post_installation/firststeps-local_mta/index.html index e896ff77b..a9dbefe1c 100644 --- a/post_installation/firststeps-local_mta/index.html +++ b/post_installation/firststeps-local_mta/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-logging/index.html b/post_installation/firststeps-logging/index.html index 18dfe17b7..3593c3a1c 100644 --- a/post_installation/firststeps-logging/index.html +++ b/post_installation/firststeps-logging/index.html @@ -1776,6 +1776,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-rp/index.html b/post_installation/firststeps-rp/index.html index d944aae32..ebf08f7e1 100644 --- a/post_installation/firststeps-rp/index.html +++ b/post_installation/firststeps-rp/index.html @@ -1771,6 +1771,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-rspamd_ui/index.html b/post_installation/firststeps-rspamd_ui/index.html index 4a046c86a..92a492c00 100644 --- a/post_installation/firststeps-rspamd_ui/index.html +++ b/post_installation/firststeps-rspamd_ui/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-snat/index.html b/post_installation/firststeps-snat/index.html index cbb3fa667..501049b94 100644 --- a/post_installation/firststeps-snat/index.html +++ b/post_installation/firststeps-snat/index.html @@ -1695,6 +1695,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-ssl/index.html b/post_installation/firststeps-ssl/index.html index e7910f07a..8c2c3daeb 100644 --- a/post_installation/firststeps-ssl/index.html +++ b/post_installation/firststeps-ssl/index.html @@ -1818,6 +1818,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/post_installation/firststeps-sync_jobs_migration/index.html b/post_installation/firststeps-sync_jobs_migration/index.html index 65d8014e4..5dacb96f3 100644 --- a/post_installation/firststeps-sync_jobs_migration/index.html +++ b/post_installation/firststeps-sync_jobs_migration/index.html @@ -1729,6 +1729,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/prerequisite/prerequisite-dns/index.html b/prerequisite/prerequisite-dns/index.html index 4582b1ac2..da43521b4 100644 --- a/prerequisite/prerequisite-dns/index.html +++ b/prerequisite/prerequisite-dns/index.html @@ -1798,6 +1798,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/prerequisite/prerequisite-system/index.html b/prerequisite/prerequisite-system/index.html index b0e638080..7eed1be21 100644 --- a/prerequisite/prerequisite-system/index.html +++ b/prerequisite/prerequisite-system/index.html @@ -1797,6 +1797,20 @@ +
  • + + Performance Optimizations + +
  • + + + + + + + + +
  • Public folders diff --git a/search/search_index.json b/search/search_index.json index 59243ce33..a43d0c858 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en","de"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"\ud83d\udc2e + \ud83d\udc0b = \ud83d\udc95","text":""},{"location":"#help-mailcow","title":"Help mailcow","text":"

    Please consider a support contract for a small monthly fee at Servercow EN to support further development. We support you while you support us. :)

    If you are super awesome and would like to support without a contract, you can get a SAL license that confirms your awesomeness (a flexible one-time payment) at Servercow EN.

    "},{"location":"#get-support","title":"Get support","text":"

    There are two ways to achieve support for your mailcow installation.

    "},{"location":"#commercial-support","title":"Commercial support","text":"

    For professional and prioritized commercial support you can sign a basic support subscription at Servercow EN. For custom inquiries or questions please contact us at info@servercow.de instead.

    Furthermore we do also provide a fully featured and managed mailcow here. This way we take care about the technical magic underneath and you can enjoy your whole mail experience in a hassle-free way.

    "},{"location":"#community-support-and-chat","title":"Community support and chat","text":"

    The other alternative is our free community-support on our various channels below. Please notice, that this support is driven by our awesome community around mailcow. This kind of support is best-effort, voluntary and there is no guarantee for anything.

    • Our mailcow community @ community.mailcow.email

    • Telegram (Support) @ t.me/mailcow.

    • Telegram (Off-Topic) @ t.me/mailcowOfftopic.

    • Twitter @mailcow_email

    Telegram desktop clients are available for multiple platforms. You can search the groups history for keywords.

    For bug tracking, feature requests and code contributions only:

    • GitHub @ mailcow/mailcow-dockerized
    "},{"location":"#demos","title":"Demos","text":"

    Since September 2022 we\u00b4re providing two seperate Demo instances:

    • demo.mailcow.email is the classic Demo based on the stable releases.
    • nightly-demo.mailcow.email is the new nightly demo based on unreleased testing features. (So especially interesting for those who have no possibility to create a test instance themselves.)

    Use the following credentials to login on both demos:

    • Administrator: admin / moohoo
    • Domain-Administrator: department / moohoo
    • Mailbox: demo@440044.xyz / moohoo

    Success

    The demo instances get the latest updates directly after releases from GitHub. Fully automatic, without any downtime!

    "},{"location":"#overview","title":"Overview","text":"

    The integrated mailcow UI allows administrative work on your mail server instance as well as separated domain administrator and mailbox user access:

    • DKIM and ARC support
    • Black- and whitelists per domain and per user
    • Spam score management per-user (reject spam, mark spam, greylist)
    • Allow mailbox users to create temporary spam aliases
    • Prepend mail tags to subject or move mail to sub folder (per-user)
    • Allow mailbox users to toggle incoming and outgoing TLS enforcement
    • Allow users to reset SOGo ActiveSync device caches
    • imapsync to migrate or pull remote mailboxes regularly
    • TFA: Yubikey OTP and U2F USB (Google Chrome and derivatives only), TOTP
    • Add domains, mailboxes, aliases, domain aliases and SOGo resources
    • Add whitelisted hosts to forward mail to mailcow
    • Fail2ban-like integration
    • Quarantine system
    • Antivirus scanning incl. macro scanning in office documents
    • Integrated basic monitoring
    • A lot more...

    mailcow: dockerized comes with multiple containers linked in one bridged network. Each container represents a single application.

    • ACME
    • ClamAV (optional)
    • Dovecot
    • MariaDB
    • Memcached
    • Netfilter (Fail2ban-like integration by @mkuron)
    • Nginx
    • Oletools via Olefy
    • PHP
    • Postfix
    • Redis
    • Rspamd
    • SOGo
    • Solr (optional)
    • Unbound
    • A Watchdog to provide basic monitoring

    Warning

    Mails are stored compressed and encrypted. The key pair can be found in crypt-vol-1. Be sure to backup this volume!

    Docker volumes to keep dynamic data - take care of them!

    • clamd-db-vol-1
    • crypt-vol-1
    • mysql-socket-vol-1
    • mysql-vol-1
    • postfix-vol-1
    • redis-vol-1
    • rspamd-vol-1
    • sogo-userdata-backup-vol-1
    • sogo-web-vol-1
    • solr-vol-1
    • vmail-index-vol-1
    • vmail-vol-1
    "},{"location":"backup_restore/b_n_r-accidental_deletion/","title":"Recover accidentally deleted data","text":"

    So you deleted a mailbox and have no backups, he?

    If you noticed your mistake within a few hours, you can probably recover the users data.

    "},{"location":"backup_restore/b_n_r-accidental_deletion/#sogo","title":"SOGo","text":"

    We automatically create daily backups (24h interval starting from running up -d) in /var/lib/docker/volumes/mailcowdockerized_sogo-userdata-backup-vol-1/_data/.

    Make sure the user you want to restore exists in your mailcow. Re-create them if they are missing.

    Copy the file named after the user you want to restore to __MAILCOW_DIRECTORY__/data/conf/sogo.

    1. Copy the backup: cp /var/lib/docker/volumes/mailcowdockerized_sogo-userdata-backup-vol-1/_data/restoreme@example.org __MAILCOW_DIRECTORY__/data/conf/sogo

    2. Run the following command:

      docker compose (Plugin)docker-compose (Standalone)
      docker compose exec -u sogo sogo-mailcow sogo-tool restore -F ALL /etc/sogo restoreme@example.org\n
      docker-compose exec -u sogo sogo-mailcow sogo-tool restore -F ALL /etc/sogo restoreme@example.org\n

      Run sogo-tool without parameters to check for possible restore options.

    3. Delete the copied backup by running rm __MAILCOW_DIRECTORY__/data/conf/sogo

    4. Restart SOGo and Memcached:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose restart sogo-mailcow memcached-mailcow\n
    docker-compose restart sogo-mailcow memcached-mailcow\n
    "},{"location":"backup_restore/b_n_r-accidental_deletion/#mail","title":"Mail","text":"

    In case of an accidental deletion of a mailbox, you will be able to recover for (by default) 5 days. This depends on the MAILDIR_GC_TIME parameter in mailcow.conf.

    A deleted mailbox is copied in its encrypted form to /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/_garbage.

    The folder inside _garbage follows the structure [timestamp]_[domain_sanitized][user_sanitized], for example 1629109708_exampleorgtest in case of test@example.org deleted on 1629109708.

    To restore make sure you are actually restoring to the same mailcow it was deleted from or you use the same encryption keys in crypt-vol-1.

    Make sure the user you want to restore exists in your mailcow. Re-create them if they are missing.

    Copy the folders from /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/_garbage/[timestamp]_[domain_sanitized][user_sanitized] back to /var/lib/docker/volumes/mailcowdockerized_vmail-vol-1/_data/[domain]/[user] and resync the folder and recalc the quota:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net '*'\ndocker compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net\n
    docker-compose exec dovecot-mailcow doveadm force-resync -u restoreme@example.net '*'\ndocker-compose exec dovecot-mailcow doveadm quota recalc -u restoreme@example.net\n
    "},{"location":"backup_restore/b_n_r-backup/","title":"Backup","text":""},{"location":"backup_restore/b_n_r-backup/#backup","title":"Backup","text":""},{"location":"backup_restore/b_n_r-backup/#manual","title":"Manual","text":"

    You can use the provided script helper-scripts/backup_and_restore.sh to backup mailcow automatically.

    Please do not copy this script to another location.

    To run a backup, write \"backup\" as first parameter and either one or more components to backup as following parameters. You can also use \"all\" as second parameter to backup all components. Append --delete-days n to delete backups older than n days.

    # Syntax:\n# ./helper-scripts/backup_and_restore.sh backup (vmail|crypt|redis|rspamd|postfix|mysql|all|--delete-days)\n\n# Backup all, delete backups older than 3 days\n./helper-scripts/backup_and_restore.sh backup all --delete-days 3\n\n# Backup vmail, crypt and mysql data, delete backups older than 30 days\n./helper-scripts/backup_and_restore.sh backup vmail crypt mysql --delete-days 30\n\n# Backup vmail\n./helper-scripts/backup_and_restore.sh backup vmail\n
    "},{"location":"backup_restore/b_n_r-backup/#variables-for-backuprestore-script","title":"Variables for backup/restore script","text":""},{"location":"backup_restore/b_n_r-backup/#multithreading","title":"Multithreading","text":"

    With the 2022-10 update it is possible to run the script with multithreading support. This can be used for backups as well as for restores.

    To start the backup/restore with multithreading you have to add THREADS as an environment variable in front of the command to execute the script.

    THREADS=14 /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all\n
    The number after the = character indicates the number of threads. Please keep your core count -2 to leave enough CPU power for mailcow itself.

    "},{"location":"backup_restore/b_n_r-backup/#backup-path","title":"Backup path","text":"

    The script will ask you for a backup location. Inside of this location it will create folders in the format \"mailcow_DATE\". You should not rename those folders to not break the restore process.

    To run a backup unattended, define MAILCOW_BACKUP_LOCATION as environment variable before starting the script:

    MAILCOW_BACKUP_LOCATION=/opt/backup /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all\n

    Tip

    Both variables mentioned above can also be combined! Ex:

    MAILCOW_BACKUP_LOCATION=/opt/backup THREADS=14 /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup all\n

    "},{"location":"backup_restore/b_n_r-backup/#cronjob","title":"Cronjob","text":"

    You can run the backup script regularly via cronjob. Make sure BACKUP_LOCATION exists:

    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n5 4 * * * cd /opt/mailcow-dockerized/; MAILCOW_BACKUP_LOCATION=/mnt/mailcow_backups /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup mysql crypt redis --delete-days 3\n

    Per default cron sends the full result of each backup operation by email. If you want cron to only mail on error (non-zero exit code) you may want to use the following snippet. Pathes need to be modified according to your setup (this script is a user contribution).

    This following script may be placed in /etc/cron.daily/mailcow-backup - do not forget to mark it as executable via chmod +x:

    #!/bin/sh\n\n# Backup mailcow data\n# https://mailcow.github.io/mailcow-dockerized-docs/backup_restore/b_n_r-backup/\n\nset -e\n\nOUT=\"$(mktemp)\"\nexport MAILCOW_BACKUP_LOCATION=\"/opt/backup\"\nSCRIPT=\"/opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh\"\nPARAMETERS=\"backup all\"\nOPTIONS=\"--delete-days 30\"\n\n# run command\nset +e\n\"${SCRIPT}\" ${PARAMETERS} ${OPTIONS} 2>&1 > \"$OUT\"\nRESULT=$?\n\nif [ $RESULT -ne 0 ]\n    then\n            echo \"${SCRIPT} ${PARAMETERS} ${OPTIONS} encounters an error:\"\n            echo \"RESULT=$RESULT\"\n            echo \"STDOUT / STDERR:\"\n            cat \"$OUT\"\nfi\n
    "},{"location":"backup_restore/b_n_r-backup/#backup-strategy-with-rsync-and-mailcow-backup-script","title":"Backup strategy with rsync and mailcow backup script","text":"

    Create the destination directory for mailcows helper script:

    mkdir -p /external_share/backups/backup_script\n

    Create cronjobs:

    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n25 1 * * * rsync -aH --delete /opt/mailcow-dockerized /external_share/backups/mailcow-dockerized\n40 2 * * * rsync -aH --delete /var/lib/docker/volumes /external_share/backups/var_lib_docker_volumes\n5 4 * * * cd /opt/mailcow-dockerized/; BACKUP_LOCATION=/external_share/backups/backup_script /opt/mailcow-dockerized/helper-scripts/backup_and_restore.sh backup mysql crypt redis --delete-days 3\n# If you want to, use the acl util to backup permissions of some/all folders/files: getfacl -Rn /path\n

    On the destination (in this case /external_share/backups) you may want to have snapshot capabilities (ZFS, Btrfs etc.). Snapshot daily and keep for n days for a consistent backup. Do not rsync to a Samba share, you need to keep the correct permissions!

    To restore you'd simply need to run rsync the other way round and restart Docker to re-read the volumes. Run:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose pull\ndocker compose up -d\n
    docker-compose pull\ndocker-compose up -d\n

    If you are lucky Redis and MariaDB can automatically fix the inconsistent databases (if they are inconsistent). In case of a corrupted database you'd need to use the helper script to restore the inconsistent elements. If a restore fails, try to extract the backups and copy the files back manually. Keep the file permissions!

    "},{"location":"backup_restore/b_n_r-backup_restore-maildir/","title":"Maildir","text":""},{"location":"backup_restore/b_n_r-backup_restore-maildir/#backup","title":"Backup","text":"

    This line backups the vmail directory to a file backup_vmail.tar.gz in the mailcow root directory:

    docker compose (Plugin)docker-compose (Standalone)
    cd /path/to/mailcow-dockerized\ndocker run --rm -i -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar cvfz /backup/backup_vmail.tar.gz /vmail\n
    cd /path/to/mailcow-dockerized\ndocker run --rm -i -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar cvfz /backup/backup_vmail.tar.gz /vmail\n

    You can change the path by adjusting ${PWD} (which equals to the current directory) to any path you have write-access to. Set the filename backup_vmail.tar.gz to any custom name, but leave the path as it is. Example: [...] tar cvfz /backup/my_own_filename_.tar.gz

    "},{"location":"backup_restore/b_n_r-backup_restore-maildir/#restore","title":"Restore","text":"docker compose (Plugin)docker-compose (Standalone)
    cd /path/to/mailcow-dockerized\ndocker run --rm -it -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar xvfz /backup/backup_vmail.tar.gz\n
    cd /path/to/mailcow-dockerized\ndocker run --rm -it -v $(docker inspect --format '{{ range .Mounts }}{{ if eq .Destination \"/var/vmail\" }}{{ .Name }}{{ end }}{{ end }}' $(docker-compose ps -q dovecot-mailcow)):/vmail -v ${PWD}:/backup debian:bullseye-slim tar xvfz /backup/backup_vmail.tar.gz\n
    "},{"location":"backup_restore/b_n_r-backup_restore-mysql/","title":"MySQL (mysqldump)","text":""},{"location":"backup_restore/b_n_r-backup_restore-mysql/#backup","title":"Backup","text":"docker compose (Plugin)docker-compose (Standalone)
    cd /path/to/mailcow-dockerized\nsource mailcow.conf\nDATE=$(date +\"%Y%m%d_%H%M%S\")\ndocker compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} > backup_${DBNAME}_${DATE}.sql\n
    cd /path/to/mailcow-dockerized\nsource mailcow.conf\nDATE=$(date +\"%Y%m%d_%H%M%S\")\ndocker-compose exec -T mysql-mailcow mysqldump --default-character-set=utf8mb4 -u${DBUSER} -p${DBPASS} ${DBNAME} > backup_${DBNAME}_${DATE}.sql\n
    "},{"location":"backup_restore/b_n_r-backup_restore-mysql/#restore","title":"Restore","text":"

    Warning

    docker compose (Plugin)docker-compose (Standalone)

    You should redirect the SQL dump without docker compose to prevent parsing errors.

    You should redirect the SQL dump without docker-compose to prevent parsing errors.

    cd /path/to/mailcow-dockerized\nsource mailcow.conf\ndocker exec -i $(docker compose ps -q mysql-mailcow) mysql -u${DBUSER} -p${DBPASS} ${DBNAME} < backup_file.sql\n
    "},{"location":"backup_restore/b_n_r-coldstandby/","title":"Cold-standby backup","text":"

    mailcow offers an easy way to create a consistent copy of itself to be rsync'ed to a remote location without downtime.

    This may also be used to transfer your mailcow to a new server.

    "},{"location":"backup_restore/b_n_r-coldstandby/#you-should-know","title":"You should know","text":"

    The provided script will work on default installations.

    It may break when you use unsupported volume overrides. We don't support that and we will not include hacks to support that. Please run and maintain a fork if you plan to keep your changes.

    The script will use the same paths as your default mailcow installation. That is the mailcow base directory - for most users /opt/mailcow-dockerized - as well as the mountpoints.

    To find the paths of your source volumes we use docker inspect and read the destination directory of every volume related to your mailcow compose project. This means we will also transfer volumes you may have added in an override file. Local bind mounts may or may not work.

    The script uses rsync with the --delete flag. The destination will be an exact copy of the source.

    mariabackup is used to create a consistent copy of the SQL data directory.

    After rsync'ing the data we will run the command below (depending on your set docker compose type in mailcow.conf) and remove old image tags from the destination:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose pull\n
    docker-compose pull\n

    Your source will not be changed at any time.

    You may want to make sure to use the same /etc/docker/daemon.json on the remote target.

    You should not run disk snapshots (e.g. via ZFS, LVM etc.) on the target at the very same time as this script is run.

    Versioning is not part of this script, we rely on the destination (snapshots or backups). You may also want to use any other tool for that.

    "},{"location":"backup_restore/b_n_r-coldstandby/#prepare","title":"Prepare","text":"

    You will need an SSH-enabled destination and a keyfile to connect to said destination. The key should not be protected by a password for the script to work unattended.

    In your mailcow base directory, e.g. /opt/mailcow-dockerized you will find a file create_cold_standby.sh.

    Edit this file and change the exported variables:

    export REMOTE_SSH_KEY=/path/to/keyfile\nexport REMOTE_SSH_PORT=22\nexport REMOTE_SSH_HOST=mailcow-backup.host.name\n

    The key must be owned and readable by root only.

    Both the source and destination require rsync >= v3.1.0. The destination must have Docker and docker compose v2 available.

    The script will detect errors automatically and exit.

    You may want to test the connection by running ssh mailcow-backup.host.name -p22 -i /path/to/keyfile.

    "},{"location":"backup_restore/b_n_r-coldstandby/#backup-and-refresh-the-cold-standby","title":"Backup and refresh the cold-standby","text":"

    Run the first backup, this may take a while depending on the connection:

    bash /opt/mailcow-dockerized/create_cold_standby.sh\n

    That was easy, wasn't it?

    Updating your cold-standby is just as easy:

    bash /opt/mailcow-dockerized/create_cold_standby.sh\n

    It's the same command.

    "},{"location":"backup_restore/b_n_r-coldstandby/#automated-backups-with-cron","title":"Automated backups with cron","text":"

    First make sure that the cron service is enabled and running:

    systemctl enable cron.service && systemctl start cron.service\n

    To automate the backups to the cold-standby server you can use a cron job. To edit the cron jobs for the root user run:

    crontab -e\n

    Add the following lines to synchronize the cold standby server daily at 03:00. In this example errors of the last execution are logged into a file.

    PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin\n\n0 3 * * * bash /opt/mailcow-dockerized/create_cold_standby.sh 2> /var/log/mailcow-coldstandby-sync.log\n

    If saved correctly, the cron job should be shown by typing:

    crontab -l\n
    "},{"location":"backup_restore/b_n_r-restore/","title":"Restore","text":""},{"location":"backup_restore/b_n_r-restore/#restore","title":"Restore","text":"

    Please do not copy this script to another location.

    To run a restore, start mailcow, use the script with \"restore\" as first parameter.

    # Syntax:\n# ./helper-scripts/backup_and_restore.sh restore\n

    The script will ask you for a backup location containing the mailcow_DATE folders.

    "},{"location":"client/client-android/","title":"Android","text":"
    1. Open the Email app.
    2. If this is your first email account, tap Add Account; if not, tap More and Settings and then Add account.
    3. Select Microsoft Exchange ActiveSync.
    4. Enter your email address () and password.
    5. Tap Sign in.
    "},{"location":"client/client-apple/","title":"Apple macOS / iOS","text":""},{"location":"client/client-apple/#method-1-via-mobileconfig","title":"Method 1 via Mobileconfig","text":"

    Email, contacts and calendars can be configured automatically on Apple devices by installing a profile. To download a profile you must login to the mailcow UI first.

    "},{"location":"client/client-apple/#method-11-imap-smtp-and-calcarddav","title":"Method 1.1: IMAP, SMTP and Cal/CardDAV","text":"

    This method configures IMAP, CardDAV and CalDAV.

    1. Download and open the file from https://${MAILCOW_HOSTNAME}/mobileconfig.phpmailcow.mobileconfig.
    2. Enter the unlock code (iPhone) or computer password (Mac).
    3. Enter your email password three times when prompted.
    "},{"location":"client/client-apple/#method-12-imap-smtp-no-dav","title":"Method 1.2: IMAP, SMTP (no DAV)","text":"

    This method configures IMAP and SMTP only.

    1. Download and open the file from https://${MAILCOW_HOSTNAME}/mobileconfig.php?only_emailmailcow.mobileconfig.
    2. Enter the unlock code (iPhone) or computer password (Mac).
    3. Enter your email password when prompted.
    "},{"location":"client/client-apple/#method-2-exchange-activesync-emulation","title":"Method 2 (Exchange ActiveSync emulation)","text":"

    On iOS, Exchange ActiveSync is also supported as an alternative to the procedure above. It has the advantage of supporting push email (i.e. you are immediately notified of incoming messages), but has some limitations, e.g. it does not support more than three email addresses per contact in your address book. Follow the steps below if you decide to use Exchange instead.

    1. Open the Settings app, tap Mail, tap Accounts, tap Add Acccount, select Exchange.
    2. Enter your email address () and tap Next.
    3. Enter your password, tap Next again.
    4. Finally, tap Save.
    "},{"location":"client/client-emclient/","title":"eM Client","text":"
    1. Launch eM Client.
    2. If this is the first time you launched eM Client, it asks you to set up your account. Proceed to step 4.
    3. Go to Menu at the top, select Tools and Accounts.
    4. Enter your email address () and click Start Now.
    5. Enter your password and click Continue.
    6. Enter your name () and click Next.
    7. Click Finish.
    "},{"location":"client/client-kontact/","title":"KDE Kontact","text":"
    1. Launch Kontact.
    2. If this is the first time you launched Kontact or KMail, it asks you to set up your account. Proceed to step 4.
    3. Go to Mail in the sidebar. Go to the Tools menu and select Account Wizard.
    4. Enter your name (), email address () and your password. Click Next.
    5. Click Create Account. If prompted, re-enter your password and click OK.
    6. Close the window by clicking Finish.
    7. Go to Calendar in the sidebar.
    8. Go to the Settings menu and select Configure KOrganizer.
    9. Go to the Calendars tab and click the Add button.
    10. Choose DAV groupware resource and click OK.
    11. Enter your email address () and your password. Click Next.
    12. Select ScalableOGo from the dropdown menu and click Next.
    13. Enter your mailcow hostname into the Host field and click Next.
    14. Click Test Connection and then Finish. Finally, click OK twice.

    Once you have set up Kontact, you can also use KMail, KOrganizer and KAddressBook individually.

    "},{"location":"client/client-manual/","title":"Manual configuration","text":"

    These instructions are valid for unchanged port bindings only!

    "},{"location":"client/client-manual/#email","title":"Email","text":"Service Encryption Host Port IMAP STARTTLS mailcow hostname 143 IMAPS SSL mailcow hostname 993 POP3 STARTTLS mailcow hostname 110 POP3S SSL mailcow hostname 995 SMTP STARTTLS mailcow hostname 587 SMTPS SSL mailcow hostname 465

    Please use the \"plain\" password setting as the authentication mechanism. Contrary to what the name implies, the password will not be transferred to the server in plain text as no authentication is allowed to take place without TLS.

    "},{"location":"client/client-manual/#contacts-and-calendars","title":"Contacts and calendars","text":"

    SOGos default calendar (CalDAV) and contacts (CardDAV) URLs:

    1. CalDAV https://mail.example.com/SOGo/dav/user@example.com/Calendar/personal/https:///SOGo/dav//Calendar/personal/

    2. CardDAV https://mail.example.com/SOGo/dav/user@example.com/Contacts/personal/https:///SOGo/dav//Contacts/personal/

    Some applications may require you to use https://mail.example.com/SOGo/dav/https:///SOGo/dav/ or the full path to your calendar, which can be found and copied from within SOGo.

    "},{"location":"client/client-outlook/","title":"Microsoft Outlook","text":"
    1. Download and install Outlook CalDav Synchronizer.
    2. Launch Outlook.
    3. If this is the first time you launched Outlook, it asks you to set up your account. Proceed to step 5.
    4. Go to the File menu and click Add Account.
    5. Enter your name (), email address () and your password. Click Next.
    6. Click Finish.
    7. Go to the CalDav Synchronizer ribbon and click Synchronization Profiles.
    8. Click the second button at top (Add multiple profiles), select Sogo, click Ok.
    9. Click the Get IMAP/POP3 account settings button.
    10. Click Discover resources and assign to Outlook folders.
    11. In the Select Resource window that pops up, select your main calendar (usually Personal Calendar), click the ... button, assign it to Calendar, and click OK. Go to the Address Books and Tasks tabs and repeat repeat the process accordingly. Do not assign multiple calendars, address books or task lists!
    12. Close all windows with the OK buttons.
    "},{"location":"client/client-outlook/#outlook-2016-or-higher-from-office-365-on-windows","title":"Outlook 2016 or higher from Office 365 on Windows","text":"

    This is only applicable if your server administrator has not disabled EAS for Outlook. If it is disabled, please follow the guide for Outlook 2007 instead.

    Outlook 2016 has an issue with autodiscover. Only Outlook from Office 365 is affected. If you installed Outlook from another source, please follow the guide for Outlook 2013 or higher.

    For EAS you must use the old assistant by launching C:\\Program Files (x86)\\Microsoft Office\\root\\Office16\\OLCFG.EXE. If this application opens, you can go to step 4 of the guide for Outlook 2013 below.

    If it does not open, you can completely disable the new account creation wizard and follow the guide for Outlook 2013 below.

    "},{"location":"client/client-outlook/#outlook-2007-or-2010-on-windows","title":"Outlook 2007 or 2010 on Windows","text":""},{"location":"client/client-outlook/#outlook-2007-or-higher-on-windows-calendercontacts-via-caldav-synchronizer","title":"Outlook 2007 or higher on Windows (Calender/Contacts via CalDav Synchronizer)","text":""},{"location":"client/client-outlook/#outlook-2013-or-higher-on-windows-active-sync-not-recommended","title":"Outlook 2013 or higher on Windows (Active Sync - not recommended)","text":"

    This is only applicable if your server administrator has not disabled EAS for Outlook. If it is disabled, please follow the guide for Outlook 2007 instead.

    1. Launch Outlook.
    2. If this is the first time you launched Outlook, it asks you to set up your account. Proceed to step 4.
    3. Go to the File menu and click Add Account.
    4. Enter your name (), email address () and your password. Click Next.
    5. When prompted, enter your password again, check Remember my credentials and click OK.
    6. Click the Allow button.
    7. Click Finish.
    "},{"location":"client/client-outlook/#outlook-2011-or-higher-on-macos","title":"Outlook 2011 or higher on macOS","text":"

    The Mac version of Outlook does not synchronize calendars and contacts and therefore is not supported.

    "},{"location":"client/client-thunderbird/","title":"Mozilla Thunderbird","text":"
    1. Launch Thunderbird.
    2. If this is the first time you launched Thunderbird, it asks you whether you would like a new email address. Click Skip this and use my existing email and proceed to step 4.
    3. Go to the File menu and select New, Existing Mail Account....
    4. Enter your name (), email address () and your password. Make sure the Remember password checkbox is selected and click Continue.
    5. Once the configuration has been automatically detected, make sure IMAP is selected and click Done.
    6. To use your contacts from the server, click on the arrow next to \"Address Books\" and click the Connect button on each address book you would like to use.
    7. To use your calendars from the server, click on the arrow next to \"Calendars\" and click the Connect button on each calendar you would like to use.
    8. (Optional) If you want Thunderbird to sync all subfolders, go to the Account Settings menu and select Server Settings. In the Server Settings tab, click on the Advanced button. In the Advanced Account Settings window, uncheck the \"Show only subscribed folders\" checkbox. Click OK to save the changes.
    9. Click Finish to close the Account Setup window.
    "},{"location":"client/client-windows/","title":"Windows Mail","text":"

    Windows 8 and higher support email, contacts and calendar via Exchange ActiveSync.

    1. Open the Mail app.
    2. If you have not previously used Mail, you can click Add Account in the main window. Proceed to step 4.
    3. Click Accounts in the sidebar on the left, then click Add Account on the far right.
    4. Select Exchange.
    5. Enter your email address () and click Next.
    6. Enter your password and click Log in.

    Once you have set up the Mail app, you can also use the People and Calendar apps.

    "},{"location":"client/client/","title":"Overview","text":"

    mailcow supports a variety of email clients, both on desktop computers and on smartphones. Below, you can find a number of configuration guides that explain how to configure your mailcow account.

    Tip

    If you access this page by logging into your mailcow server and clicking the \"Show configuration guides for email clients and smartphones\" link, all of the guides will be personalized with your email address and server name.

    Success

    Since you accessed this page after logging into your mailcow server, all of the guides have been personalized with your email address and server name.
    • Android
    • Apple iOS / macOS
    • eM Client
    • KDE Kontact / KMail
    • Microsoft Outlook
    • Mozilla Thunderbird
    • Windows Mail
    • Manual configuration
    "},{"location":"i_u_m/i_u_m_deinstall/","title":"Deinstallation","text":"

    To remove mailcow: dockerized with all it's volumes, images and containers do:

    docker compose (Plugin)docker-compose (Standalone)
    docker compose down -v --rmi all --remove-orphans\n
    docker-compose down -v --rmi all --remove-orphans\n

    Info