Зачем оно надо?
После долгого использования удалённого
доступа в интернет мне надоело смотреть на задумчивые почтовые клиенты,
которые как будто замерзают на всё время сеанса получения почты. Чувство
комфорта в работе это, естественно, не вызывало. Да и запуск каждый раз
почтового клиента при доступе в сеть или лицезрение его постоянно
запущенным тоже не вызывало особого удовольствия. И тут пришёл на помощь
старый добрый unix-way с его дотошным разделением труда. Не надо возлагать
на программу того, что она не обязана делать. Пусть этим займется
программа, которая для этого предназначена. А как известно: специалист
справится со своими задачами куда лучше, нежели работник широкого
профиля с той же работой.
Вот тут и появляется на сцене fetchmail. Задачи программы до безобразия просты: принять почту с удалённых почтовых ящиков хозяина и положить её в системный почтовый ящик. Теперь Вам не надо задумываться о том, чтобы запустить почтового клиента строго тогда, когда компьютер войдёт в сеть. Мало того, процесс получения почты можно автоматизировать. Ваша машина без проблем может дозваниваться до провайдера в ночные часы, когда расценки на интернет дешевле, забирать почту и отключаться. Зачем лишать себя сна, если всё может сделать машина, тем более компьютеры для того и создавались, чтобы перекладывать на них работу человека. И, просыпаясь утром, Вы можете почитать свежую почту, не подключаясь к сети.
Что для этого надо?
Собственно, нам нужен сам fetchmail. Может
даже не понадобится искать его в интернете и скачивать, так как он входит
в состав большинства современных дистрибутивов. Как правило он разбивается
на два пакета: fetchmail и fetchmail-daemon. Последний запускается как
системный демон и не требует участия человека. На момент написания статьи
у меня в системе стоит fetchmail версии 6.2.0.
Ближе к телу.
Конфигурационные файлы fetchmail могут
находиться в двух местах: в файле /etc/fetchmailrc и в ~/.fetchmailrc.
Формат этих файлов одинаков, но без пущей надобности в общесистемный лезть
не стоит.
Итак, начну с простого примера. Однако этого
простого примера вполне достаточно в большинстве случаев.
~/.fetchmailrc
#################################################################
set postmaster "localuser"
set daemon 600
poll mail.domain.ru with proto POP3
user 'username' there with password 'pass' is 'localuser' here option
mda procmail
################################################################
где:
set postmaster "localuser"
Этому пользователю будет отправляться почта, которая есть в ящике, но
предназначена несуществующему пользователю вашей системы. Этот
параметр очень желателен в написании общесистемного конфигурационного
файла. При написании пользовательского он не обязателен.
set daemon 600
fetchmail работает в режиме демона и через указанный промежуток
времени проверяет почту. Время указывается в секундах. В данном случае
600 секунд, то есть 10 минут.
poll mail.domain.ru with proto POP3
Здесь указывается с какого сервера и по какому протоколу забирать
почту. Надо просто заменить mail.domain.com из примера на тот сервер,
который используете Вы.
Теперь о протоколах. Fetchmail поддерживает достаточно много протоколов доступа к почтовым серверам, но в настоящее время большей частью пользуются двумя основными: POP3 и IMAP4.
user 'username' there with password 'pass' is 'localuser' here option
Здесь уточняется логин и пароль аккаунта почтового сервера, а так же
пользователь локальной системы, которому будет складываться почта с
удалённого хоста.
mda procmail
Эта строчка указывает, кто будет доставлять
почту пользователю локально. Этим может заниматься и локальный почтовый
сервер, но procmail выгодно отличается тем, что может сортировать почту
для пользователя.
Нажмите здесь, чтобы получить ссылки на статью
Добавлено 20.01.2003 (19:00)
Нет комментариев