我什么时候应该继续调试内核模块中的符号?

我什么时候应该继续调试内核模块中的符号?

安装内核模块时,我可以选择使用删除调试符号INSTALL_MOD_STRIP=1。这可以节省大量磁盘空间。

它也节省内存吗?为什么要将调试符号保留在内核模块中?

答案1

调试符号只是向可执行文件添加额外的信息,这有助于运行 GDB 等调试器。它允许调试器从可执行文件重新创建源代码,以向您显示运行时发生段错误等情况的位置。

如果您正在测试/黑客攻击/使某些东西与模块互操作,那么您需要它们。在正常操作期间,它们只会占用空间,并可能对生产机器造成安全风险。例如,如果有人以用户权限侵入您的系统,他们可以使用调试器来查找当前正在运行的模块中的弱点,以获得 root 访问权限。

删除它们也将节省少量空间。

相关内容