标签: debugging

如何调试 usbmon 中存在的 X11 缺少鼠标 ButtonRelease 事件?

几天前,当我同时释放两个按钮时,我的鼠标按钮释放开始有时无法被识别。因此,一个按钮的逻辑状态卡在“按下”状态,导致恼人的意外操作,直到我再次按下它来重置它。

可以重现监视鼠标事件的问题xev(输出有时不显示预期的按键释放事件)。我无法通过监视事件来重现该问题/sys/kernel/debug/usb/usbmon(输出始终与现实一致)。

因此,故障显然出在 X11 以下但 USB 以上的某个抽象软件组件上。

可能是什么原因造成的?我怎样才能进一步缩小范围?

debugging x11 mouse events

3
推荐指数
1
解决办法
2133
查看次数

为什么`echo bash | bash` 立即退出?

以下所有操作都是无效操作:

echo bash | bash
echo dash | dash
echo "bash -c bash" | bash
echo "dash -c dash" | dash
Run Code Online (Sandbox Code Playgroud)

为什么?例如,对于第一行,我假设它会创建一个 bash 实例,然后会创建另一个等待输入的 bash 实例。但它不等待输入;它退出。父 bash 也退出。所以两个 bash 实例都退出了,我又回到了我从中启动这些命令的任何 shell 实例。我哪里弄错了?

debugging shell-script

3
推荐指数
1
解决办法
231
查看次数

如何获取 glibc/libstdc++ 源并将其设置为供 gdb 查找?

我正在调试这个引发异常的程序。这使得我的调试器寻找一些源代码,例如../sysdeps/unix/sysv/linux/raise.c- 但未能找到它。

现在,我意识到我没有必要拥有这些资源,但我仍然希望它们在那里。

我正在开发 Devuan Chimaera GNU/Linux 系统。

对我来说,让这些源可用并可由 gdb 定位的最简单的方法是什么?

source debugging glibc gdb source-code

3
推荐指数
1
解决办法
2534
查看次数

如何读取和调试 SSH 详细模式?

假设我使用这个命令:

ssh -vvv user@server
Run Code Online (Sandbox Code Playgroud)

我得到与此类似的输出:

send packet: type 21
ssh_set_newkeys: mode 1
receive packet: type 6
SSH2_MSG_SERVICE_ACCEPT received
receive packet: type 51
Permission denied (publickey,password)
Run Code Online (Sandbox Code Playgroud)
  • 这些都是什么packet-types
  • 我在哪里可以阅读和了解它们?我总是用谷歌搜索类似的东西ssh packet type51,但一定有一个地方types列出了所有内容
  • 如果您知道如何理解这一点ssh verbose mode,您是从哪里学到的?


感谢您的帮助 :)

ssh debugging openssh sshd

3
推荐指数
1
解决办法
5456
查看次数

提交 Arch Linux 的错误报告

我来自 Ubuntu,当事情崩溃时,我可以收集相关信息并提交错误报告。在应用程序崩溃后,在 Arch Linux 中是否有一种简单或首选的方法来执行此操作?

debugging arch-linux

2
推荐指数
1
解决办法
111
查看次数

使用 gdb 学习高级调试技术的最佳资源有哪些?

我知道如何使用 gdb 的基础知识。但我想学习一些使用 gdb 的高级调试技术。什么是最好的资源——书籍、博客、教程——你们中的任何人都经常使用。我确实看过这个问题:在 xcode 中学习高级调试技术 GDB 的技巧或资源,但我正在寻找的是 GDB 等效于以下内容:

http://www.dumpanalysis.org/

http://WinDbg.info

内存转储分析选集

我明白这是主观问题。但是有很多本质上非常相似的问题(例如The Definitive C++ Book Guide and List),这里没有问这个问题。如果我错过了重复的内容,请将其放在评论中并关闭此问题。

linux debugging gdb

2
推荐指数
1
解决办法
4355
查看次数

如何在后台启动“gdbserver”?

当我在设备(如gdbserver :2345 myapp上运行 gdbserver 时,gdbserver 完全阻止终端。添加 & 符号&或按下都不会^z使其在后台运行。我还检查过:它在 Kubuntu 上也可以重现。

我确实需要使用 shell 命令,而且由于我不知道如何通过 gdbserver 执行这些命令,所以在它运行后我感觉自己瘫痪了。

shell debugging terminal background-process

2
推荐指数
1
解决办法
3178
查看次数

什么是`bash -x`

一位同事最近向我介绍bash -x了调试我的 bash 脚本而不走echo $foo路线。

$ bash -x hello-world.sh 
+ echo 'Hello World'
Hello World
Run Code Online (Sandbox Code Playgroud)

在内部——bash 如何做到这一点?我检查了man bash它(似乎没有?)-x在调用解释器时提到了这个标志。我主要是在寻找将在-x环境中调试和不调试的概述,或任何其他问题。

bash debugging

2
推荐指数
1
解决办法
6451
查看次数

谁在吃数据?沙格斯?

我正在尝试使用内置的 PHP linter 解析 PHP 文件的递归目录,其工作方式如下:

$ php -l good.php
No syntax errors detected in good.php

$ php -l bad.php
PHP Parse error:  syntax error, unexpected ''foo'' (T_CONSTANT_ENCAPSED_STRING), expecting ')' in bad.php on line 3
Errors parsing bad.php
Run Code Online (Sandbox Code Playgroud)

我们可以看到,通过 linting 的文件No syntax errors输出包含Errors parsing.

我看到我在当前目录中递归地有 12147 个 PHP 文件,但是 PHP linter 只输出七行:

$ find . -name \*.php -print0 | xargs -0 ls -l | wc -l
12147

$ find . -name \*.php -print0 | xargs -0 …
Run Code Online (Sandbox Code Playgroud)

shell bash debugging xargs php

2
推荐指数
1
解决办法
365
查看次数

什么工具可以使用正则表达式搜索“tail -f”输出?

我正在将一些调试信息转储到我tail -f用来监视的文本文件中。

有没有一种工具可以让我将这些tail -f数据通过管道传输到能够使用正则表达式命令搜索屏幕上的文本,例如在 vim 中搜索?

debugging tail regular-expression

1
推荐指数
1
解决办法
874
查看次数