GNU/Linux >> Znalost Linux >  >> Panels >> Panels

Automatické čištění odpadků a/nebo nevyžádaných složek pomocí ISPConfig (s Roundcube + Tmpreaper (Tmpwatch))

Automatické čištění koše a/nebo nevyžádaných složek pomocí ISPConfig (s Roundcube + Tmpreaper (Tmpwatch ))

Přehled:

Tento krátký mini-návod vám pomůže nastavit automatické čištění koše a nevyžádaných složek. Většina (webových) poštovních klientů je (umí) automaticky vytvářet. Mnoho lidí tam nečistí poštovní adresáře, což způsobuje masivní nárůst velikosti složek Nevyžádaná pošta a Koš a vzhledem k tomu, že ISPConfig (zatím ne) dokáže nastavit dobré limity velikosti poštovních adresářů, je alternativou nechat tyto složky vyčistit po několika dnech.

Předpoklady:

Tento výukový program předpokládá, že aktuálně používáte následující nebo podobnou konfiguraci:

  • Linux Debian Etch (v4.0)
  • ISPConfig (v2.2.24 nebo novější)
  • Vytvořit  
  • Nano nebo vi
  • Roundcubemail (instalace balíčku v0.1.1)
  • Aspoň 1 doména s 1 spuštěnou poštovní schránkou
  • Nevyžádaná pošta je nastavena tak, aby byla přesunuta do složky místo mazání (Pokud není nastaveno, viz odkazy)

Pokud se tato konfigurace neshoduje s vaší, možná budete muset upravit postup, aby odpovídal vaší konfiguraci.

Výukový program přesunout nevyžádanou poštu do složky místo mazání:https://www.howtoforge.com/forums/showthread.php?t=15704
Instalace balíčku Roundcubemail v0.1.1:http://ispconfig.bb-hosting .org/downloads/roundcube/roundcubemail-0.1.1.pkg 

1 – Nastavení roundcubemail na automatické vytváření složek Koš a Nevyžádaná pošta

Pokud jste to již provedli pomocí Roundcubemail nebo jinými metodami, můžete tuto kapitolu přeskočit. Ujistěte se, že .Trash a .Junk existují.

Chcete-li nastavit Roundcubemail tak, aby automaticky vytvářel poštovní složky, musíme upravit konfiguraci Roundcubemail:

nano /home/admispconfig/ispconfig/web/roundcubemail/config/main.inc.php

Vyhledejte „$rcmail_config['create_default_folders']“ a ujistěte se, že je nastaveno na hodnotu TRUE a zda je konfigurace podobná:

[...]
// store draft message is this mailbox
// leave blank if draft messages should not be stored
$rcmail_config['drafts_mbox'] = 'Drafts';
// store spam messages in this mailbox
$rcmail_config['junk_mbox'] = 'Junk';
// store sent message is this mailbox
// leave blank if sent messages should not be stored
$rcmail_config['sent_mbox'] = 'Sent';
// move messages to this folder when deleting them
// leave blank if they should be deleted directly
$rcmail_config['trash_mbox'] = 'Trash';
// display these folders separately in the mailbox list.
// these folders will also be displayed with localized names
$rcmail_config['default_imap_folders'] = array('INBOX', 'Drafts', 'Sent', 'Junk', 'Trash');
// automatically create the above listed default folders on login
$rcmail_config['create_default_folders'] = TRUE;
// protect the default folders from renames, deletes, and subscription changes
$rcmail_config['protect_default_folders'] = TRUE;
[...]

Nyní, když se uživatel přihlásí, budou vytvořeny poštovní složky.

POZNÁMKA:To vyžaduje, aby uživatel musel být přihlášen, jinak odpadkové a nevyžádané složky prostě neexistují a nebudou samozřejmě vyčištěny!

2 – Instalace tmpreaper

Balíček tmpwatch býval ve správci balíčků Aptitude, ale z neznámých důvodů byl nahrazen. Další varianty linuxu najdete v tmpwatch.

K tomu zadáme následující příkaz:

apt-get install tempreaper

DŮLEŽITÉ:Pokud můžete použít tmpreaper, přejděte ke kapitole 3. Pokud musíte použít tmpwatch, nezapomeňte upravit soubor cron!

Pokud nemůžete použít tmpreaper, můžete si stáhnout a nainstalovat tmpwatch následovně:

cd /usr/src
wget http://linux.bononline.nl/linux/tmpwatch/src/tmpwatch-2.9.0.tar.gz
tar xvzf tmpwatch-2.9.0.tar.gz
cd tmpwatch-2.9.0
make
make install

Díky MTvermoes!

3 – Přidat cronjob

Nyní potřebujeme přidat cronjob, aby systém denně kontroloval, které e-maily budou potřeba ke smazání. Doporučujeme, abyste toto nastavení nastavili na cron.daily, aby každý den kontrolovali e-maily, které jsou dostatečně staré na smazání. Můžete jej však také umístit do cron.hourly, což je nezbytné, pokud používáte maximální čas kratší než 24 hodin, jinak by se stále kontrolovalo pouze denně.

Chcete-li to provést, přejděte na /etc/cron.daily

cd /etc/cron.daily

Nyní vytvoříme nový soubor „clean-mailfolders“

nano clean-mailfolders

A aby to vypadalo takto:

#!/bin/sh
# Time to wait before removing mails from the Junk folder (Default: 7 days) Set 0 to turn off.
junk_max_hours=$((24*7))
# Time to wait before removing mails from the Trash folder (Default: 30 days) Set 0 to turn off.
trash_max_hours=$((24*30))
for domain in /var/www/*
do
  if [ -d "$domain"/user ]
  then
    for user in $domain/user/*
    do
      if [ "$junk_max_hours" -gt "0" ]
      then
        if [ -d "$user/Maildir/.Junk" ]
        then
          tmpreaper -m $junk_max_hours $user/Maildir/.Junk/{cur,new}
        fi
      fi
      if [ "$trash_max_hours" -gt "0" ]
      then
        if [ -d "$user/Maildir/.Trash" ]
        then
          tmpreaper -m $trash_max_hours $user/Maildir/.Trash/{cur,new}
        fi
      fi
    done
  fi
done

Možná budete chtít změnit data, aby vyhovovala vašim vlastním potřebám. Na začátku souboru jsou uvedeny 2 proměnné pojmenované "junk_max_hours" obsahující maximální počet hodin, po které je uchovávána pošta ve složce Nevyžádaná pošta, a "trash_max_hours" obsahující maximální počet hodin pošty ve složce Koš. Nastavením hodnoty na 0 zakážete čištění tohoto typu.

POZNÁMKA:Pokud musíte místo tmpreaper použít tmpwatch, nezapomeňte upravit soubor cron a nahradit „tmpreaper“ za „tmpwatch“.

Závěr

Ujistěte se, že jste to zkontrolovali před skutečným spuštěním na produkčních serverech. Tento návod je dodáván bez jakékoli záruky. Buďte moudří, testujte!

Proměnné můžete upravit tak, aby vyhovovaly vašim vlastním potřebám, jak bylo popsáno výše.

Doufám, že se vám můj první tutoriál bude líbit!


Panels
  1. Odstraňte soubory a složky v terminálu Linux

  2. Synchronizace více domovských složek pomocí Dropboxu a symbolických odkazů?

  3. Jak nainstalovat mod_ruby na různé distribuce Linuxu pro použití s ​​ISPConfig (2.2.20 a vyšší)

  1. Graficky porovnejte soubory a složky v Linuxu s Meldem

  2. Jak nainstalovat suPHP na různé distribuce Linuxu pro použití s ​​ISPConfig (2.2.20 a vyšší)

  3. SuPHP na Fedoře 7 nebo CentOS 5 s ISPConfig

  1. Nahrazení Amavisd za Rspamd v ISPConfig 3.1 na Debianu a Ubuntu

  2. Použití webové pošty RoundCube s ISPConfig 3 na Debian Wheezy (Apache2)

  3. Automatické čištění odpadků a/nebo nevyžádaných složek pomocí ISPConfig (s Roundcube + Tmpreaper (Tmpwatch))