我们有硬盘的问题,使所有的挂载点只能读取。 dmesg输出:
end_request: I/O error, dev sda, sector 15574609 sd 0:0:0:0: SCSI error: return code = 0x00040000
我们要分析一个正在运行的程序,因为当他不能写入文件系统时它应该死掉。 所以,我们想用strace来debugging系统调用。
但strace的输出是:
Bus error
似乎一些资源不可用的机器或一些低级别的错误。 在系统pipe理员修复磁盘之前,我被困在如何分析程序的问题上。
您的磁盘(可能实际上几乎可以肯定)正在死亡。 这听起来像你的系统pipe理员已经得出这个结论。
准备葬礼,穿上黑色的备份和执行恢复testing。
回复:巴士的错误 – 这个问题本应该立即致命。 这是相当于“WTF?”的信号,这是不可能的! ( 看到这个问题 – 他们正在谈论内存,但同样的事情可能会发生在磁盘或任何可寻址的组件)。 我不记得你是否可以捕获SIGBUS,但是如果你的程序是这样做的话,它不应该。
关于如何跟踪/debugging软件的更多问题应该通过StackOverflow或程序员进行询问。
听起来就像你的系统甚至无法加载执行跟踪所需的实用程序/库。
这里正确的是: