bpftrace可以用来追踪系统调用,在分析问题的时候会用到。 可以参考jvns的这篇文章1
安装 参考安装说明2, 使用手册3
sudo snap install --devmode bpftrace sudo snap connect bpftrace:system-trace sudo apt install linux-headers-$(uname -r) export BPFTRACE_KERNEL_SOURCE=/usr/src/linux-headers-$(uname -r) 使用 执行的命令
bpftrace -e 'tracepoint:syscalls:sys_enter_execve {printf("%s -> %s\n", comm, str(args->filename))}' 新创建的进程
bpftrace -e 'tracepoint:syscalls:sys_enter_execve {join(args->argv)}' 新打开的文件
bpftrace -e 'tracepoint:syscalls:sys_enter_openat {printf("%s %s\n", comm, str(args->filename))}' 统计系统调用
...