bpftrace:uprobe目标文件不存在或不可执行

时间:2019-12-25 14:43:11

标签: linux address-sanitizer bpf dynamic-analysis bcc-bpf

我想使用bpftrace跟踪libasan库中的函数,该库位于/ usr / lib / x86_64-linux-gnu /中。

但是

sudo bpftrace -e 'uretprobe:/usr/lib/x86_64-linux-gnu/libasan.so.4: __interceptor_malloc { printf("pid: %d, malloc %p\n", pid, retval); }'

给出错误:uprobe target file '/usr/lib/x86_64-linux-gnu/libasan.so.4' does not exist or is not executable

我已经尝试过:export LD_LIBRARY_PATH="/lib:/usr/lib:/usr/local/lib",但无济于事。

如何使bpftrace可执行库?我需要它来跟踪在Firefox进程中完成的分配。谢谢!

编辑:我刚刚发现,对libasan的许可权是-rw-r--r--,这意味着它实际上是不可执行的。我应该如何使其可执行?

1 个答案:

答案 0 :(得分:-1)

我通过执行chmod + x libasan.so.4.0.0修复了它