Сабж. Задрало дальше некуда. В своём debian я обычно делал
# раньше было так
# hardstatus off
# потом эти нехорошие люди что-то поменяли, старый вариант перестал рабоать, пришлось сделать так
hardstatus alwaysignore
# а когда и этого перестало хватать, пришлось добавить
defdynamictitle off
Пробую подключить modsecurity (libmodsecurity v3) к nginx (через modsecurity-nginx connector)
Ситуация странная
libmodsecurity и connector собираются, в принципе добавляются в конфиг nginx
и если перевести modsecurity-nginx в режим «SecRuleEngine On», правила работают, и даже пишут в error_log nginx’а
но логирование средствами modsecurity (SecAuditLog, SecDebugLog) не работает вообще никак. более того, если включить DebugLog в конфиге monsecurity-nginx, то nginx падает при запуске через systemd
НО. если запускать nginx вручную, а не через systemd, то он запускается без ошибок и тем более без падений. И даже начинает вести SecAuditLog ( хотя выглядит так, будто он туда пишет SecDebugLog )
Т.е. более-менее нормально он работает только в двух вариантах
«SecRuleEngine On», дебаг лог отключен: можно запускать через systemd
«SecRuleEngine DetectOnly». только мимо sytemd. Т.к. без дебага этот режим бесполезен
Кто-нибудь знает, что за проблемы у modsecurity-nginx с systemd?
Хотелось бы его пощупать с дебагом, но без костылей с ручным запуском мимо systemd
reposync, как и apt-mirror, делает локальное зеркало указанного репозитория. Но если reposync качает только последние версии пакетов (что обычно и нужно), то apt-mirror скачает вообще все версии (т.е. кучу бесполезного мусора, раздувающего репозиторий раз в 10)
Сабж. Вставляю текст из буфера обмена не через привязку к безымянному буферу vim, а средствами xfce-terminal (правая кнопка мыши - вставить). Т.е. насколько я понимаю, для vim этот текст появляется на STDIN
В результате создаваемый файл чуть меньше 45 KiB (а должен быть ~ 98 KiB)
В том же терминале копирую текст в nano - всё в порядке, 98 kib.
По совету гугла повысил вдвое лимиты в viminfo (и убедился, что лимит изменился, через set viminfo=?) - не помогло, те же ~ 45 KiB
В чём может быть проблема?
И есть ли способ научить vim предупреждать о такой проблеме? Т.к. сейчас с моей точки зрения он молча портит данные. Чего я от привычного инструмента вообще не ожидал :/
В Apache Log4j, популярном фреймворке для организации ведения логов в Java-приложениях, выявлена критическая уязвимость, позволяющая выполнить произвольный код при записи в лог специально оформленного значения в формате «{jndi:URL}». Атака может быть проведена на Java-приложения, записывающие в лог значения, полученные из внешних источников, например, при выводе проблемных значений в сообщениях об ошибках.
Сабж. Единственная цель - пнуть handler через notify, если файла нет. Т.е. нужен тупой переходник между «when» и «notify» без каких-либо действий в самом task
Да, можно было бы перенести код из handler’а в task и обойтись без переходника, но он должен вызываться по нескольким разным событиям, и логичнее всё же оставить его handler’ом
Есть ноут, который в принципе работает довольно долго с дефолтными настройками
Но в нем диск wd, который засыпает каждые 8 секунд. wdidle3 / idle3-tools с ним уже не работают. А в нашем линуксе 10 секунд отложенная запись. Можно отключить энергосбережение (hdparm -B 254), но это лишние 1.6 Вт (в ноуте они реально лишние…)
Часто пишут на диск в $HOME несколько приложений. Не проблема перенести их каталоги на отдельную ФС
Хотелось бы, чтобы они писали в память, а изменения сбрасывались на диск сильно пореже, хотя бы раз в час. Как writeback кэш, но с очень большой задержкой. Или даже по явной команде. На возможную потерю данных плевать - эти данные не критичны и есть регулярные бекапы
Некоторое время назад ms допилили powershell, и в linux теперь работает полноценная, а не кастрированная версия. vmware powercli сейчас тоже полноценно работает из-под linux
Есть желание сделать кроссплатформенными свои скрипты для работы с vsphere. Одна проблема: в винде работает доменная аутентификацию (не нужно вводить credentials), в linux нет. Можно сделать workaround с загрузкой credentials из файла. Но не хотелось бы терять доменную аутентификацию при работе в винде
from sqlalchemy.ext.declarative import declarative_base
Base = declarative_base()
Our application will usually have just one instance of this base in a commonly imported module
И вот тут я завис. Похоже, у меня пробел в академических знаниях о питоне. До сих пор я выносил в модули только классы и функции и понятия не имею что будет, когда в модуле окажется инстанс. Это вообще работает? Т.е. глупый вопрос, если б не работало, в документации бы этого не было
Но как, Холмс? Т.е. я в модулях и в __main__ могу импортировать модуль с инстансом, и это будет один и тот же инстанс, как будто я создал его в __main__ ? И в 2.7, и в 3.x?
Сабж. Насколько я понял из документации, работа с sqlalchemy возможна в 2 вариантах: Expression Language и ORM
В документации по ORM части есть информация, как отключить autocommit. В документации по Expression Language ничего подобного не нашёл :\
Пока я не уверен, что мне стоит использовать. Возможно, придётся перейти на ORM. Но хотелось бы понять, можно ли убрать autocommit в Expression Language, или единственная возможность - собирать данные в своём коде и выполнять execute с массивом
Сабж. Есть mediawiki под свои рабочие заметки. В последнее время иногда замечал, что поиск не находит информацию, которую я вроде бы добавлял. Сначала думал, что забыл добавить. Потом оказалось, поиск по заголовкам работает стабильно. А вот поиск по содержимому не видит новую информацию (примерно за последний год). Т.е. отвалилась индексация содержимого. Никаких сторонних движков для поиска не ставил, речь про штатную возможность mediawiki.
Похоже, что перестали отрабатывать какие-то хуки при сохранении страницы
пробовал
updateSearchIndex.php, rebuildtextindex.php - как и ожидалось, не работают с postgresql
rebuildrecentchanges.php - ничего не изменилось
в логах апача и mediawiki-jobrunner ошибок не нашёл
если перенести дамп на другую ВМ, новые страницы начинают индексироваться. но мне и старые тоже нужны :)
включил debug log. сыпятся «DBPerformace» предупреждения, но это вроде не критично: [DBPerformance] Expectation (writes <= 0) by MediaWiki::restInPeace not met (actual: 1):
update. это был баг mediawiki 66650. Дело в переименовании страниц. Поиск по тексту не работает в переименованных страницах. workaround - применить патч для 66650
У меня есть 2 копии git репозитория с моими скриптами: одна на сервере в локальной сети (site), 2я на удалённой площадке (origin)
Чаще я коммитил в origin, коммиты в site иногда опаздывали на неделю
Так получилось, что удалённый репозиторий origin и мой комп одновременно были недоступны длительное время (не спрашивайте..)
На новом компе клонировал устаревший репозиторий site и сделал несколько изменений
Снова доступен удалённый репозиторий origin
В результате в репозиториях site и origin с какого-то коммита ветки master различаются. Я бы хотел снова сделать их копиями. Понятно, что сведение кода к одной версии делать мне, не проблема
Но я не знаю
как найти, с какого коммита ветки master в репозиториях стали различаться?
как в одном из репозиториев УДАЛИТЬ всю историю, начиная с точки расхождения? Работаю с репозиториями я один, поэтому моральный аспект такого изменения можно игнорировать