ServerAdmin.ru | Linux | DevOps
ServerAdmin.ru | Linux | DevOps
2 033 подписчиков · @srv_admin
К каналу →
Я не раз между делом в заметках упоминал, что обычно не ставлю в автоматическую загрузку виртуальные машины на гипервизорах. Недавно один подписчик просил меня пояснить, на чём осн…
Читать далее →
9 990
Реклама
Домучиваю статью про Loki. Никак не соберусь и не доделаю её полностью. В процессе настройки хочется наполнить систему реальными логами в нормальном объёме, чтобы всё проверить. Я …
Читать далее →
10 015

Расскажу про один трюк в strace, про который я вроде бы ещё ни разу не писал.

Расскажу про один трюк в strace, про который я вроде бы ещё ни разу не писал. В нём ничего особенного нет, но в некоторых ситуациях с ним удобно. Если случайно нигде не видел подобного использования, то самому может и в голову не прийти, что так можно.

У strace и её производных (ltrace, latrace) есть ключ -o, через который настраивается вывод результата в файл. При этом вместо файла может выступать pipe, а не обычный файл. Покажу сразу на примере. Тут будет видно явное удобство такого подхода.

Strace много всего умеет и обычно используется при дебаге. Я про него часто упоминал в различных заметках в основном в контексте анализа дисковой активности процессов. Например, какие файлы читает процесс, в какие пишет. Вот сразу реальный и полезный пример с Angie/Nginx.

Если у вас навороченная конфигурация, где куча всего подключается из разных директорий, что бывает часто (привет настройкам Nginx в Bitrixenv), то хочется быстро посмотреть, а что реально из какой-то конкретной директории подключается в момент запуска веб сервера. Проще всего это сделать, анализируя активность процесса во время выполнения команды nginx -t. В этот момент конфигурация проверяется на ошибки, соответственно, она должна быть прочитана.

Можно просто посмотреть все системные вызовы openat, которые отвечают за чтение:

# strace -zf -e trace=openat nginx -t

В выводе будет много всего лишнего - библиотеки, логи, системные файлы и т.д. Можно попробовать грепнуть:

# strace -zf -e trace=openat nginx -t | grep /etc/nginx

У вас, кстати, ничего не получится. Это особенность nginx, про которую просто надо знать. Вывод этой команды улетает не в стандартный поток stdout, а в stderr. Не знаю, почему так, но в Nginx это исторически сложилось. А grep не грепает stderr. Вам нужно будет как минимум сделать вот так:

# strace -zf -e trace=openat nginx -t 2>&1 | grep /etc/nginx

То есть направить поток stderr в stdout. Тогда он грепнется. Но вывод всё равно будет не очень красивый и наглядный. И тут можно использовать вот такой трюк:

# strace -o "| grep -Eo '/etc/nginx/[^\"]+'" -zf -e trace=openat nginx -t
/etc/nginx/nginx.conf
/etc/nginx/modules-enabled
/etc/nginx/mime.types
/etc/nginx/conf.d
/etc/nginx/sites-enabled
/etc/nginx/sites-enabled/default

На выходе получили аккуратный обработанный список директорий и файлов в /etc/nginx, которые веб сервер прочитал. Смысл того, что мы сделали в том, что через ключ -o вывод отправили не в файл, а в пайп, где он сразу же был обработан тем же grep, который вывел только то, что было между " ", а это как раз путь в файловой системе. Вся остальная информация не нужна и только мешает.

В данном случае уже не имеет значение, куда и как пишет nginx. За этим не нужно следить. Аналогичная команда с обычным грепом выглядела бы так:

# strace -zf -e trace=openat nginx -t 2>&1 | grep -Eo '/etc/nginx/[^\"]+'

Тут обязательно перенаправление 2>&1.

Подобная обработка вывода через pipe актуальна для анализа каких-то интерактивных программ. Например, iftop:

# strace -o "| grep -Eo '/[^\"]+'" -zf -e trace=openat iftop

Запускаем и сразу закрываем iftop. В консоли видим список файлов, которые она прочитала. В данном случае команда:

# strace -zf -e trace=openat iftop | grep -Eo '/[^\"]+'

уже не сработает. До grep дело не дойдёт, так как сначала вывалится портянка strace, а потом запустится iftop. В первом случае мы сразу же обрабатываем вывод в strace, выводим его в консоль и потом запускается iftop.

Можно посмотреть, где живёт конфигурация mc, запущенная под рутом:

# strace -o "| grep -Eo '/root[^\"]+'" -zf -e trace=openat mc
/root/.config/mc/ini
/root/.bash_history

Просто и наглядно. Удобно смотреть, кто, что читает в момент запуска.

#bash #linux #terminal
Хочу дать небольшие советы, основанные на личном опыте работы в отрасли. Может показаться, что они будут актуальны только новичкам, но это далеко не так. Проблемы обсуждения зарпла…
Читать далее →
9 963
▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересными/полезными. Это видео из моих подписок за последнее время (обычно беру период в 2 недели…
Читать далее →
10 157
Другие главы канала «ServerAdmin.ru | Linux | DevOps»
Выберите главу, чтобы продолжить чтение
Все посты →
Глава от 04.09.2026
У меня есть доступ к так называемому общему платному аккаунту ChatGPT Plus, кото…
👁 725 просмотров
Глава от 04.09.2026
Последнее время стал замечать проблемы с доступом к стандартным репозиториям Deb…
👁 791 просмотров
Глава от 01.09.2026
Сегодня ночью словил неприятные проблемы с браузерами, которые сначала поставили…
👁 1 029 просмотров
Глава от 31.08.2026
Думаю все, кто работают в консоли Linux, знают про автодополнение имён файлов и …
👁 969 просмотров
Глава от 31.08.2026
Проверьте по чек-листу, соответствует ли ваша организация приказу ФСТЭК РФ №117 …
👁 655 просмотров
Глава от 28.08.2026
▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал…
👁 1 027 просмотров
Глава от 27.08.2026
Утром в комментариях к заметке в TG упомянули такую вещь, как отравление данных,…
👁 1 032 просмотров
Глава от 27.08.2026
Немного информации на тему ИИ, которая возможно кому-то покажется полезной. По к…
👁 1 014 просмотров
Глава от 26.08.2026
Очередная подборка статей авторов, которые согласились в ней участвовать. ⇨ ИИ-…
👁 1 041 просмотров

Популярные посты канала «ServerAdmin.ru | Linux | DevOps»

▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересными/полезными. Это видео из моих подписок за послед…
👁 10 157 просмотров
🎓 Я периодически просматриваю поток Администрирование на Хабре. Лет 5 назад и раньше я делал это регулярно, а потом забросил и вообще ничего…
👁 10 147 просмотров
117 приказ ФСТЭК: с 1 марта меняются правила игры в информационной безопасности. Приглашаем на вебинар о новых требованиях регулятора и спо…
👁 10 136 просмотров
У платформы для управления IT инфраструктурой INFRAX в начале марта вышел первый стабильный релиз 1.0. Я уже делал заметки по этой системе: …
👁 10 062 просмотров
Давно уже надумал заменить свой основной рабочий ноутбук. Ещё год назад делал по этому поводу публикацию. Там какое-то рекордное обсуждение …
👁 10 051 просмотров
Каждый раз, когда пишу заметки на тему DDOS, в комментариях появляются одни и те же заблуждения. Я не сказать, что прям такой большой специа…
👁 10 021 просмотров
Вспомнилось очень старое и неприметное видео с небольшим количеством просмотров и комментариев: ▶️ Imagine DevOps Ностальгическая пародия …
👁 10 021 просмотров
Домучиваю статью про Loki. Никак не соберусь и не доделаю её полностью. В процессе настройки хочется наполнить систему реальными логами в но…
👁 10 015 просмотров
Я не раз между делом в заметках упоминал, что обычно не ставлю в автоматическую загрузку виртуальные машины на гипервизорах. Недавно один по…
👁 9 990 просмотров
Хочу дать небольшие советы, основанные на личном опыте работы в отрасли. Может показаться, что они будут актуальны только новичкам, но это д…
👁 9 963 просмотров
Недавно была публикация про PDF принтер в Windows. В комментариях дали ссылку на шикарный бесплатный сервис BentoPDF для работы с PDF. Причё…
👁 9 933 просмотров
Очередная подборка статей авторов, которые согласились в ней участвовать. Кто не понимает, о чём идёт речь, может прочитать прошлые публикац…
👁 9 903 просмотров
Сейчас борьба с DDOS - в основном удел специальных сервисов, у которых есть свои каналы и пулы IP адресов. Без этого эффективной защиты не п…
👁 9 888 просмотров
В Microsoft работают настоящие специалисты по возвращении в систему одного и того же бага. Сколько лет уже наблюдается одна и та же проблема…
👁 9 886 просмотров
Я написал подробный обзор межсетевого экрана и по совместительству шлюза ИКС ФСТЭК, который можно установить на своё железо или виртуальную …
👁 9 877 просмотров
Тихой сапой платформа виртуализации Proxmox захватила весь сегмент малого и среднего бизнеса и потихоньку ползёт дальше. Уже есть сравнения …
👁 9 868 просмотров
Мне недавно один читатель задал простой вопрос, который заставил задуматься. Человек пояснил, что он далёк от ИТ, не сильно во всём этом раз…
👁 9 823 просмотров
Сегодня много времени провёл в дороге и размышлял над некоторыми вещами, в том числе об ИИ. Хочу с вами поделиться некоторыми мыслями. Я сей…
👁 9 820 просмотров
Есть популярная бесплатная виндовая программа из далёкой древности - doPDF. Когда нужно добавить в систему pdf принтер, я вспоминаю именно …
👁 9 813 просмотров
Я уже упоминал ранее, что Proxmox Virtual Environment (Proxmox VE), как говорится, пошёл в народ. А за ним и в бизнес. Начала появляться куч…
👁 9 812 просмотров

Связанные темы в других каналах

Каналы из той же тематики, где часто появляются близкие сюжеты
Вся тема →
@canalmaxone
AntiCloudMod
👥 364 077 · -7 550/7д
@BelgorodDRONE
Информация БПЛА Белгород, Белгородский район
7924148410
👥 199 707 · +1 160/7д
@biologia89
РОБЛОКС🔷
РОБЛОКС В МАКС! Реклама: https://clck.ru/3Tmmgx
👥 178 041 · -2 924/7д
@WylsacomRed
Wylsacom Red
Официальный канал Wylsacom в Max. Тут всё про технологии и жизнь в ногу со временем! Розыгрыши: kichaev@wylsacom.media По вопросам сотрудничества: https://wylsacom.medi…
👥 174 987 · +7 129/7д
@TikTokModCloud
TikTokModCloud
Официальные обновления стабильного мода TikTok Чат: https://clck.ru/3S6mVh По рекламе: https://iimax.ru/dim4ugan
👥 124 246 · +1 574/7д
@yandex_browser
Яндекс Браузер с Алисой AI
Привет, это канал команды Яндекс Браузера Показываем, как превратить наши технологии в ваши возможности. Скачать Браузер тут: https://browser.yandex.ru/ Наше сообще
👥 78 431 · -2 774/7д
🏷 Темы и теги
#bash #linux #terminal #devops #ansible #sysadmin #серверы #автоматизация #Технологии
📋 О канале ServerAdmin.ru | Linux | DevOps
Авторский канал для тех, кто управляет серверами и строит отказоустойчивую инфраструктуру. Здесь вы найдете практические руководства по Linux, автоматизации с Ansible и DevOps-инструментам. Без воды — только проверенные конфиги, скрипты и решения реальных задач sysadmin. Подписывайтесь, чтобы не пропустить новые статьи и туториалы.
🔍 Архив всех постов Макс
Поиск по 17,101,415 постам из 203,938 каналов
Подключить за 490 ₽/мес →
Удалить пост или канал с МАКСОТЕКИ
Заявка подтверждается через бота Макс: нужно быть администратором канала и добавить бота МАКСОТЕКИ в администраторы. После проверки канал или конкретный пост скрывается с сайта.
📊 Аналитика канала «ServerAdmin.ru | Linux | DevOps» ➡️ Перейти в канал Макс
Заявка в МАКСОТЕКА
➕
Добавьте свой канал в каталог
Зарегистрируйтесь в личном кабинете и добавьте канал за пару кликов.
Перейти в личный кабинет →

Бесплатная регистрация, быстрая модерация.