BashDays / инженерное медиа

Linux и DevOps на практике — медиа для IT-инженеров

Статьи об администрировании Linux, инфраструктуре, информационной безопасности, автоматизации и разработке — с реальными примерами и без пересказа документации.

Mastodon
Загрузка живой ленты…
linux

Почему ls теряет цвета в pipe

Исследуем, почему ls отключает ANSI-цвета при передаче вывода через pipe. С помощью strace находим ENOTTY, подменяем результат ioctl и возвращаем управляющие последовательности опциями color=always и cat -v.

ИТ-юмор

Смотреть все →

Цитатник

Все цитаты →

Сегодня привезли новый комп, надо один из старых заменить, хожу по офису, смотрю какой менять, подхожу к одному, а у него аптайм 937 дней, я в шоке, винда, нет упсы, как такое возможно, звоню бывшему админу, спрашиваю что за комп, оказываеться это местное достояние и я уже четвертый, кто его будет выращивать и воспитывать))) Нянька, блин)

Linux и администрирование

Смотреть всё →
linux

Почему ls теряет цвета в pipe

Исследуем, почему ls отключает ANSI-цвета при передаче вывода через pipe. С помощью strace находим ENOTTY, подменяем результат ioctl и возвращаем управляющие последовательности опциями color=always и cat -v.

linux

Мониторинг RAID и дисков через email

Настраиваем автоматическую проверку SMART и RAID-массива с почтовыми уведомлениями. Используем smartmontools, smartd, mdadm и лёгкий SMTP-клиент msmtp для отправки сообщений о сбоях дисков.

linux

Как раскрасить логи в терминале с ccze

Утилита ccze добавляет цветовую подсветку к системным логам в терминале и выделяет ошибки. Показываем работу с cat и tail, сохранение последних строк в цветной HTML-файл и просмотр доступных плагинов.

DevOps и инфраструктура

Смотреть всё →
devops

Надёжная схема резервного копирования

Практическая схема резервного копирования с защищённой СХД, внешними дисками и промежуточным сервером. Объясняем чередование носителей, локальные дневные копии и ротацию нумерованных архивов.

linux

Мониторинг RAID и дисков через email

Настраиваем автоматическую проверку SMART и RAID-массива с почтовыми уведомлениями. Используем smartmontools, smartd, mdadm и лёгкий SMTP-клиент msmtp для отправки сообщений о сбоях дисков.

linux

Systemd-таймеры против cron

Сравниваем systemd timers и cron на практическом примере: создаём service и timer, запускаем задачу каждую минуту и включаем автозагрузку. Разбираемся, когда гибкость таймеров оправдана, а когда сотни unit-файлов только усложняют …

Безопасность

Смотреть всё →
devops

Надёжная схема резервного копирования

Практическая схема резервного копирования с защищённой СХД, внешними дисками и промежуточным сервером. Объясняем чередование носителей, локальные дневные копии и ротацию нумерованных архивов.

security

Детерминированные пароли с pwgen

Генерируем повторяемые пароли через pwgen по логину, ключевому файлу и запоминаемому модификатору. Bash-обёртка скрывает ввод, проверяет зависимости и позволяет получать тот же набор паролей без их хранения.

linux

Почему rm -rf удаляет систему

Разбираем Патч Бармина и поведение команды rm -rf /* в Unix-системах. Показываем раскрытие glob оболочкой, права на каталоги, интерактивный режим и защиту --preserve-root=all.

Разработка и QA

Смотреть всё →
linux

Почему ls теряет цвета в pipe

Исследуем, почему ls отключает ANSI-цвета при передаче вывода через pipe. С помощью strace находим ENOTTY, подменяем результат ioctl и возвращаем управляющие последовательности опциями color=always и cat -v.

security

Локальные SSL-сертификаты с mkcert

Создаём доверенный локальный центр сертификации и выпускаем SSL-сертификаты для localhost и внутренних доменов через mkcert. Настраиваем Windows, WSL, Scoop и общий CAROOT.

Карьера и айтишная жизнь

Смотреть всё →
devops

Выпадающие переменные в GitLab CI

Настраиваем выпадающие списки Variables при ручном запуске GitLab Pipeline. Разбираем options, YAML anchors, rules для stage и production и подключение общего .gitlab-ci.yml из отдельного проекта.

bash

Временные метки в истории Bash и Zsh

Добавляем дату и время к истории команд в Bash через HISTTIMEFORMAT и настраиваем цветные метки. Сравниваем history -E, history -i и fc в Zsh и сохраняем удобные настройки оболочки.

bash

Консольный справочник по тегам на Bash

Разбираем Bash-скрипт spr.sh — консольный справочник для поиска записей и фрагментов кода по нескольким тегам. Конфигурация хранится в текстовом файле, а фильтрация реализована однострочником awk.

Инструменты

Смотреть всё →
linux

Как раскрасить логи в терминале с ccze

Утилита ccze добавляет цветовую подсветку к системным логам в терминале и выделяет ошибки. Показываем работу с cat и tail, сохранение последних строк в цветной HTML-файл и просмотр доступных плагинов.

bash

Анимация выполнения команд на Bash

Bash-скрипт запускает долгую команду в фоне и показывает текстовую анимацию до её завершения. Разбираем временный лог, trap, tput, сигналы, PID процесса и очистку терминального вывода.

bash

Как отправлять файлы с сервера в Telegram

Пишем Bash-скрипт, который архивирует файлы на сервере, отправляет tar.gz через Telegram Bot API и удаляет временный архив. Разбираем chat_id, bot_token, curl, подписи и ограничение размера.

Авторские колонки

Все материалы →
qa

Сколько стоит фреймворк автоматизации #2

Знаешь это чувство, когда ждёшь регресс дольше, чем сам работаешь? У меня рантайм был 34 минуты, и две трети времени уходило на очистку QA-стенда. Решение пришло через Docker и Testcontainers — теперь тесты летят за 14 минут, а …

qa

Сколько стоит фреймворк автоматизации #1

Однажды я вручную гонял регресс 5 недель. Больше я так не хочу. Я построил фреймворк, который за 30 минут прогоняет то, на что раньше уходил месяц. Но главное — на этапе проектировки запросов мы нашли столько дефектов в SOAP API, …

bash

Почему лишние условия убивают читаемость в Bash

Мне за 30, я видел много скриптов с дьявольскими отрицаниями, и каждый раз хотелось задушить автора. Поэтому я решил написать пост, в котором покажу как превратить кошмарную конструкцию в простой if-else без единого лишнего знака. …

Подборки редакции

Все подборки →