🛠 Simple bash debugger using trap DEBUG - интересный способ дебага bash скриптов.
tl;dr - перед выполнением каждой команды будет запрашиваться пользовательский ввод, который либо будет выполняться, либо, если ничего не введено, скрипт будет продолжать работу.
tl;dr - перед выполнением каждой команды будет запрашиваться пользовательский ввод, который либо будет выполняться, либо, если ничего не введено, скрипт будет продолжать работу.
function _trap_DEBUG() {#bash #напочитать #debug
echo "# $BASH_COMMAND";
while read -r -e -p "debug> " _command; do
if [ -n "$_command" ]; then
eval "$_command";
else
break;
fi;
done
}
trap '_trap_DEBUG' DEBUG
May 25, 2022
🔧 Hermit: A reproducible container - ещё один занятный инструмент, который не просто работает как песочница. Hermit позволяет запустить программу в изолированном и полностью воспроизводимом окружении.
Например, даже если программа использует /dev/urandom, то будучи запущенной в hermit, программа будет забирать эти данные из псевдослучайного генератора, который, если потребуется, будет отдавать одни и те же данные при воспроизведении работы контейнера с программой.
Полезен инструмент оказывается как в работе над багами в программах, так и, например, при наблюдении за работой подозрительных программ, исполнение которых, будучи запущенным в Hermit, полностью контролируется нами.
#hermit #debug #фидбечат
Например, даже если программа использует /dev/urandom, то будучи запущенной в hermit, программа будет забирать эти данные из псевдослучайного генератора, который, если потребуется, будет отдавать одни и те же данные при воспроизведении работы контейнера с программой.
Полезен инструмент оказывается как в работе над багами в программах, так и, например, при наблюдении за работой подозрительных программ, исполнение которых, будучи запущенным в Hermit, полностью контролируется нами.
#hermit #debug #фидбечат
November 17, 2022
Записки админа
🔧 Hermit: A reproducible container - ещё один занятный инструмент, который не просто работает как песочница. Hermit позволяет запустить программу в изолированном и полностью воспроизводимом окружении. Например, даже если программа использует /dev/urandom…
🛠 Собственно, в блоге Меты появилась статья с описанием инструмента - Hermit: Deterministic Linux for Controlled Testing and Software Bug-finding.
#hermit #debug #напочитать
#hermit #debug #напочитать
November 25, 2022
🔧 Хороший список утилит, которые могут оказаться полезными при решении проблем в системе.
https://www.petermcconnell.com/posts/linuxtools/
#debug #troubleshooting #напочитать
https://www.petermcconnell.com/posts/linuxtools/
#debug #troubleshooting #напочитать
January 5, 2023
Julia Evans выпустила новый комикс, и сделала его доступным бесплатно, с промо-кодом
https://wizardzines.com/zines/debugging-guide
#debug #напочитать
BUYONEGIVEONE
. Достаточно перейти к покупке, ввести промо-код, и цена уменьшится до $0.https://wizardzines.com/zines/debugging-guide
#debug #напочитать
January 10, 2023
Статья про дебаг бинарных файлов, которые запускаются из shell-скрипта. Всё разобрано на примере запуска firefox...
https://developers.redhat.com/articles/2022/12/27/debugging-binaries-invoked-scripts-gdb
P. S. До сегодняшнего дня не знал что у меня в системе /usr/bin/firefox - это shell скрипт, запускающий нужное.
#gdb #debug #напочитать
https://developers.redhat.com/articles/2022/12/27/debugging-binaries-invoked-scripts-gdb
P. S. До сегодняшнего дня не знал что у меня в системе /usr/bin/firefox - это shell скрипт, запускающий нужное.
#gdb #debug #напочитать
January 18, 2023
Не техническая заметка из разряда "вот это автор понаписал очевидных вещей".
Но всё же, как по мне, получилось такое полезное обобщение того, что можно сделать, если мы столкнулись с проблемой, требующей дебага.
https://philbooth.me/blog/how-to-debug
#debug #напочитать #будничное
Но всё же, как по мне, получилось такое полезное обобщение того, что можно сделать, если мы столкнулись с проблемой, требующей дебага.
https://philbooth.me/blog/how-to-debug
#debug #напочитать #будничное
February 8, 2023
Много разных презентаций и роликов о debug утилитах. Есть старенькие, есть относительно свежие...
https://elinux.org/Tools_and_Debugging_Presentations
#debug #linux #будничное
https://elinux.org/Tools_and_Debugging_Presentations
#debug #linux #будничное
February 10, 2023
🛠 The GDB developer's GNU Debugger tutorial - неплохая серия статей о работе c gdb...
- Getting started with the debugger.
- All about debuginfo.
- Learn how to use breakpoints.
#gdb #debug #напочитать
- Getting started with the debugger.
- All about debuginfo.
- Learn how to use breakpoints.
#gdb #debug #напочитать
June 8, 2023
⏯️ Record and Replay Framework - интересный инструмент, который позволяет записать выполнение нужной программы, а затем проанализировать записанный процесс, при необходимости повторив его нужное количество раз...
- Пример работы: https://github.com/rr-debugger/rr/wiki/Usage
- Github: https://github.com/rr-debugger/rr
- Сайт: https://rr-project.org/
#debug #rr #gdb
rr record /path/to/program --arg1 --arg2
rr replay
- Пример работы: https://github.com/rr-debugger/rr/wiki/Usage
- Github: https://github.com/rr-debugger/rr
- Сайт: https://rr-project.org/
#debug #rr #gdb
November 17, 2024
🛠 TUI дебаггер для Linux. И это даже не какая-то обёртка для gdb, по словам автора, а вполне самостоятельная разработка...
https://github.com/al13n321/nnd
#tui #nnd #debug
https://github.com/al13n321/nnd
#tui #nnd #debug
May 6
🔎 strace tips for better debugging - немножечко рекомендаций по работе с strace...
https://rrampage.github.io/2025/06/13/strace-tips-for-better-debugging/
#strace #debug #напочитать
https://rrampage.github.io/2025/06/13/strace-tips-for-better-debugging/
#strace #debug #напочитать
June 18