UnixMountainSkiFun

Unix Горы Лыжи

02-06-2008 17:46

Fetchmail


Fetchmail -- это один из тех высококлассных инструментов, которые делают операционную систему, такую как Linux, удобной в использовании. Он легко настраивается, имеет достаточно развитую функциональность, и выполняет то, что вы желаете, когда вы этого желаете, причем все это делается без лишнего нытья. Вы можете запускать его из cron-а или из командной строки. Эх, если бы все вокруг было таким же удобным.

Если исходить из потребностей e-mail консоли, -- вы будете использовать Fetchmail, чтобы получать e-mail от своего ISP. Это означает, что вы перенастроите Ваш текущий e-mail клиент так, чтобы он вместо получения e-mail по POP/IMAP, получал бы e-mail локально. А зачем собственно? Просто потому, что когда MDA на вашей системе пожелает отправить e-mail, на вашу учетную запись, то он сначала проверит, нет ли в вашем домашнем каталоге файла, с названием .forward. Если таковой имеется, то вся ваша почта будет перенаправлена на e-mail-адрес, указанный в файле .forward. Однако постойте! Мы вовсе и не желаем, чтобы такое происходило. Единственное, что мы желаем, так это то, чтобы входящий e-mail был отправлен на обработку Procmail-у. То, как это сделать, будет описано в следующей части этой главы. На данный момент, просто возьмите на заметку, что здесь ключевым моментом будет являться файл .forward.

Настройка Fetchmail

Настройка Fetchmail весьма проста. Все, что потребуется, это создать файл .fetchmailrc в вашем домашнем каталоге. Вы можете прочитать страницы руководства Fetchmail и сформировать этот файл вручную, либо можете использовать fetchmailconf, чтобы сгенерировать файл .fetchmailrc программно. Лично я формирую такой файл вручную, однако приложение fetchmailconf намного более быстрый способ добиться результата.

Рисунок 7-1 показывает ситуацию, когда я добавляю новый удаленный e-mail-сервер. Рисунок 7-2 представляет собой screenshot, на котором я настраиваю протокол и добавляю новую учетную запись e-mail. И наконец рисунок 7-3 показывает нам момент, когда я ввожу пароль для учетной записи e-mail и настраиваю опции обработки.

Рисунок 7-1. Настройка Fetchmail -- новый e-mail-сервер.

Рисунок 7-2. Настройка Fetchmail -- настройка протокола.

Рисунок 7-3. Настройка Fetchmail -- настройка учетной записи.

Когда fetchmail настроен и работает, можно запустить его из командной строки, либо через cron. Рисунок 7-4 показывает Fetchmail, который получил один e-mail, а затем удалил (flushed/removed) его с моего ISP. Когда вам потребуется автоматизировать Fetchmail-процесс, то для того, чтобы выполнять его по расписанию, используйте cron, только убедитесь, что вы используете параметр командной строки -s (silent или "тихий" режим), иначе вскоре начнете получать сообщения от cron-а всякий раз, когда он попытается выполнить Fetchmail.

Рисунок 7-4. Результат работы Fetchmail.

crontab

Чтобы e-mail консоль начала нормально работать, потребуется запускать Fetchmail в регулярные интервалы времени. Для выполнения этой задачи, обычно лучшим вариантом для этого является cron. Вот простейшая запись в crontab:

 0, 15, 30, 45 * * * * /usr/bin/fetchmail

<< Понятие E-mail | Multi Tool Linux | Procmail >>


edit RightSideBar