Как программа попадает в память: от execve до main
Вы когда-нибудь задумывались, что происходит после того, как вы нажимаете Enter в терминале Linux? Вводите ./myprogram и... Что именно происходит дальше? Как ядро находит файл? Как загружает его в память? Кто вызывает main ? И как на всё это посмотреть вживую? Разберемся на примере пустой программы empty_sleep . Она ничего не делает, просто запускается и завершается через 30 секунд. В ней нет лишнего кода и мы сможем сосредоточиться только на процессе загрузки. Всё, что мы увидим, относится к большинству динамически скомпилированных программ в Linux. В этой статье покажу как с помощью strace в реальном времени проследить путь программы от execve до _start и main .
https://habr.com/ru/articles/1036444/
#Linux #strace #ELF #загрузка_программ #системные_вызовы #execve #mmap #анализ_файлов #компоновщик
A longer investigation writeup: https://www.enricozini.org/blog/2026/systemd-nspawn-and-fedora-44/
Filed a systemd bug at https://github.com/systemd/systemd/issues/41868
strace: отладка Linux-приложений через системные вызовы
Когда процесс зависает, молчит в логах и при этом продолжает жить своей странной жизнью, обычные инструменты наблюдения быстро упираются в потолок. В таких ситуациях strace полезен не как «ещё одна консольная утилита», а как прямой способ увидеть, чем процесс занят на уровне системных вызовов: что он открывает, чего ждёт, куда пишет и на чём реально тормозит. В статье — коротко и по делу о том, как читать этот поток событий и применять strace в типовых продовых расследованиях, где дебаггер, исходники и лишние эксперименты недоступны.
https://habr.com/ru/companies/otus/articles/1013812/
#linux #системное_администрирование #itинфраструктура #системные_вызовы #трассировка #strace
`lnav` is a fab tool for analysing logs. Today I used it for debugging a verbose `strace -f` log file to analyse what the problem was w/smth and it was cool
Tip: hit `<tab>` to edit, enable, and disable existing text filters added w/e.g. `:filter-in` and `:filter-out`.
#lnav #Linux #Logs #strace #debugging #ArchLinux #Tools #DebuggingTools #Sysadmin #CommandLine
@xhr DANKE! Der Hint mit #strace hat mir weitergeholfen!
Ich hatte eine Datei __db.sasl_passwd.db vom Okt 31 welche bei #postmap anscheinend aufgerufen wird. Diese war aber leer, ein verschieben in eine .old hat instant eine neue angelegt, diesmal aber mit Inhalt. Nach einem Neustart existiert diese als sasl_passwd.db und in meine Inbox trudeln gerade die Mails von #Yunohost ein.
New free guide released: System calls and strace! 🚀
Do you want to troubleshoot Linux like a pro? Our latest free guide shows you how to inspect system calls using strace, a must-have tool for every SysAdmin, SRE and DevOps engineer.
https://www.learnbyfixing.com/guides/system-calls-and-strace/
#LearnByFixing #Linux #DevOps #SRE #Sysadmin #syscalls #strace