1
strace是什么
strace是一个可用于诊断、调试和教学的Linux用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。
在运维的日常工作中,有些故障和问题未能排查出原因时,使用strace分析一下进程在进行哪些系统调用,也许能提供一些排查的思路与方向。熟悉常用系统调用,能够更好地理解和使用strace。
2
strace如何使用
strace的使用方式之一,就是直接在原本的命令前加上strace即可。比如我们要跟踪 "ls /" 命令执行时的系统调用,可以直接:
strace ls /
# 如果没有strace命令,需要先进行安装
yum install -y strace
输出非常复杂,可见一条简单的 ls 命令操作系统为我们封装了许多系统调用。
同样,执行进程时直接在进程的启动命令前加上strace命令即可。