Петрівський район. Відділ освіти Петрівської райдержадміністрації

  





Конкурсы. ПСИХОЛОГИ

Правила конкурса
ПСИХОЛОГИ

 

Призы:
НА ВЫБОР
 

ПИШИ ПРО НИХ
Конкурс длится с 08.01.2012 до 07.02.2012
Участников:
Человек: 1
Работ: 1

Автор ФИО Место Работа Голосов
Романенко . Д. 1 класна оцінка 0
Комментарии:

ПОКА НЕ ПЛОХО 
   
извени я не туда нажала 
   
2. НОРМАЛЬНАЯ РАБОТА

2.1. Системный Протокол

Системный протокол поддерживается программой syslogd(8). Все сообщения от sendmail протоколируются посредством LOG_MAIL1.
2.1.1. Формат

Каждая строка в системном протоколе состоит из временной отметки, имени машины, создавшей ее (для протоколирования с нескольких машин через локальную сеть), слова "sendmail:", и самого сообщения2 . Большинство сообщений являются последовательностью пар имя=значение.
После обработки сообщения обычно протоколируются две строки. Первая отмечает получение сообщения; на каждое сообщение будет ровно одна такая строка. Некоторые поля могут быть пропущены, если они не содержат интересной информации. Поля такие: from Конвертный адрес отправителя size Размер сообщения в байтах class Класс (т.е. числовой приоритет) сообщения pri Начальный приоритет сообщения (используется для сортировки очереди) nrcpts Количество почтовых получателей для этого сообщения (после обработки псевдонимов и перенаправлений) msgid Идентификационный номер сообщения (из заголовка) proto Протокол, использовавшийся при получении этого сообщения (например, ESMTP или UUCP) relay Машина, от которой было получено сообщение

На каждую попытку доставки сообщения записываетя еще одна строка (так что каждое сообщение таких строк может быть несколько, например, если оно отложено, или если имеется несколько получателей). Поля в этой строке таковы: to Список получателей для этой почтовой программы, разделенный запятыми. ctladdr "Контрольный пользователь", то есть, имя пользователя, чьи параметры мы используем при доставке. delay Общее время задержки между получением и доставкой сообщения. xdelay Время, понадобившееся для попытки доставки (обычно показывает скорость соединения). mailer Имя почтовой программы, использовавшейся для доставки к данному получателю. relay Имя хоста, принявшего сообщение для данного получателя (или отказавшего в доставке). stat Статус доставки.

Не все эти поля присутствуют для всех сообщений; например, для локальных сообщений отсутствует поле relay.

2.1.2. Уровни

Если у вас установлен syslogd(8) или его эквивалент, то вы можете производить протоколирование. Имеется большое количество информации, которое можно запротоколировать. Протокол организован как последовательность уровней. На самом нижнем уровне протоколируются только самые странные ситуации. На самом высоком уровне даже самые обычные и неинтересные события записываются для потомства. Согласно соглашению, уровни протоколирования ниже десятого обычно считаются "полезными"; уровни протоколирования выше 64 зарезервированы для целей отладки. Уровни с 11 по 64 зарезервированы для многословной информации, что могут захотеть некоторые узлы.
Полное описание уровней протоколирования дано в разделе 4.6.

2.2. Состояние Сброса

Вы можете попросить sendmail запротоколировать сброс открытых файлов и кэша соединений, послав ему сигнал SIGUSR1. Результаты протоколируются по очередности LOG_DEBUG.
2.3. Почтовая Очередь

Время от времени sendmail не может обслужить сообщение немедленно. Например, он может быть перегружен, или вообще "упасть", последствием чего будет отказ от соединений. Тогда посылающий хост должен будет сохранить это сообщение в своей почтовой очереди и попытаться доставить его позже.
При нормальных условиях почтовая очередь будет обрабатываться прозрачно. Однако вы можете обнаружить, что иногда необходимо вмешаться руками. Например, если основной хост долгое время отключен, очередь может засориться. Хотя sendmail должен нормально восстановить все при загрузке хоста, тем временем вы можете найти его производительность неприемлемо низкой.

2.3.1. Печать Очереди

Содержимое очереди можно распечатать, используя команду mailq (или указав sendmail флаг -bp):
mailq
Результатом ее выполнения будет список идентификаторов сообщений, находящихся в очереди, размеров сообщений, даты поступления сообщения в очередь, и отправитель с получателями.
2.3.2. Ускорение Очереди

sendmail должен обрабатывать очередь автоматически через определенный интервал. Алгоритм такой: прочитать и отсортировать очередь, а затем обработать все сообщения по порядку. При попытке запустить работу, sendmail сначала проверяет, не заблокирована ли она. Если блокировка имеется, то он игнорирует эту работу.
Не производится ни одной попытки удостовериться в том, что только один обработчик очереди существует в любое время, поэтому нет никакой гарантии, что работа не будет производиться вечно (однако, sendmail имеет некоторую эвристику, чтобы попытаться прекратить работу, занимающую абсурдно большое количество времени; технологически, это нарушает требования RFC 821, но одобряется в RFC 1123). Согласно алгоритму блокировки, одна работа не может заморозить всю очередь. Однако, недружественный принимающий хост, или программа приема, которая никогда ничего не возвращает, может собрать большое количество процессов в вашей системе. К несчастью, нет никакого общего решения для разрешения подобных проблем.

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

Чтобы это сделать, вполне возможно перенести весь каталог очереди:

cd /var/spool
mv mqueue omqueue; mkdir mqueue; chmod 700 mqueue
Затем вы должны убить работающий демон (потому что он все еще будет продолжать обрабатывать старый каталог очереди) и создать нового демона.
Чтобы обработать старую очередь, запустите следующую команду:

/usr/sbin/sendmail -oQ/var/spool/omqueue -q
Флаг -oQ определит альтернативный каталог очереди, а флаг -q скажет о том, что нужна всего лишь обработка каждого сообщения в очереди. Если у вас имеется тяга к вуайеризму, вы можете использовать флаг -v, чтобы посмотреть, что будет происходить.
Когда в очереди наконец-то не останется ни одного сообщения, вы сможете удалить этот каталог:

rmdir /var/spool/omqueue
2.4. Дисковая Информация о Соединении

О каждой удаленной системе, с которой было соединение, sendmail сохраняет в памяти большое количество информации. Теперь стало возможным сохранять некоторую часть этой информации на диске, используя опцию HostStatusDirectory , которая может одновременно использоваться несколькими процессами sendmail. Это позволяет немедленно ставить почту в очередь, или пропустить ее при обработке очереди, если недавно было неудачное соединение с удаленной машиной.
Дополнительно, включение опции SingleThreadDelivery даст дополнительный эффект доставки почты к месту назначения одной цепочкой. Это может очень помочь, если на удаленной машине работает сервер SMTP, который легко перегружается, или может работать только с одним соединением за раз. Она применяется ко всем хостам, поэтому установите ее, если на вашем узле для доставки почты используется одна машина, на которой работает дополнительное программное обеспечение, увеличивающее загрузку машины, что может привести к замедлению доставки почты на другие хосты. Установите эту опцию, если вы имеете на вашем узле одну почтовую машину, и на ней еще работают приложения, которые могут увеличить ее загрузку, замедлив обработку почты. Если эта опция выставлена, то вам, возможно, захочется выставить опцию MinQueueAge, чтобы ваша очередь обрабатывалась достаточно часто; в результате работы, пропущенные по причине того, что другой процесс sendmail разговаривал с тем же хостом, вскоре были опробованы снова, а не отложены на долгое время.

Информация о хостах сохраняется на диске в подкаталоге .hoststat3 каталога mqueue. Удаление этого каталога с его подкаталогами равносильно команде purgestat и вполне безопасно. Информация из этих каталогов может быть просмотрена командой hoststat, которая покажет имя хоста, последний доступ и статус этого доступа. Звездочка в самой левой колонке означает, что процесс sendmail в настоящее время имеет блокировку на доставку почты на этот хост.

В целях оптимизации таймаутов, информация, сохраняемая на диске, обслуживается таким же образом, что и информация, хранимая в памяти. По умолчанию, информация об ошибках хостов действительна в течение 30 минут. Это значение может быть изменено опцией Timeout.hoststatus.

Информация о соединении, сохраненная на диске, может быть очищена в любой момент командой purgestat, или запуском sendmail с ключом -bH. Информацию о соединении можно просмотреть командой hoststat, или запуском sendmail с ключом -bh.

2.5. Сервисный Переключатель

Реализация системных сервисов, таких, как определение имени хоста и пользователя управляется сервисным переключателем. Если операционная система хоста поддерживает такой переключатель, то sendmail будет использовать родную версию. Ultrix, Solaris, и DEC OSF/1 - примеры таких операционных систем. И хотя HP-UX 10 имеет поддержку сервисного переключателя, но, так как API не поддерживается библиотеками, sendmail в этот раз не использует родной сервисный переключатель.
Если операционная система не поддерживает сервисный переключатель (например, SunOS, HP-UX, BSD), то sendmail будет использовать свою реализацию. Опция ServiceSwitchFile указывает на имя файла, содержащего определения сервисов. Каждая строка содержит имя сервиса и возможные реализации этого сервиса. Например, файл:

hosts dns files nis
aliases files nis
попросит мой клиент 
   
спасибо за работу тебе 
   
ааааааааааааааааааааааааааааааааааааааааайййййййййййааааааааааааааааааайййййййййййййй