mailq | awk '$7~/@/{print$1}' | while read qid; do postsuper -d $qid; done
Показ дописів із міткою mail. Показати всі дописи
Показ дописів із міткою mail. Показати всі дописи
Видалення пошти з черги по вказаному e-mail
postqueue -p | tail -n +2 | awk 'BEGIN { RS = "" } /mail@domain\.com/ { print $1 }' | tr -d '*!' | postsuper -d -
doveadm видалення старих листів з скриньок
Видалення з усіх (-А) скриньок старших за 90 і 60 днів, з папок Trash і Junk відповідно.
doveadm expunge -A mailbox Trash savedbefore 90d
doveadm expunge -A mailbox Junk savedbefore 60d
Видалення з вказаної скриньки
doveadm expunge mailbox Junk -u email@domain.com savedbefore 60d
doveadm expunge -A mailbox Trash savedbefore 90d
doveadm expunge -A mailbox Junk savedbefore 60d
Видалення з вказаної скриньки
doveadm expunge mailbox Junk -u email@domain.com savedbefore 60d
Синхронізація двох imap-скриньок
Синхронізація двох imap-скриньок. Дуже корисна утиліта при переносах поштових серверів, доменів, скриньок.
imapsync --host1 127.0.0.1 --user1 mail.server1.com --password1 pa$$w0rd \
--host2 mail.server2.com --user2 email@domain2.com --password2 pa$$w0rd
postfix: вибірка з maillog по e-mail
postfix має своєрідний формат логів і вибирати потрібну інформацію потрібно в два проходи. Ось команда, яка робить гарну вибірку по потрібному е-мейлу.
grep 'to=<email@domain.com' /var/log/mail.log | cut -d ' ' -f 6 | grep -f - /var/log/mail.log > email@domain.com.txt
Очищення imap скриньки від старих листів
Прийшло таке дивне робоче повідомлення, але здивування було більше, коли в скрині виявилось 103 тисячі повідомлень.
Ділюсь скриптом, який за 5 хвилин видалив 70 тисяч повідомлень.
#!/usr/bin/python
MAIL_SERVER = 'mail.server.com'
USERNAME = 'login@domain.com'
PASSWORD = 'pass'
MAILBOX = 'INBOX'
MAX_DAYS = 392 # Deletes messages older than a week
import imaplib
import datetime
today = datetime.date.today()
cutoff_date = today - datetime.timedelta(days=MAX_DAYS)
before_date = cutoff_date.strftime('%d-%b-%Y')
search_args = '(BEFORE "%s")' % before_date
imap = imaplib.IMAP4(MAIL_SERVER)
imap.login(USERNAME, PASSWORD)
imap.select(MAILBOX)
typ, data = imap.search(None, 'ALL', search_args)
for num in data[0].split():
print num
imap.store(num, '+FLAGS', '\\Deleted')
imap.expunge()
imap.close()
imap.logout()
Простий аналіз mail.log за допомогою awstats
perl maillogconvert.pl vadmin < /var/log/mail.log | grep email@domain.com > result.txt
postfix, virtual mail
Підписатися на:
Коментарі (Atom)
