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

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

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

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

Лишний cat и другие Bash-антипаттерны

Разбираем распространённые Bash-антипаттерны из учебных скриптов: лишний cat перед cut, grep и tr, а также небезопасный перебор файлов через ls. Показываем более прямые и устойчивые варианты команд.

Свежие комментарии

Все обсуждения ↗

Загружаем свежие комментарии…

ИТ-юмор

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

Цитатник

Все цитаты →

Den Stranger: Жена попросила меня заказать ей лифчик в онлайн магазине. Заказ сделан, оплачен. Сидим, ждём. Надо заметить что в личном кабинете отображается инфа из какого именно города везут товар. И вот на вопрос жены, в каком состоянии находится заказ, я выдал: - Он выехал, из Электростали, - на что тут же получил в ответ. - Из Электростали? Они мне что, бронелифчик везут?

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

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

Лишний cat и другие Bash-антипаттерны

Разбираем распространённые Bash-антипаттерны из учебных скриптов: лишний cat перед cut, grep и tr, а также небезопасный перебор файлов через ls. Показываем более прямые и устойчивые варианты команд.

bash

Как рендерить шаблоны в Bash через envsubst

Создаём шаблон конфигурации nginx и подставляем разные значения для production и stage через envsubst. Сравниваем функцию рендеринга с heredoc и разбираем передачу переменных окружения.

linux

Как переназначить Ctrl+C в Linux

Смотрим текущие настройки терминала через stty -a и меняем символ прерывания процесса с Ctrl+C на другое сочетание клавиш. Разбираем возврат настройки, запись в shell-конфиг и альтернативу через xbindkeys.

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

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

Как рендерить шаблоны в Bash через envsubst

Создаём шаблон конфигурации nginx и подставляем разные значения для production и stage через envsubst. Сравниваем функцию рендеринга с heredoc и разбираем передачу переменных окружения.

security

SSH-бастион без доступа в интернет

Строим связку из SSH-бастиона и изолированной машины без выхода в интернет для удалённых пользователей. Настраиваем ключи, принудительную оболочку и автоматический переход на внутренний сервер.

bash

IP-watchdog на Bash для перезагрузки роутера

Пишем Bash-watchdog, который проверяет доступность интернета и наращивает интервалы попыток восстановления связи. Для физической перезагрузки роутера подключаем недорогое USB-реле и управляем им через последовательный порт.

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

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

SSH-бастион без доступа в интернет

Строим связку из SSH-бастиона и изолированной машины без выхода в интернет для удалённых пользователей. Настраиваем ключи, принудительную оболочку и автоматический переход на внутренний сервер.

security

ED25519 против RSA для SSH

Разбираемся, почему короткий ключ ED25519 не слабее длинного RSA, какие типы SSH-ключей поддерживает OpenSSH и как конвертировать PPK из PuTTYgen. Практические команды для генерации и преобразования ключей.

security

Шифрование пикселей PNG через ImageMagick

Шифруем пиксели PNG с парольной фразой или отдельным файлом-ключом через ImageMagick. Проверяем расшифровку, ограничения форматов и сохранение открытых метаданных.

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

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

Лишний cat и другие Bash-антипаттерны

Разбираем распространённые Bash-антипаттерны из учебных скриптов: лишний cat перед cut, grep и tr, а также небезопасный перебор файлов через ls. Показываем более прямые и устойчивые варианты команд.

bash

Fallthrough в операторе case Bash

Разбираем завершители блоков ;;, ;& и ;;& в операторе case Bash. На практических примерах показываем обычное завершение ветки, fallthrough и повторную проверку следующих шаблонов.

linux

Почему число 42 встречается в GNU, Vim и Emacs

Ищем культурный след числа 42 в справке Vim, документации Emacs и сообществе GNU. Разбираемся, как ответ из «Автостопом по галактике» стал устойчивой шуткой в мире программирования.

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

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

Как я похудел со 130 до 85 килограммов

Личный опыт постепенного снижения веса со 130 до 85 килограммов без краткосрочной диеты. Автор рассказывает об изменении питания, размере порций, периодах стабилизации веса и безопасном темпе похудения.

workflow

IT-гороскоп на неделю

Ироничный гороскоп для разработчиков, DevOps-инженеров и всех, кто живёт среди коммитов, багов и продакшена. Двенадцать знаков зодиака получают советы о коде, Git, выгорании, автоматизации и пет-проектах.

devops

Почему не стоит переделывать чужую инфраструктуру

История о смене DevOps-инженеров, усложнении рабочей инфраструктуры и внезапном переходе на Teleport. Почему новые практики нужно согласовывать, а систему — упрощать без потери доступа владельца.

Инструменты

Смотреть всё →
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, подписи и ограничение размера.

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

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

Как я похудел со 130 до 85 килограммов

Личный опыт постепенного снижения веса со 130 до 85 килограммов без краткосрочной диеты. Автор рассказывает об изменении питания, размере порций, периодах стабилизации веса и безопасном темпе похудения.

security

SSH-бастион без доступа в интернет

Строим связку из SSH-бастиона и изолированной машины без выхода в интернет для удалённых пользователей. Настраиваем ключи, принудительную оболочку и автоматический переход на внутренний сервер.

bash

IP-watchdog на Bash для перезагрузки роутера

Пишем Bash-watchdog, который проверяет доступность интернета и наращивает интервалы попыток восстановления связи. Для физической перезагрузки роутера подключаем недорогое USB-реле и управляем им через последовательный порт.

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

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