TGViewer
Bash Days | Linux | DevOps Bash Days | Linux | DevOps @bashdays · 23.6K subscribers
Post #128 8.23K
Купил сегодня вентилятор для малины (raspberry pi) на 12v и только потом понял, что на борту платы есть лишь 3v и 5v. Короче собрал из старого и нового один рабочий, взлетело, хорошо быть инженером.

Ладно, давай про strace. Сегодня научимся смотреть что запускает программа и с какими параметрами она это запускает.

Возьмем для испытаний программу man и распотрошим её.

Команда man позволяет получить доступ к общей базе справки по команде, функции или программе. Обычно для просмотра справки программе надо передать название команды или другого объекта в системе.

Екзекутим такую штуку:

strace -o logs -s1024 -fe execve man bash

Ага, запустилось. Перед тобой открылась страница помощи bash. Что дальше. Дальше нажимаешь клавишу «q», все это дело закрывается.

Давай теперь по ключам, а потом уже разберемся что произошло.

s = длина выводимой строки
f = отслеживаем дочерние процессы
e = какой системный вызов отслеживаем
o = куда сохраним результаты трассировки

Если не указывать ключ «o», то результаты запишутся в стандартный поток STDERR.

И чо? А ничо, давай смотреть результаты, которые записались в файл с именем logs.

cat logs

На экран вывелись результаты трассировки команды man. На картинке к этому посту, можешь посмотреть результат.

Вот таким образом мы узнали какие утилиты и с какими аргументами запускается программа man для распаковки и форматирования man страниц.

То есть ты можешь отдебажить свою собственную программу, которая запускает какие-то внешние утилиты и т.п. И посмотреть что конкретно она запускает и с какими параметрами. Я так недавно php дебажил, который запускал ffmpeg из скрипта.

Ладно, пойду дальше пиво пить. Не отвлекаю, увидимся!

UPD: Кстати чтобы сделать cat красивым, как на картинке, читай это.

tags: #bash #linux #debug
—
💩 @bashdays
  • 👍 103
More from @bashdays
  1. Sep 29, 2026Самый жаркий холивар в команде — это не systemd, а какие заказать роллы на всю команду. Од…
  2. Sep 24, 2026Post #1565
  3. Sep 23, 2026Здрасти приехали, решил я в кой-то веке воспользоваться услугами Codex, создал аккаунт, по…
  4. Sep 22, 2026Всем привет, с вами TagdTagd. Сегодня опять поднимем тему архивов, но немного с другой сто…
  5. Sep 15, 2026Всем привет, с вами TagdTagd. И это вторая часть. Практическая. С первой частью можешь озн…
  6. Sep 9, 2026Всем привет, с вами TagdTagd! Я тут вынужденно перешёл на MAX. Просто Telegram перестал ра…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →