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

Расскажу про один трюк в 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 892
▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересными/полезными. Это видео из моих подписок за последнее время (обычно беру период в 2 недели…
Читать далее →
10 085
Другие главы канала «ServerAdmin.ru | Linux | DevOps»
Выберите главу, чтобы продолжить чтение
Все посты →
Глава от 18.06.2026
Мини-гайд: как добавить карты, поиск и навигацию в сервис клиента без дополнител…
👁 457 просмотров
Глава от 18.06.2026
В Windows есть давняя проблема с переключением раскладки, когда она не переключа…
👁 580 просмотров
Глава от 17.06.2026
🌞🏄Лето в разгаре! Отпуск не должен сорваться из-за проблем на работе. Как пост…
👁 652 просмотров
Глава от 17.06.2026
Небольшая информационная заметка для тех, кто не сталкивался, как я ранее, с под…
👁 823 просмотров
Глава от 16.06.2026
Слушайте подкаст про защиту персональных данных. Специалисты рассказывают про ау…
👁 583 просмотров
Глава от 16.06.2026
В описаниях продуктов или в обсуждениях в чате иногда упоминается FreeBSD. Это с…
👁 873 просмотров
Глава от 15.06.2026
На днях словил неприятное ощущение холодка, пробежавшего по спине, когда не смог…
👁 957 просмотров
Глава от 15.06.2026
Казалось бы, какой сейчас смысл в веб сервере Apache, когда есть полно более сов…
👁 1 101 просмотров
Глава от 11.06.2026
▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал…
👁 1 257 просмотров

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

▶️ Очередная подборка авторских IT роликов, которые я лично посмотрел и посчитал интересными/полезными. Это видео из моих подписок за послед…
👁 10 085 просмотров
🎓 Я периодически просматриваю поток Администрирование на Хабре. Лет 5 назад и раньше я делал это регулярно, а потом забросил и вообще ничего…
👁 10 069 просмотров
117 приказ ФСТЭК: с 1 марта меняются правила игры в информационной безопасности. Приглашаем на вебинар о новых требованиях регулятора и спо…
👁 10 059 просмотров
У платформы для управления IT инфраструктурой INFRAX в начале марта вышел первый стабильный релиз 1.0. Я уже делал заметки по этой системе: …
👁 9 985 просмотров
Давно уже надумал заменить свой основной рабочий ноутбук. Ещё год назад делал по этому поводу публикацию. Там какое-то рекордное обсуждение …
👁 9 974 просмотров
Домучиваю статью про Loki. Никак не соберусь и не доделаю её полностью. В процессе настройки хочется наполнить систему реальными логами в но…
👁 9 945 просмотров
Вспомнилось очень старое и неприметное видео с небольшим количеством просмотров и комментариев: ▶️ Imagine DevOps Ностальгическая пародия …
👁 9 941 просмотров
Каждый раз, когда пишу заметки на тему DDOS, в комментариях появляются одни и те же заблуждения. Я не сказать, что прям такой большой специа…
👁 9 930 просмотров
Я не раз между делом в заметках упоминал, что обычно не ставлю в автоматическую загрузку виртуальные машины на гипервизорах. Недавно один по…
👁 9 926 просмотров
Недавно была публикация про PDF принтер в Windows. В комментариях дали ссылку на шикарный бесплатный сервис BentoPDF для работы с PDF. Причё…
👁 9 914 просмотров
Хочу дать небольшие советы, основанные на личном опыте работы в отрасли. Может показаться, что они будут актуальны только новичкам, но это д…
👁 9 892 просмотров
Я написал подробный обзор межсетевого экрана и по совместительству шлюза ИКС ФСТЭК, который можно установить на своё железо или виртуальную …
👁 9 877 просмотров
Мне недавно один читатель задал простой вопрос, который заставил задуматься. Человек пояснил, что он далёк от ИТ, не сильно во всём этом раз…
👁 9 823 просмотров
В Microsoft работают настоящие специалисты по возвращении в систему одного и того же бага. Сколько лет уже наблюдается одна и та же проблема…
👁 9 820 просмотров
Есть популярная бесплатная виндовая программа из далёкой древности - doPDF. Когда нужно добавить в систему pdf принтер, я вспоминаю именно …
👁 9 813 просмотров
Сейчас борьба с DDOS - в основном удел специальных сервисов, у которых есть свои каналы и пулы IP адресов. Без этого эффективной защиты не п…
👁 9 811 просмотров
Веселенький денек у сисадмина или Web-site is down как это было в оригинале. Для тех, кто еще не видел (такие есть??? 😱), хочу поделиться о…
👁 9 807 просмотров
Очередная подборка статей авторов, которые согласились в ней участвовать. Кто не понимает, о чём идёт речь, может прочитать прошлые публикац…
👁 9 806 просмотров
Тихой сапой платформа виртуализации Proxmox захватила весь сегмент малого и среднего бизнеса и потихоньку ползёт дальше. Уже есть сравнения …
👁 9 794 просмотров
Сегодня много времени провёл в дороге и размышлял над некоторыми вещами, в том числе об ИИ. Хочу с вами поделиться некоторыми мыслями. Я сей…
👁 9 788 просмотров

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

Каналы из той же тематики, где часто появляются близкие сюжеты
Вся тема →
@canalmaxone
AntiCloudMod
AntiCloudMod — сообщество для тех, кто ценит свободу общения без облачной цензуры. Здесь обсуждают альтернативные мессенджеры, инструменты для приватности и децентрализов…
👥 374 530 · +72 010/7д
@WylsacomRed
Wylsacom Red
Официальный канал Wylsacom в Max. Тут всё про технологии и жизнь в ногу со временем! Номер заявления для регистрации в РКН: № 6979154178 Розыгрыши: kichaev@wylsacom.med…
👥 154 535 · +9 611/7д
@BelgorodDRONE
Информация БПЛА Белгород, Белгородский район
Информация БПЛА Белгород, Белгородский район — специализированный канал в мессенджере Макс, посвященный новостям и информации о беспилотных летательных аппаратах в регион…
👥 139 015 · +8 615/7д
@TikTokModCloud
TikTokModCloud
Официальные обновления стабильного мода TikTok Чат: https://clck.ru/3S6mVh По рекламе: https://iimax.ru/dim4ugan
👥 83 452 · +19 363/7д
@hitech
Hi-Tech
Оперативные новости, обзоры гаджетов, собственное видео, трансляции мировых анонсов и мероприятий По вопросам сотрудничества и размещения рекламы i.ostapenko@corp.mail.r…
👥 53 201 · -182/7д
@na_kruchok
ГЛЕНТ | МЕМЫ
Глент мемы Это фан-сообщество, созданное преданными поклонниками для поддержки творчества Глента. Данный канал НЕ является официальным и ведется фанатом.
👥 47 136 · +36 117/7д
🏷 Темы и теги
#bash #linux #terminal #системное администрирование #devops #серверы #автоматизация #Технологии
📋 О канале ServerAdmin.ru | Linux | DevOps
Погрузись в мир системного администрирования и DevOps с каналом ServerAdmin.ru. Здесь ты найдешь практические руководства по Linux, автоматизации, настройке серверов и современным инструментам. Авторский контент, основанный на реальном опыте, поможет решать повседневные задачи и прокачивать навыки.
🔍 Архив всех постов Макс
Поиск по 8,756,475 постам из 201,186 каналов
Попробовать за 1 ₽ →
Удалить пост или канал с МАКСОТЕКИ
Заявка подтверждается через бота Макс: нужно быть администратором канала и добавить бота МАКСОТЕКИ в администраторы. После проверки канал или конкретный пост скрывается с сайта.
📊 Аналитика канала «ServerAdmin.ru | Linux | DevOps» ➡️ Перейти в канал Макс
Заявка в МАКСОТЕКА
Добавьте свой канал в каталог
Зарегистрируйтесь в личном кабинете и добавьте канал за пару кликов.
Перейти в личный кабинет →

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