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

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

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

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

Что означает звёздочка в history Bash

Разбираемся, почему команда history иногда показывает звёздочку рядом с записью Bash. Пошагово воспроизводим изменение строки истории, откатываем правку и сверяем поведение с документацией GNU Bash.

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

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

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

ИТ-юмор

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

Цитатник

Все цитаты →

DOS 6.22: Иногда мне кажется, что лучшие программисты мира и лучшие технические умы работают только над одним - как сделать так, чтоб на новом скоростном железе тормозило также, как на хламе 10 летней давности.

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

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

Что означает звёздочка в history Bash

Разбираемся, почему команда history иногда показывает звёздочку рядом с записью Bash. Пошагово воспроизводим изменение строки истории, откатываем правку и сверяем поведение с документацией GNU Bash.

linux

Куда пропали сигналы 32 и 33 в Linux

Выясняем, почему команда kill -l не показывает сигналы 32 и 33 в Linux. Разбираем резервирование сигналов библиотекой glibc, потоки NPTL и диапазон сигналов реального времени SIGRTMIN–SIGRTMAX.

bash

Как узнать имя функции в Bash

Разбираем массив FUNCNAME и получаем имя текущей функции внутри Bash-скрипта. Показываем стек вызовов, аналог funcstack в Zsh и связанные переменные BASH_SOURCE и BASH_LINENO для отладки.

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

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

Как скачать файл средствами Bash

Скачиваем файл без curl и wget через встроенное устройство `/dev/tcp` в Bash. Разбираем HTTP-запрос, файловый дескриптор и ограничения прямого сокетного соединения без TLS.

linux

Почему Samba не всегда заменяет Windows Server

Практический опыт файловых серверов на FreeNAS, TrueNAS, OMV и чистой Samba. Разбираем различия прав Windows и Linux, сложности ACL и ограничения Samba в небольших и средних организациях.

networks

Как направить разные хосты через разные шлюзы в pfSense

Настраиваем policy-based routing в pfSense, чтобы группы хостов выходили в интернет через разные внешние IP. Создаём интерфейсы, алиасы, шлюзы и правила firewall, которые не допустят утечки трафика через маршрут по умолчанию.

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

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

Почему не стоит менять стандартный SSH-порт

Разбираем, почему перенос SSH с порта 22 редко повышает безопасность и лишь усложняет подключения. Вместо security through obscurity используем SSH-ключи, запрет root-входа, отключение паролей и fail2ban.

security

Как StrictModes влияет на проверку SSH-ключей

Разбираем ошибку `bad ownership or modes` при входе по SSH-ключу и роль параметра `StrictModes`. Показываем безопасную диагностику прав `authorized_keys` и объясняем риски временного отключения проверки.

linux

Как работают права 330 на каталог

Разбираем необычные права 330 для каталога Linux и их применение на SFTP-сервере. Показываем, как разрешить запись и удаление файлов, но скрыть список содержимого от пользователей одной учётной записи.

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

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

Как узнать имя функции в Bash

Разбираем массив FUNCNAME и получаем имя текущей функции внутри Bash-скрипта. Показываем стек вызовов, аналог funcstack в Zsh и связанные переменные BASH_SOURCE и BASH_LINENO для отладки.

services

Как создать учётную запись GitLab из России

Пошаговый способ зарегистрировать новую учётную запись GitLab из России через постоянный ящик Putsbox и Tor Browser. Разбираем подтверждение почты, повторную верификацию и альтернативу в виде локального GitLab.

linux

Как tar хранит владельца и группу файла

Исследуем заголовок tar-архива через hexdump и смотрим, где сохраняются UID, GID, имя владельца и группа. Проверяем `--owner`, `--group` и поведение распаковки для существующих и выдуманных пользователей.

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

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

Как проверять код через pre-commit

Настраиваем Git-хук pre-commit для автоматической проверки Bash-скриптов через ShellCheck. В качестве бонуса адаптируем тот же подход для Ansible-плейбуков и ansible-lint.

workflow

Как управлять dotfiles через chezmoi

Знакомимся с chezmoi для управления `.bashrc`, `.vimrc`, `.gitconfig` и другими dotfiles на нескольких устройствах. Добавляем и редактируем конфиги, смотрим diff, восстанавливаем файлы и синхронизируем репозиторий через Git.

workflow

Как не сломаться на абсурдном собеседовании

Разговор о бессмысленных задачах на технических собеседованиях, давлении рекрутеров и праве кандидата требовать проверку по будущей роли. Финансовая подушка и практика интервью помогают спокойнее отказываться от неподходящих …

Инструменты

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

Как создать учётную запись GitLab из России

Пошаговый способ зарегистрировать новую учётную запись GitLab из России через постоянный ящик Putsbox и Tor Browser. Разбираем подтверждение почты, повторную верификацию и альтернативу в виде локального GitLab.

bash

Как настроить подсказки и темы в Bash

Добавляем в чистый Bash автоподсказки и подсветку команд с помощью BLE.sh. Затем устанавливаем oh-my-posh, подключаем темы оформления через профиль оболочки и получаем удобный терминал без Zsh.

linux

Как записать терминал в GIF через VHS

Автоматизируем запись терминала с помощью VHS и сценария `.tape`. Настраиваем размер кадра и команды, запускаем генерацию GIF в Docker и публикуем готовую анимацию.

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

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

Почему серверные диски надёжнее обычных

Сравниваем вероятность неисправимых ошибок чтения у WD Blue, WD Gold, SAS Toshiba и SSD Micron. Объясняем, почему RAID не всегда защищает от повреждённых данных и как контрольные суммы ZFS помогают обнаруживать ошибки.

bash

Почему самоучитель по Bash не получился в Markdown

Практический опыт подготовки большого самоучителя по Bash сначала в Markdown и Pandoc, а затем в LibreOffice. Разбираем ограничения таблиц, кириллицы, UTF-символов и PDF-вёрстки, которые стали заметны после девятнадцати глав.

workflow

Как я полностью отказался от алкоголя

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

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

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