использование logrotate с предварительно вращается/постповорачивает сценарии

Примечание: Существует некоторое самоуверенное разглагольствование в этом. Вы свободны проигнорировать его :)

Хорошо, это - электронная почта, о которой мы говорим, таким образом, мы должны запустить путем высказывания, что нет просто никакого способа гарантировать пропускную способность сообщения. SMTP был создан в более тихое, более доверчивое время. С тех пор многие люди реализовали то, что они рассматривают как конечное решение послать спам, только быть пораженными, что оно не работало; или что спаммеры выяснили, как победить его; или это это полагается на всех сделавшие это, чтобы быть эффективным. (или десятки других причин). Что мы имеем, теперь путаница balkanized систем и полуреализованных идей, которые означают, что практически невозможно гарантировать, что Ваше сообщение пройдет.

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

Во-первых, то, что я не могу найти нигде, то, действительно ли доменное имя От: адрес электронной почты должен соответствовать доменному имени сервера SMTP.

В принципале, нет. Существует много законных причин, почему MTA пошлет почту с адресов, которые не имеют никакого отношения к ее собственному домену. Вы могли бы столкнуться с системами, которые отклоняют Вашу почту поэтому, но это не Ваша проблема. Не повреждает иметь Ваше соответствие записей PTR Ваш домен и для объявления HELO для соответствия им, по крайней мере, в TLD; но что-либо, что отклоняет просто потому что From: домен не соответствует TLD PTR, повреждается.

Если так, затем я смущен советом, данным здесь, конкретно (в списке сценариев тяжелого случая):

Никакая запись SPF для домена, используемого в команде HELO.

Записи SPF являются другим из них, "это звучит правильным в основных" идеях (См. здесь для другой напыщенной речи на том предмете), который набрал большой вес. Основная проблема для меня состоит в том, что много MTAs незаконно наказывает домены, которые просто не публикуют SPF вообще. Снова, это не Ваша проблема.

Тем не менее я поместил тот на месте для наших доменов, потому что он не сделан для получения mardy с клиентскими системными администраторами слишком часто. Это заканчивает тем, что было политическим решением, а не техническим.

Если Вы собираетесь использовать SPF и оставить Ваш PTR и HELO как abc.def.linode.com; затем SPF записывает для всего Вашего From: домены должны перечислить тот сервер как отправителя. Если Вы не управляете foo.com и bar.com DNS, затем необходимо будет говорить с кем-то, кто делает.

Я в настоящее время использую домен linode.com SMTP+PTR и example.com От: комбинация адреса без большой части любой проблемы пропускной способности

и, и при этом Вы не должны иметь. Если Вы публикуете SPF вообще и linode.com сервер не перечислен, затем Вы будете возвращены много. Однако, если Вы перечислили его, или если example.com не публикует записей SPF вообще, затем необходимо быть в порядке. (Я повторяю свою более раннюю точку что MTAs, отклоняющий почту, потому что нет никакого SPF, опубликованного, вообще повреждаются и вероятно возвращающий много законной почты).

0
задан 18 September 2013 в 15:22
1 ответ

Оператор >> всегда добавляет в конец файла. Я не знаю простой команды для размещения текста в начале, но этот сайт предлагает использовать второй файл, например:

echo "time,time,meas_type,meas_val[1],meas_val[2],meas_val[3]" | cat - measurements.log > final.log

Эта команда использует cat , чтобы сначала вывести стандартный ввод - (который будет строкой заголовка), а затем распечатать sizes.log . Результат выводится в final.log . Не пытайтесь использовать sizes.log в конце, > стирает выходной файл перед выполнением каких-либо команд, поэтому к моменту cat файл sizes.log будет пуст ] пытается прочитать это. Вам нужно будет получить logrotate для работы с новым файлом final.log

. Я думаю, было бы менее подвержено ошибкам, если бы сценарий postrotate добавлял заголовок в новый файл sizes.log с помощью

echo "time,time,meas_type,meas_val[1],meas_val[2],meas_val[3]" > measurements.log

, но это было бы зависит от того, выполняет ли ваша программа запись в файл журнала очень быстро и, возможно, уже начала помещать данные в файл журнала до того, как будет запущен postrotate.

s стандартный ввод - (который будет строкой заголовка, переданной в него), затем выведите sizes.log . Результат выводится в final.log . Не пытайтесь использовать sizes.log в конце, > стирает выходной файл перед выполнением каких-либо команд, поэтому к моменту cat файл sizes.log будет пуст ] пытается его прочитать. Вам нужно будет получить logrotate для работы с новым файлом final.log

. Я думаю, было бы менее подвержено ошибкам, если бы сценарий postrotate добавлял заголовок в новый файл sizes.log с помощью

echo "time,time,meas_type,meas_val[1],meas_val[2],meas_val[3]" > measurements.log

, но это было бы зависит от того, выполняет ли ваша программа запись в файл журнала очень быстро и, возможно, уже начала помещать данные в файл журнала до того, как будет запущен postrotate.

s стандартный ввод - (который будет строкой заголовка, переданной в него), затем выведите sizes.log . Результат выводится в final.log . Не пытайтесь использовать в конце sizes.log , > стирает выходной файл перед выполнением каких-либо команд, поэтому к моменту cat файл sizes.log будет пуст ] пытается прочитать это. Вам нужно будет получить logrotate для работы с новым файлом final.log

. Я думаю, было бы менее подвержено ошибкам, если бы сценарий postrotate добавлял заголовок в новый файл sizes.log с помощью

echo "time,time,meas_type,meas_val[1],meas_val[2],meas_val[3]" > measurements.log

, но это было бы зависит от того, выполняет ли ваша программа запись в файл журнала очень быстро и, возможно, уже начала помещать данные в файл журнала до того, как будет запущен postrotate.

t попробуйте использовать в конце sizes.log , > стирает выходной файл перед запуском любых команд, поэтому к тому времени, когда cat попытается, файл measurement.log будет пуст прочитать это. Вам нужно будет получить logrotate для работы с новым файлом final.log

. Я думаю, было бы менее подвержено ошибкам, если бы сценарий postrotate добавлял заголовок в новый файл sizes.log с помощью

echo "time,time,meas_type,meas_val[1],meas_val[2],meas_val[3]" > measurements.log

, но это было бы зависит от того, выполняет ли ваша программа запись в файл журнала очень быстро и, возможно, уже начала помещать данные в файл журнала до запуска postrotate.

t попробуйте использовать в конце sizes.log , > стирает выходной файл перед запуском любых команд, поэтому к тому времени, когда cat попытается, файл measurement.log будет пуст прочитать это. Вам нужно будет получить logrotate для работы с новым файлом final.log

. Я думаю, было бы менее подвержено ошибкам, если бы сценарий postrotate добавлял заголовок в новый файл sizes.log с помощью

echo "time,time,meas_type,meas_val[1],meas_val[2],meas_val[3]" > measurements.log

, но это было бы зависит от того, выполняет ли ваша программа запись в файл журнала очень быстро и, возможно, уже начала помещать данные в файл журнала до запуска postrotate.

0
ответ дан 5 December 2019 в 15:02

Теги

Похожие вопросы