美文网首页
strace命令

strace命令

作者: tracy_668 | 来源:发表于2021-07-18 19:37 被阅读0次

[TOC]

strace 跟踪进程中的系统调用

strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进程需要访问硬件设备(比如读取磁盘文件,接收网络数据等等)时,必须由用户态模式切换至内核态模式,通过系统调用访问硬件设备。strace可以跟踪到一个进程产生的系统调用,包括参数,返回值,执行消耗的时间。

6.1. 输出参数含义

每一行都是一条系统调用,等号左边是系统调用的函数名及其参数,右边是该调用的返回值。 strace 显示这些调用的参数并返回符号形式的值。strace 从内核接收信息,而且不需要以任何特殊的方式来构建内核。

strace cat /dev/null
execve("/bin/cat", ["cat", "/dev/null"], [/* 22 vars */]) = 0
brk(0)                                  = 0xab1000
access("/etc/ld.so.nohwcap", F_OK)      = -1 ENOENT (No such file or directory)
mmap(NULL, 8192, PROT_READ|PROT_WRITE, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x7f29379a7000
access("/etc/ld.so.preload", R_OK)      = -1 ENOENT (No such file or directory)
...

实际命令

strace -p 98761 -f -s 65536 2>&1 |grep -i xxx

-f 跟踪由fork调用所产生的子进程.

-p pid
跟踪指定的进程pid.
-s strsize
指定输出的字符串的最大长度.默认为32.文件名一直全部输出.

相关文章

  • strace命令

  • strace 命令

    strace常用来跟踪进程执行时的系统调用和所接收的信号。 普通函数调用需要耗费的时间 一次系统调用需要耗费的时间...

  • strace命令

    [TOC] strace 跟踪进程中的系统调用 strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Li...

  • 使用strace命令

    strace命令是一个集诊断、调试、统计与一体的工具,我们可以使用strace对应用的系统调用和信号传递的跟踪结果...

  • Linux strace命令

    简介 strace常用来跟踪进程执行时的系统调用和所接收的信号。 在Linux世界,进程不能直接访问硬件设备,当进...

  • 使用strace排查sqlplus登录缓慢问题

    strace安装 strace命令使用 在日志文件中,可以根据时间排查到卡住的地方 往前找几行可以看到是连接某个I...

  • 【CentOS】CentOS7中修改创建账号时系统默认UID、G

    strace命令详解 https://www.cnblogs.com/machangwei-8/p/1038888...

  • Strace 调试 PHP

    strace 命令是一个集诊断、调试、统计与一体的工具,我们可以使用 strace 对应用的系统调用和信号传递的跟...

  • ls等io操作卡死处理办法

    strace 命令跟踪,定位问题。首先使用命令跟踪, 查看执行到哪一步卡死: 可以看到,命令执行到 /mnt这个目...

  • strace 命令学习笔记

    之前在一些关于 BackDoor 的文章中见到过通过 strace 来截获 ssh 密码 https://jvns...

网友评论

      本文标题:strace命令

      本文链接:https://www.haomeiwen.com/subject/krbapltx.html