位置: 编程技术 - 正文

Linux中获取某个进程的系统调用以及参数(故障排查案例)

编辑:rootadmin

当一个程序发生故障时,有时候想通过了解该进程正在执行的系统调用来排查问题。通常可以用 strace 来跟踪。但是当进程已经处于 D 状态(uninterruptible sleep)时,strace 也帮不上忙。这时候可以通过来获取当前的系统调用以及参数。这里用最近排查的一个问题为例。碰到的问题是,发现一台服务器在执行 pvcreate 创建物理卷的时候卡死,进程状态为 D

D 状态实际是在等待系统调用返回。那么来看看究竟在等待什么系统调用

第一个数字是系统调用号,后面是参数。不同的系统调用所需的参数个数不同。这里的字段数是按最大参数数量来的,所以不一定每个参数字段都有价值。那么怎么知道系统调用号对应哪个系统调用呢?在头文件 /usr/include/asm/unistd_.h 中都有定义。也可以用个小脚本来快速查找:

对于不同的系统调用的参数,可以通过 man 2 <系统调用名> 查阅。如 man 2 read。对刚才那个例子来说,0 就对应了 read 调用。而 read 调用的第一个参数是文件描述符。

之后用 lsof 找到 7 对应的是什么文件

结果发现是个 device mapper 的设备文件。最后顺藤摸瓜,发现这个文件是 multipathd 创建的。而系统应当使用的是存储厂商提供的多路径软件。问题是由于同时开启了 multipathd 造成冲突导致的。

/proc/<PID>/syscall 对排查 D 状态进程很有用。不过在 2.6. 内核上并不支持,具体从哪个内核版本开始有这个功能,还没查到。不过至少从在 2.6. 以上版本都是支持的。

推荐整理分享Linux中获取某个进程的系统调用以及参数(故障排查案例),希望有所帮助,仅作参考,欢迎阅读内容。

Linux中获取某个进程的系统调用以及参数(故障排查案例)

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

在Shell中分割字符串的例子 比如,要分割test=aaa,bbb,cccc,dddd,可以这样arr=$(echo$test|tr",""n")还可以这样OLD_IFS=$IFSIFS=','arr=$testIFS=$OLD_IFS然后用forxin$arr;doecho$xdone看看效果或者更直接一

一个Linux系统安全设置的Shell脚本的分享(适用CentOS) 我们将常用的系统安全配置制作为一个shell脚本,只需要在服务器上运行这个shell脚本即可完成安全设置。linux的系统安全设置Shell脚本是第二次更新,已

简单的Linux查找后门思路和shell脚本分享 每个进程都会有一个PID,而每一个PID都会在/proc目录下有一个相应的目录,这是linux(当前内核2.6)系统的实现。一般后门程序,在ps等进程查看工具里

标签: Linux中获取某个进程的系统调用以及参数(故障排查案例)

本文链接地址:https://www.jiuchutong.com/biancheng/374865.html 转载请保留说明!

上一篇:Shell脚本获取进程的运行时间(shell脚本获取进程pid)

下一篇:一个Linux系统安全设置的Shell脚本的分享(适用CentOS)(安装两个linux)

  • 租赁合同印花税率
  • 贸易公司经营范围有限制吗
  • 公司单位性质怎样填写
  • 销售商品,提供服务以及从事其他经营活动
  • 个人独资企业处罚听证的标准
  • 注销了出口退税怎么办
  • 摊销直线法会计分录怎么写?
  • 未交增值税金额公式
  • 员工对公司造成损失的,可以起诉吗
  • 银行利息收入可以开增值税专用发票
  • 其他应收款包括的内容
  • 个人土地征收款协议模板
  • 税前扣除的固定资产
  • 涉嫌虚开发票的几种情况
  • 土地使用权摊销账务处理
  • 怎么使用Windows安装器安装Windows10
  • RPDFLchr.exe - RPDFLchr是什么进程 有什么用
  • rtvscn95.exe - rtvscn95是什么进程 有什么用
  • 摊余成本计量的金融资产账面价值
  • linux标准文件和链接文件
  • 增值税专用发票有几联?
  • 股票交易税怎么算出来的
  • 404 not found意思详细介绍
  • 蚊子叮咬怎么办手抄报
  • php如何防止xss攻击
  • 购买增值税税控系统专用设备账务处理
  • 业务招待费财务管理制度
  • framework4.0怎么打开
  • pytorch ln
  • yum命令详解
  • 营业税金及附加税率
  • 预付装修款账务处理
  • 接待客人发生的事故
  • mongodb性能优化方案有哪些?
  • 异地工程税
  • 发票管理办法是法律吗
  • 处置长期股权投资其他综合收益结转
  • 银行代发工资必须要本行的卡吗
  • 在正确使用和正常维护的条件下
  • 专项储备计提和使用理解
  • mysql怎样
  • 可供出售金融资产的会计处理
  • 收购固定资产账务处理
  • 公对公转账在手机上怎么操作
  • 资金帐薄印花税是指什么
  • 支付商业承兑汇票怎么做
  • 单位交社保怎么取消居民医保
  • 什么是发票抬头怎么填
  • 公司购买的车辆
  • 游戏卡怎么打开
  • Win7旗舰版系统文件名称
  • centos账号密码
  • ubuntu安装sz
  • avc用什么打开
  • linux virtio
  • nmeo.exe是什么
  • 蓝屏错误疑难解答win7
  • linux apt apt-get
  • win7纯净版系统多大
  • w7开机界面
  • Android:ValueAnimator的使用举例
  • ie按钮不显示
  • node.js入门教程
  • Activity 的四种启动模式
  • shell脚本实现自动部署
  • linux中shell脚本实验总结
  • JQuery.validationEngine表单验证插件(推荐)
  • 关于javascript中数组的说法不正确
  • python装饰器与递归算法详解
  • 置顶怎么折叠起来
  • 怎样编?
  • pytho命名规则
  • javascript对象定义
  • jquery中on
  • Android开发使用的官方IDE是
  • 中国税务徽标
  • 怎么打印纳税申报清单
  • 广州市天河税务局电话号码
  • 河北省电子税务局app下载
  • 简述绩效信息的收集原则
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设