Среда отладки с кодом на экране ноутбукаФото: Daniil Komov / Pexels ← Все темы Тема Bashdays

Debug

Методы отладки и диагностики: поиск ошибок в Linux системах, сервисах и DevOps процессах.

75материалов
Сначала новые

Статьи по теме

Страница 1 из 7

bash

Почему нельзя перезаписывать файл через sed и редирект

Команда cat file | sed ... > file обнуляет исходный файл до начала чтения. Показываем опасный пример, результат и замену через временный файл с последующим mv, а также альтернативный вариант с ed.

Фото: Mikhail Nilov / Pexels
bash

Как Bash загружает функции через source

Проверяем через strace, перечитывает ли Bash подключённый файл при каждом вызове функции. Минимальный эксперимент показывает обращения openat и подтверждает, что source загружает файл один раз на запуск скрипта.

Фото: Daniil Komov / Pexels
devops

Почему proxy_pass в Nginx ломает путь к Flask

Разбираем, почему Flask возвращает Not Found при проксировании приложения через location /app в Nginx. На конкретной конфигурации показываем, как завершающий слэш в proxy_pass меняет путь запроса и устраняет ошибку маршрутизации.

Фото: Sérgio Souza / Pexels
linux

Как файловый менеджер определяет тип файла

Проверяем через strace, как Nautilus определяет тип файла по расширению или содержимому. Создаём файл с сигнатурой BZ2, наблюдаем системные вызовы openat и read, а затем сравниваем поведение после добавления расширения txt.

Фото: Eva Bronzini / Pexels
debug

Почему chmod 777 в PHP превращается в 01411

Разбираем странные права 01411 после вызова chmod в PHP и доказываем источник ошибки через strace. На примерах показываем разницу между десятичным 777, строкой и корректным восьмеричным значением 0777.

Фото: Chengxin Zhao / Pexels
linux

Как перехватить удаление временного файла через strace

Практический разбор отладки неизвестного бинарника через strace и инъекцию ошибки EACCES. Показываем, как остановить unlink, сохранить временный файл и найти гонку, из-за которой выгрузка становилась пустой.

Фото: Pavel Danilyuk / Pexels
devops

Как отлаживать Docker-контейнер, который не запускается

Собираем намеренно сломанный образ Nginx и последовательно отлаживаем Docker-контейнер, который сразу завершается. Используем docker ps, logs, inspect, exec, cp и dive, чтобы найти ошибку в конфигурации, проверить слои и …

Фото: Gustavo Fring / Pexels
bash

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

Автор COLODEBUG предлагает использовать встроенную команду Bash : вместо обычного символа комментария #. Такой приём делает пояснения заметными в трассировке скрипта и помогает при отладке.

Фото: Markus Winkler / Pexels
О направлении

Что входит в тему

Debug — подборка материалов по диагностике, поиску неисправностей и расследованию проблем в Linux и инфраструктуре.

В разделе публикуются материалы по:

  • Анализу логов
  • strace
  • systemd
  • Производительности серверов
  • Диагностике сетей
  • Отладке приложений
  • Мониторингу
  • Troubleshooting

Здесь собраны практические руководства и реальные примеры поиска причин ошибок, нестабильной работы сервисов и деградации производительности.