Чтобы просмотреть адреса памяти процесса, вы можете посмотреть /proc/$pid/mem
.См. также /proc/$pid/maps
для того, что отображено в адресном пространстве процесса.
Вам нужно будет seek()
в этом файле перейти в нужное место, что вы сможете сделать с помощьюdd
:
dd bs=1 skip="$((0x7fffffffeb58))" count=4 if="/proc/$pid/mem" |
od -An -vtu4
Будет считано 4 байта по этому адресу и интерпретировано как 32-битное целое число без знака.
Другой подход — подключить отладчик к процессу:
gdb --batch -ex 'x/u 0x7fffffffeb58' -p "$pid"
В любом случае обратите внимание, что в зависимости от значения kernel.yama.ptrace_scope
sysctl для этого вам могут потребоваться привилегии суперпользователя.
У меня такая же проблема. Внезапно ssh-соединение из контейнера докеров перестало работать. Но когда я создаю контейнер с «хостовой» сетью -, он работает. Пробовал на образах ubuntu и centos.