Orange Pi Plus 2E

Копаюсь тут с Orange Pi Plus 2E… Так вот, не знаю, читает ли мой блог наш ОТК’шник… Не знаю. Но, если вдруг Саня ты это читаешь, то просто знай, что они смогли: две заказанные одинаковые платы мало того, что скручены винтом (по-разному, кстати), содержат не повторяющиеся дефекты пайки и промывки, так ещё одна содержит в NAND’е образ u-boot от начала 2017 года, а вторая — android. Хотя обе должны быть пустыми. Такой вот контроль качества и обеспечение повторяемости изделий у Xunlong’а. U-boot из Debian testing не умеет эту плату всё ещё. Просто собрали без неё. Бывает. Пока ещё представлено ядро 4.12, там хоть и есть некоторые новшества, типа OTG и сети, но нет биндингов в devicetree. Собираю 4.13, там появились[…]

Отказоустойчивая система — это очень легко, на самом деле. Залог успеха — вменяемая архитектура. Но может так случится, что заказчик не умеет в архитектуру. От слова «совсем». А его программисты не умеют в хороший код и лаконичные решения. Но уж очень они хотят получить защищённый от отказа оборудования вычислительный комплекс, не содержащий «специфических» решений (типа внешних дисковых контроллеров с двумя target-каналами). Понятно, что речь идёт о кластере из двух машинок с DRBD. И надо это так сделать, чтобы не влипнуть в настройку кособокого ПО заказчика… Короче, нужно разместить «корень» (корневой раздел) на DRBD! Попробуем собрать подобное решение? Для этого нам нужны две машины схожей конфигурации. Требуется заранее определится с сетевыми именами машин и их адресацией. В примере будут фигурировать хосты[…]

Новый двигатель в разборе

Пока DRBD судорожно синхронизирует данные между двумя виртуальными машинами, у меня есть пара минут, чтобы написать о дне ушедшем. С самого утра меня не покидало ощущение чего-то пропавшего давным-давно. Этакое дежавю через несколько лет. Конечно не 2007ой, но вполне 2010й. Ведь день начался с экстренного забега в соседний район, с целью улаживания вопросов с недвижимостью, потом я оказался на Улице Подбельского, где, как в старые добрые времена, беднел деньгами и обогащался запчастями, а закончил день на Площади Ильича… Покупая редкий двухсекционный масляный насос оригинальной конструкции, возможно последний в своём роде. Давно так не было… Нахрена я разбираю жутко поджатый мотор? Потому что захотелось дефорса. И облегчённого маховика. Чтобы просто был мягкий мотор на мой одиночный мотоцикл, не отягощённый боковым прицепом.[…]

Урал приехал, Драгстар уехал

Беды, они от чего, собственно? От отрицания очевидных вещей, в основном… Так вот, я тоже этим иногда занимаюсь. Ярким примером может стать история покупки моего Урала. Ведь перед этим событием я избавился от всех мотоциклов: один Урал отдал, редкий заводской 825й соляк продал, а Магну продал по цене чермета. Ибо нафиг не нужна. Лишь для того, чтобы возить свою жопу и жопу… девушки (я думал, что это уже семейная жизнь), был куплен Даргстар Кастом 1100. Думал, что это позволит мне проще относится к двум колёсам — обслуживаться в сервисе и ездить, когда захочется. Но… Но машина марки ВАЗ аккуратно тюкнула Драгстар в бочину, наглядно показав и как ведёт себя девушка в кризисной ситуации (в итоге, через некоторое время была отправлена[…]

Наш форум про оппозиты

Давно не писал. Был занят. То переезд в Новогиреево съедал всё моё время, потом подключилась работа… и маленький побочный проект, а именно — очередной сайт про отечественные оппозиты. Ну да, ещё одним сайтом об Уралах и Днепрах стало больше. И всё так же, с упором на форум. Кстати, форумов не лепил с 2007го года. И я решил сделать всё в лучших традициях даже более ранней эпохи! Итак, что это сейчас: форум на базе punbb; вместо движка сайта — публикатор, черпающий данные из форума; управление публикацией доступно администраторам и модераторам из форума, соответствующий код интегрирован в fluxbb. Ну да, бложик на WP, где всё настроено из админки, а сайт и форум нового проекта — на fluxbb, с тоннами внесённого самописного кода.[…]

Когда-то весьма давно я топил за использование vde_switch для организации сети виртуальных машин в домашних условиях. Использовал я его вместо мост-устройства, как этакий сетевой хаб. Ну и на каждую сеть по такому хабу. Потом захотелось окошек, virt-manager’а и прочих извращённых утех от Red Hat’а. Но я вернулся… Короче, отринем же этот велосипед на базе linux-bridge/netfilter/dnsmasq в пользу настоящего виртуального сетевого L2-свитча! С возможностью раскидать L2-сегменты внутри этого свитча как вам заблагорассудится! Итак, конфиг vde_switch’а: port/setnumports 24 port/createauto port/createauto port/createauto port/createauto port/createauto port/createauto port/createauto port/createauto port/createauto port/createauto port/createauto port/createauto vlan/create 1 vlan/create 2 vlan/create 3 port/setvlan 2 1 port/setvlan 3 1 port/setvlan 4 1 port/setvlan 5 1 port/setvlan 6 2 port/setvlan 7 2 port/setvlan 8 2 port/setvlan 9 2 port/setvlan 10[…]

Я думаю, что никто не будет спорить с наличием в IT-сообществе трендов на понижение стоимости решений и повышение их эффективности. Под стоимостью при этом понимается как стоимость инфраструктуры и оборудования, так и стоимость обслуживания решения. Мощности — в аренду! Админ — на аутсорс! Решения — только типовые! Вершиной этого «развития» стало «приватное виртуальное облако», — масштабный кластер виртуализации с централизованным управлением, где клиенты могут сами управлять своими виртуальными машинами, их количеством, выделением вычислительных ресурсов под них. А тарифицируется только то, что клиент распределил под свои машины. Почти что фактическое использование ресурсов. И это ещё не все: клиенту нет дела до фактической архитектуры среды виртуализации. Так если выйдет из строя тот сервер, где исполняется его виртуальная машина, то средства управления облаком[…]

Итак, мы знаем, как определяется спам и как его положить в отдельную папку на сервере. Как вы понимаете, всегда будет некоторое количество спама, которое таки прилетит во «Входящие», и некоторое количество нормальных писем, которые улетят в «Спам» (Junk). И нам надо дать пользователю шанс оперативно известить нас… Нет, не так. Нас оповещать не надо — мы ленивые. Пусть он это сообщить нашей проверочной программе, то есть SpamAssassin’у, в нашем случае. В вики dovecot’а есть статья, но она не очень полезна, если у нас разные uid’ы на ящиках, так как там предполагается, что sa-learn вызывается из скрипта (без перенаправления ввода нельзя отдать sa-learn’у письмо, так что без «обёртки» не обойтись) от имени пользователя. То есть с тем же uid’ом, что и[…]

Я писал об SpamAssassin не так давно. Ну вот отметили мы письмо как спам? И чего? Удалять его сразу? Нет, это сильно не вариант. Ибо всегда есть шанс того, что спамом оно не было, а пользователь его очень-очень ждал… И чего делать? Правильно — не удалять до определённого порога. Например мы отмечаем от пяти балов письма как спам, но удаляем сразу от двенадцати. Но и отдавать его во входящие пользователю тоже не красиво. Но мы же можем его отсортировать в отдельную папку, прямо на сервере. В этом нам поможет sieve-скрипт следующего содержания: require [«fileinto»,»imap4flags»]; if header :contains «X-Spam-Flag» [«YES»] { setflag «\\seen»; fileinto «Junk»; stop; } else { # The rest goes into INBOX # default is «implicit keep», we[…]

Подумал я написать об борьбе со спамом подручными способами. У меня это организованно с помощью spamassassin’а, а значит и писать нужно о нём. Решил проверить, как оно сейчас обстоит с информацией по данной тематике, погуглил десять минут и пришёл к выводу, что писать точно надо… Что такое SpamAssassin? Это парадоксально, но прямого ответа на данный вопрос я так и не нашёл, пока гуглил. Ну чтож, отвечу на него сам: SpamAssassin — система комплексной оценки e-mail сообщения. Методы оценки сообщения в SpamAssassin Начнём с того, что есть два типа фильтров: статичные правила и обучаемый байесовый (bayes) фильтр. За прохождение первых и второго сообщению назначают некие «балы». Вес каждого фильтра задаётся в формате строки из четырёх чисел. Каждое число определяет определённое состояние[…]