Компьютерный форум OSzone.net  

Компьютерный форум OSzone.net (http://forum.oszone.net/index.php)
-   Общий по Linux (http://forum.oszone.net/forumdisplay.php?f=9)
-   -   как заставить crond посылать почту (http://forum.oszone.net/showthread.php?t=54328)

lcat 26-09-2005 20:44 358786

как заставить crond посылать почту
 
Добрый день.
Интересует вопрос куда глядеть чтоб настроить crond и другие програмы (arpwatch), которые могут посылать отчет администратору на почту!
Я даже не знаю с чего и начинать так как с почтой толком никогда не работал :(
К примеру служба arpwatch умеет посылать отчеты, мне нужно получать их на свой email, где что прописать чтоб он это сделал.
Зарание спасибо.

mar 26-09-2005 21:41 358803

lcat
не очень понятно, что именно хочется: получать сообщения о любом телодвижении крона (может быть очень накладно), или встраивать в крон команды по отправке результатов чего-то на почту?

lcat 26-09-2005 22:16 358809

Привет mar,
вот вырвал из man:crond
When executing commands, any output is mailed to the owner of the crontab.
Мне интресно как этот output напривть к примеру мне на email.
И какие программы он запускает для того чтоб отпраить это output?

TbMA 26-09-2005 22:20 358811

lcat
Мне интресно как этот output напривть к примеру мне на email.

Код:

vi /etc/aliases

Invite 26-09-2005 22:52 358818

lcat
Установить, настроить локальный MTA (sendmail, postfix, exim и т.д.)

dustcore 27-09-2005 10:40 358933

TbMA
в таком случае ВСЯ почта, предназначающаяся для пользователя, которому принадлежит cron job, будет перенаправляться.
если идти таким путем - то стоит сделать пользователя, который будет заниматься только кроном, и отдать ему только файлы крона..

TbMA 27-09-2005 12:50 358981

dustcore
Я знаю.

p.s. По-хорошему лучше никаких юзеров не создавать, а сделать нормальный сислог сервер, с выборочной отсылкой.
Ну это если >1 сервера.

mar 27-09-2005 13:52 359000

lcat
ну, собственно, TbMA уже ответил. От себя - я тоже предпочитаю логи. Каждый чих на почту бывает черезчур :)
(У нас такое было на сервере баз данных, когда я подкрутила к крону скриптик, проверяющий, какой запрос напрягает постгрес и все это запускали по крону весьма часто. Админ был в восторге ;))

micronegor 27-09-2005 21:22 359212

lcat
Я своим юзерам сделал отправку SMS на мобильник (тем кто хотел), если у них есть новая почта и они давненько не проверяли ящик. Если что-то подобное нужно, то парсите своим скриптом интересующий лог и отсылайте к себе на ящик результат обработки.
Вот самый простой примерчик отправки письма на perl под sendmail (коментариев не пишу -- разберетесь) :

Код:

sub notify_user {
open (MAIL,'| /usr/sbin/sendmail -t -oi');
print MAIL <<EOF;
To: $_[0]
From: $_[1]
Subject: $_[2]
$_[3]
EOF
close MAIL;
};

dustcore
TbMA
mar
вспомните про почтовый процессор (например procmail)
перечитайте мануал по aliases + освежите память по поводу syslog.conf :)

mar
подкрутила к крону скриптик, проверяющий, какой запрос напрягает постгрес
Вообще в нормальных базах такая статистика ведется самой базой и находится она в области служебных данных. Кроме того, есть такое понятие, как "план запроса" -- очень помогает и пользоваться им не только можно, но и обязательно для нормального девелопера

P.S.
надеюсь никого не обидел...

TbMA 27-09-2005 21:28 359216

micronegor
вспомните что сендмейл стоит практически везде. И все и везде шлется по дефолту им.

micronegor 27-09-2005 21:45 359224

TbMA
вспомните что сендмейл стоит практически везде.
это не так
а exim postfix qmail и другие MTA где стоят?

И все и везде шлется по дефолту им.
Вы это к чему? На что реакция?

На всякий случай -- MTA и почтовый процессор не одно и то же...

TbMA 27-09-2005 22:02 359235

micronegor
Ок. Давайте по научному : "Сендмейл - дефолтовый МТА для подавляющего большинства линуксов".

Например на слаквари, про которую мы говорим.

micronegor 27-09-2005 22:20 359240

TbMA
1.Вы топик еще помните?
2.Когда здесь упоминалось о слакваре?
3.Кто здесь упоминал о том, что MTA вообще присутствует? и тем более называл какой?
4.Вы можете поручиться, что линух (если это вообще он) только поставлен?

Повторяю вопрос:
вспомните что сендмейл стоит практически везде. И все и везде шлется по дефолту им.
Вы это к чему? На что реакция?

TbMA 27-09-2005 22:23 359242

micronegor
2.Когда здесь упоминалось о слакваре?
У него в подписи под 1м сообщением, стоит версия линукса.

Вы это к чему? На что реакция?
На то, что не надо городить огород, там где он не нужен. Принцип разумной достаточности, знаете-ли.
Незачем упоминать exim, qmail и т.д. если они нипричем.

micronegor 27-09-2005 22:31 359247

TbMA
На то, что не надо городить огород, там где он не нужен. Принцип разумной достаточности, знаете-ли.
Незачем упоминать exim, qmail и т.д. если они нипричем.

Пишите внятно -- о каком "огороде" речь идет?
конкретную выдержку плз

TbMA 27-09-2005 22:57 359256

micronegor
конкретную выдержку плз

Вот выдержка : micronegor "вспомните про почтовый процессор (например procmail)".
Зачем нам процмейл, если достаточно одного сендмейла? Если можно с 90% вероятностью предположить что сендмейл у него стоит, а процмейл - нет?

Мне не интересна вода, которую вы тут пытаетесь лить. Мне интересно помочь человеку.


micronegor 27-09-2005 23:38 359278

TbMA
Зачем нам процмейл, если достаточно одного сендмейла?
нда...
Еще раз говорю : MTA и почтовый процессор -- разные вещи.
Вот мне интересно -- есть у Вас procmail или нет?
Посмотрите плз

mar 27-09-2005 23:56 359287

TbMA
оставте человека в покое. Ну все он знает про МТА, не говоря уж об EXPLAIN ANALIZE и сбор статистики в postgresql =). Короче, крутизна не знает пределов, а потому бог с ним, а то еще 5 страниц нафлудим - люди потом ответа на исходный вопрос из-под них не выгребут

TbMA 27-09-2005 23:58 359288

mar
Да, я заметил. Будем ждать задавшего вопрос.

lcat 28-09-2005 16:12 359557

Ого сколько поотвечали :), как только увидел 2 страницу сразу обрадывался.
По поводу всех этих програм, начал разбираться с procmail потом поглядел на sendmail, меня всего перекрутило.
Все это очень просто взял поднял sendmail или что то подобное, настроил и все делов то.
Но как раз настрой, в этом все проблема линукса, это самое тяжелое, чтож придеться лезть в sendmail howto и разбирать :( уже основательно.
К TbMA, vi /etc/aliases , я и не представляю для чего он нужен :)
Устновил все по дефольу sendmail и sendmail-cf, пишу
root|/var/spool/mqueue#sendmail -v lcat@email.dp.ua
test.
.
lcat@email.dp.ua... Connecting to [127.0.0.1] via relay...
220 localhost.localhost.lo ESMTP Sendmail 8.13.3/8.13.3; Wed, 28 Sep 2005 14:54:36 +0100
>>> EHLO localhost.localhost.lo
250-localhost.localhost.lo Hello localhost [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-DELIVERBY
250 HELP
>>> MAIL From:<root@localhost.localhost.lo> SIZE=6
250 2.1.0 <root@localhost.localhost.lo>... Sender ok
>>> RCPT To:<lcat@email.dp.ua>
>>> DATA
250 2.1.5 <lcat@email.dp.ua>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .
250 2.0.0 j8SDsaSA006567 Message accepted for delivery
lcat@email.dp.ua... Sent (j8SDsaSA006567 Message accepted for delivery)
Closing connection to [127.0.0.1]
>>> QUIT
221 2.0.0 localhost.localhost.lo closing connection

Я толком ничего не настраивал полазил только в sendmail.cf, меня вот все устраивает только еслиб он вместо lcat@email.dp.ua... Connecting to [127.0.0.1] via relay... конекстился к snmp.apex.dp.ua, как мне его заставить?
Думаю тогдаб все заработало, и вообще sendmail это очень грамоздкая штука, и мне чтоб только отсылать это письмо его ставить както не особо хочеться, в сети гдето видет minisendmail, или что то подобное, А вообще лучше всего то что мне нужно наверно выполнял perl скрипт, который просто конектился к snmp.apex.dp.ua и отправлял письмо мне. Поймите меня, очень не хочеться разбираться с серьезными mailserverами для того чтоб отправить ето долбаное писамо. Да и еще он 25port открывает, вообщем ничего хорошего, для отправки одного письма столько движений.
Может есть что то намного попроще?

micronegor 29-09-2005 11:47 359934

lcat
Поправьте меня, если я не правильно Вас понял :
Вам достаточно отсылать письма, но нет желания ставить почтовик, настраивать его и другой софт?


ну, господа дистрибутивознавцы и человеколюбы, что же вы молчите?
сопереживаете?
а ведь здесь есть что написать
TbMA
Вы выяснили для себя что такое procmail ? если да, по перечитайте ветку

lcat 29-09-2005 13:24 359972

micronegor
Все верно, у меня нет желанию поднимать у себя какие либо почтовые сервера, так как почту никому предоставлять не хочу.
Я хочу только отправить пару писем.
Я нашел программу mini_sendmail, сейчас с помошью ее настраиваю.

micronegor 29-09-2005 15:02 360003

lcat
вот такой скриптик на perl позволит отправлять через Ваш релей текстовые письма, что собственно и требовалось

Код:

#!/usr/bin/perl -w
use IO::Socket;

# Ваш релей (скорее всего я угадал)
my $mx_ = 'smtp.apex.dp.ua';
my $port_ = '25';

# отправитель
my $from_ = 'lcat@email.dp.ua';

# получатель (в данном случае письмо самому себе)
my $to_ = 'lcat@email.dp.ua';
my $mail_body_ = 'Subject: ';

# тема письма
$mail_body_ .= 'this is the topic';
$mail_body_ .= "\n";

# ниже укажите текст письма
$mail_body_ .= 'this is the boby text...';

my $remote_;

$remote_ = IO::Socket::INET->new( Proto => "tcp" , PeerAddr => $mx_ , PeerPort => $port_ ) || die "Can't connect to host '$mx_' to port '$port_'.\n$!" ;
$remote_->autoflush(1);

print $remote_ "helo $mx_\nmail from:<$from_>\nrcpt to:<$to_>\ndata\n$mail_body_\n.\nquit\n";

while ( <$remote_> ) { print; };

close ( $remote_ );

в первой строке скрипта должен быть правильно указан путь к перлу, а файл должен быть исполняемым
надеюсь пригодится :)

lcat 29-09-2005 20:50 360131

micronegor
спасибо :)

TbMA 29-09-2005 20:59 360132

micronegor
Да мы то всегда знали. Если внимательно проглядите "ветку", то заметите что я нигде procmail с MTA не отождествлял.
А без скрипта слабо было подсказать?

TbMA 29-09-2005 22:05 360153

lcat
Вариант без скриптов, в 3 приема

1. Убедитьтся что "умным" релеем в /etc/mail/sendmail.cf строит ваш релей, т.е. есть строка типа
DSsmtp.apex.dp.ua
1a. Если подредактировали - то перестартовать сендмейл (/etc/init.d/sendmail restart)

2. Отредактировать /etc/aliases, добавив в конец
root: lcat@email.dp.ua

3. обновить алиасы запустив newaliases

... Это все. Весь мейл на локального рута будет идти на ваш.

p.s. Для всего этого вам совсем не нужно было полностью конфигурить сендмейл. Совершенно непонятно зачем вы это начали делать. Из всей функциональности сендмейла, вам достаточно было одной маленькой частички. Которая и так настраивается при установке системы.

lcat 01-10-2005 12:37 360640

TbMA
спасибо
Цитата:

p.s. Для всего этого вам совсем не нужно было полностью конфигурить сендмейл. Совершенно непонятно зачем вы это начали делать. Из всей функциональности сендмейла, вам достаточно было одной маленькой частички. Которая и так настраивается при установке системы.
Во первых где об этом можно прочитать как не в документации, я знал что там просто пару строк подправить. Но яж не знал какие ...

micronegor 03-10-2005 11:18 360999

lcat
Настраивать sendmail через sendmail.cf могут либо профи, либо разработчики (толмуд по настройке sendmail_а через sendmail.cf более 1000 страниц). Для всех остальных существует файл настроек sendmail.mc . Файл короткий, содержит коментарии. Загляни Вы в него раньше и проблем бы с настройкой не было.

TbMA
2. Отредактировать /etc/aliases, добавив в конец
root: lcat@email.dp.ua

и правда, зачем локальному руту логи ? :)

TbMA 03-10-2005 15:47 361089

micronegor
и правда, зачем локальному руту логи ?

Это не логи, а "mail". Разницу помните? ;)
Если вы такой знаток sendmail.mc, то почему бы вам сразу не расписать все конкретно для этого примера? :D

lcat
Не надо слушать его советов. sendmail.mc можете просмотреть для общего образования. Для вашей задачи он не нужен.

micronegor 03-10-2005 22:16 361187

lcat
идем на www.sendmail.org , там быстро находим секцию посвященную конфигурированию. Смотрим
Цитата:

SENDMAIL CONFIGURATION FILES

This document describes the sendmail configuration files. It explains how to create a sendmail.cf file for use with sendmail. It also describes how to set options for sendmail which are explained in the Sendmail Installation and Operation guide (doc/op/op.me).
Там читаем :
Цитата:

Section five contains the nitty-gritty information about the configuration file. This section is for masochists and people who must write their own configuration file.
Идем в секцию 5. Читаем (абзац второй) :
Цитата:

There is one point that should be made clear immediately: the syntax of the configuration file is designed to be reasonably easy to parse, since this is done every time sendmail starts up, rather than easy for a human to read or write. The configuration file should be generated via the method described in cf/README, it should not be edited directly unless someone is familiar with the internals of the syntax described here and it is not possible to achieve the desired result via the default method.
Добьем цепочку -- cf/README второй абзац :
Цитата:

By default you need two .mc files: sendmail.mc and submit.mc.
Напоминаю топик : "как заставить crond посылать почту"


TbMA
нет ни желания, ни времени заниматься вашим образованием...

TbMA 04-10-2005 18:06 361447

micronegor
нет ни желания, ни времени заниматься вашим образованием...

До моего образования вам еще расти и расти. Мне это совсем не нужно, и никакий трудности для меня не представляет.
Просто забавляет ваша непроходимая ... упрямость.

То что exim, postfix и т.д. к делу не относятся мы уже выяснили. Как и ваш первый скрипт.
Глядишь, еще через пару десятков постов вы перестанете уводить дискуссию в сторону, постить man страницы сендмейла, и родите конкретный ответ.
Как принято на этом форуме.


Время: 23:37.

Время: 23:37.
© OSzone.net 2001-