02-06-2008 17:46
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 весьма проста. Все, что потребуется, это создать файл .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.
Чтобы e-mail консоль начала нормально работать, потребуется запускать Fetchmail в регулярные интервалы времени. Для выполнения этой задачи, обычно лучшим вариантом для этого является cron. Вот простейшая запись в crontab:
0, 15, 30, 45 * * * * /usr/bin/fetchmail
<< Понятие E-mail | Multi Tool Linux | Procmail >>