tl;dr: dd
умеет читать и записывать диски, но не обладает какими-либо "низкоуровневыми возможностями работы с вводом-выводом", делающими его использование более предпочтительным в сравнении с другими утилитами командной строки. Подобно cat
, вы должны использовать её там, где это имеет смысл, например, чтобы воспользоваться широким спектром опций, а не стараться из страха и суеверия убеждать себя, что все относящиеся к диску команды начинаются и заканчиваются dd
.
сисадмин
Роутинг и policy-routing в Linux при помощи iproute2
Для управления сетевыми интерфейсами, маршрутизацией и шейпированием в Linux служит пакет утилит iproute2.
Glusterfs + erasure coding: когда надо много, дешево и надежно
Это недостаточно хардкорно. Мы не остановились и решили собрать что-то более серьёзное. Поэтому здесь речь пойдёт о таких вещах, как erasure coding, шардинг, ребалансировка и её троттлинг, нагрузочное тестирование и так далее.
- Больше теории волюмы/сабволюмы
- hot spare
- heal / heal full / rebalance
- Выводы после ребута 3 нод (никогда так не делайте)
- Как влияет на нагрузку сабволюма запись с разной скоростью от разных ВМ и shard on/off
- rebalance после вылета диска
- fast rebalance
Личные финансы в формате txt
Я давно подсел на Obsidian, и мне очень понравилась идея хранения данных в человеко-понятных форматах вроде TXT или Markdown. В таком виде вы не привязаны к конкретному инструменту и вам не надо делать экспорт данных для резервных копий. Данные сами по себе остаются готовые к чтению или модифицированию.
Чего мне не хватало, так это хорошего формата для хранения финансовых данных.
И тут, открыв очередную трэш-статью, начав читать гневные комментарии, наткнулся на человека, который ведёт расходы в TXT формате. Причём технический человек, со знанием программирования. Это показалось абсолютно тупейшим решением, но... в комментарии ниже, другой человек отписал, что тоже использует TXT для ведения личных финансов. И это уже было подозрительно.
Начал изучать вопрос и наткнулся на ledger-cli.
Как ограничить частоту запросов в HAProxy: пошаговая инструкция
Автор статьи объясняет, как реализовать в HAProxy ограничение скорости обработки запросов (rate limiting) с определенных IP-адресов. Команда Mail.ru Cloud Solutions перевела его статью — надеемся, что с ней вам не придется тратить на это столько времени и усилий, сколько пришлось потратить ему.
Дело в том, что это один из самых популярных методов защиты сервера от DoS-атак, но в интернете трудно найти понятную инструкцию, как конкретно его настроить. Методом проб и ошибок автор заставил HAProxy ограничить частоту запросов по списку IP-адресов, который обновляется в реальном времени.
Для настройки HAProxy не требуется никаких предварительных знаний, поскольку ниже излагаются все необходимые шаги.
Amavis::Custom — раскрась сам
Началось всё с того, что потребовалось пропускать все проверки в amavisd. Это просто сделать при известном отправителе либо получателе или разделяя по банкам на основе портов. Задача становится менее тривиальной если сигналом служит какой-либо заголовок уже принятого для проверки электронного сообщения. Вот тут-то (и в массе других случаев) в дело вступает Amavis::Custom
Мигрируем с raid1 на raid10 без потери данных в Debian
Все описанные действия проводились на рабочем боевом сервере. Схема универсальная, подойдет для любых других начальных условий. Так же аналогично можно мигрировать с raid10 на raid1.
Имеем:
На диске /dev/sdd1 находится /boot
На массиве /dev/md1 находится /
На массиве /dev/md2 находится swap
Если у вас с загрузчиком вопрос уже решен, можете перейти сразу к разделу с миграцией.
Cбор логов с rsyslog, именами файлов в тегах, многострочными сообщениями и отказоустойчивостью
Изображение с сайта oxygen-icons.org
Задача
Передавать лог-файлы на центральный сервер:
- При недоступности сервера не терять сообщения, а накапливать и передавать при его появлении в сети.
- Корректно передавать многострочные сообщения.
- При появлении новых лог-файлов, достаточно перенастройки клиента, не требуется изменение конфигурации сервера
- Можно передавать содержимое всех лог-файлов с соответствующим шаблону именем, причём на сервере их содержимое будет сохраняться раздельно в файлы с таким же именем.
Условия: в инфраструктуре используются только Linux-сервера.
Strace в Linux: история, устройство и использование
В Unix-подобных операционных системах общение программы с внешним миром и операционной системой происходит через небольшой набор функций — системных вызовов. А значит, в отладочных целях полезно бывает подсмотреть за выполняемыми процессами системными вызовами.
Следить за «интимной жизнью» программ на Linux помогает утилита strace
, которой и посвящена эта статья. К примерам использования «шпионского» оборудования прилагаются краткая история strace
и описание устройства подобных программ.
PostgreSQL Antipatterns: накручиваем себе проблемы
Сегодня разберем пару примеров, как неудачная организация БД и кода могут превратить наше приложение в клубок проблем:
- накрутка
serial
приON CONFLICT
- накрутка счетчика транзакций
Обход блокировок WireGuard в Египте
В 2021 году VPN протокол WireGuard стал настолько популярен в Египте, что удостоился чести пополнить список заблокированных, несказанно “обрадовав” не только клиентов Cloudflare Warp+, Mullvad Wireguard и других коммерческих VPN-провайдеров, но и некоторых пользователей корпоративных VPN. Предварительные исследования показали, что по всей видимости DPI нацелен на WireGuard Handshake Initiate пакеты, которые имеют фиксированный размер (148 байт) и узнаваемую структуру (первые четыре байта UDP пакета [0x01, 0x00, 0x00, 0x00]). Мы постараемся разобраться с особенностями работы DPI по блокировке WireGuard и попробуем ее обойти. Кого заинтересовал - добро пожаловать под кат.
КриптоПро в Linux контейнере для использования КЭП от ФНС
С Нового Года в России от Индивидуальных Предпринимателей (ИП) и директоров Обществ с Ограниченной Ответственностью (ООО) требуют использовать Квалифицированную Электронную Подпись (КЭП) выданную Федеральной Налоговой Службой (ФНС).
В этой статье речь пойдёт о том, как работать с КЭП от ФНС под Linux без головной боли.
Используем GPG для шифрования сообщений и файлов
Кратко о том, как создавать ключи, шифровать и подписывать файлы и отправлять ключи на сервер ключей.
GPG (также известный как GnuPG) создавался как свободная альтернатива несвободному PGP. GPG используется для шифрования информации и предоставляет различные алгоритмы (RSA, DSA, AES и др.) для решения этой задачи.
Настройка Minio, чтобы юзер мог работать только со своим bucket
Minio это простое, быстрое и совместимое с AWS S3 хранилище объектов. Minio создан для размещения неструктурированных данных, таких как фотографии, видеозаписи, файлы журналов, резервные копии. В minio также поддерживается распределенный режим (distributed mode), который предоставляет возможность подключения к одному серверу хранения объектов множества дисков, в том числе расположенных на разных машинах.
Цель этого поста настроить minio так чтобы каждый юзер мог работать только со своим bucket.
Бэкап-хранилище для тысяч виртуальных машин свободными инструментами
Привет, недавно мне попалась интересная задачка настроить хранилище для бэкапа большого количества блочных устройств.
Каждую неделю мы выполняем резервное копирование всех виртуальных машин в нашем облаке, таким образом нужно уметь обслуживать тысячи резервных копий и делать это максимально быстро и эфективно.
К сожалению стандартные конфигурации RAID5, RAID6 в данном случае нам не подхотят в виду того что процесс восстановления на таких больших дисках как наши будет мучительно долгим и скорее всего не закончится никогда.
Рассмотрим какие есть альтернативы :
Erasure Coding — Аналог RAID5, RAID6, но с настраиваемым уровнем четности. При этом резервирование выполняется не поблочно а для каждого объекта отдельно. Наиболее простой способ попробовать erasure coding — это развернуть minio.
DRAID — это на данный момент ещё не выпущенная возможность ZFS. В отличие от RAIDZ DRAID имеет распределённый parity block и при восстановлении задействует сразу все диски массива, благодаря чему лучше переживает отказы дисков и быстрее восстанавливается после сбоя.
Как отправлять и обрабатывать графические уведомления на bash
Всем привет! Сегодня будет разбор интересной задачи: как рисовать красивые графические уведомления и взаимодействовать с ними из скриптов bash.
Демонстрация будет осуществляться не на абстрактных примерах, а на вполне реальной задаче — необходимо уведомить пользователя о скором истечении пароля и дать возможность его сменить. Ситуация не надуманная — компьютер в домене, sssd даёт возможность авторизоваться/аутентифицироваться пользователю, но вот демонстрировать ему информацию о необходимости смены пароля не может — не его уровень. Вроде как gdm готов этим заняться, только весьма специфически — при удачном логине быстро проскакивает малозаметная строчка с информацией о последнем входе и количестве дней до смены. Раньше, когда все пользователи Linux в большинстве своём были сисадминами/гиками, это никого особо не напрягало. А вот сейчас, из-за активного импортозамещения, появилось большое количество «начинающих» пользователей Linux и, как следствие, достаточно глупые заявки — учётка заблочилась, потому что кто-то не поменял пароль вовремя.
Информация
- В рейтинге
- Не участвует
- Откуда
- Россия
- Дата рождения
- Зарегистрирован
- Активность