我想在Linux中调试命令行。
$ route add -net 192.168.3.0 netmask 255.255.255.0 gw 192.168.3.10
使用上面的命令行,我想知道Linux内核如何处理它。我正在做关于路由表的项目,我将用这个演示。运行此命令时,内核执行内核调用的函数(即:lookup(),fib_tale_insert()...),以及在调试时如何显示命令值。
我正在尝试" strace"但我不能。你能救我吗?
答案 0 :(得分:1)
首先,您必须在启用调试信息的情况下重新编译内核,有关详细信息,请参阅这些页面:
https://serverfault.com/questions/251134/how-to-compile-the-kernel-with-debug-symbols
和
https://www.kernel.org/pub/linux/kernel/people/jwessel/kdb/CompilingAKernel.html
(简而言之,配置上需要CONFIG_DEBUG_INFO = y。)
你也可以找到一些启用了调试的已编译内核,但这取决于你正在使用的发行版。