首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

十个例子让你了解 strace 的使用技巧

答案当然是可以了,linux 命令 strace 就是跟踪进程行为的一大神器,你可以通过它知道正在执行的进程中到底发生了什么,以及程序为什么出现错误等等。...2. strace 的安装 如今,linux 几乎都有成熟的包管理机制,strace 的安装也因此变得非常简单: ubuntu/Debian 系统 sudo apt install strace RHEL...追踪 linux 系统调用 只要在原本命令的前面,加上 strace 关键字,我们就可以看到原本要执行的这个命令到底做了什么,下面就是一个追踪 df 命令的例子: $ strace df -h execve...(No such file or directory) open("/lib/x86_64-linux-gnu/libc.so.6", O_RDONLY|O_CLOEXEC) = 3 read(3,...附录 -- 参考资料 https://www.tecmint.com/strace-commands-for-troubleshooting-and-debugging-linux/

3.6K10

运维利器之万能的 strace

按照 strace 官网的描述, strace 是一个可用于诊断、调试和教学的 Linux 用户空间跟踪器。我们用它来监控用户空间进程和内核的交互,比如系统调用、信号传递、进程状态变更等。...查下open系统调用的手册页 man 2 open 搜索 ENOENT 这个错误号 errno 的解释 ENOENT O_CREAT is not set and the named file does...这里说得比较清楚,因为我们例子中的 open 选项指定了 O_CREAT 选项,这里 errno 为 ENOENT 的原因是日志路径中某个部分不存在或者是一个失效的符号链接。...在Linux系统上,应用代码通过glibc库封装的函数,间接使用系统调用。 Linux 内核目前有300多个系统调用,详细的列表可以通过syscalls手册页查看。...3.性能分析 假如有个需求,统计Linux 4.5.4 版本内核中的代码行数(包含汇编和C代码)。这里提供两个Shell脚本实现: poor_script.sh: #!

2.5K10
领券