当我在我的Ubuntu上运行systemtap
时,我总是遇到这个失败:
lwtools# ./biolatency-nd.stp
Using a compile server.
Unable to find a suitable compile server. [man stap-server]
No servers online to select from.
Passes: via server failed. Try again with another '-v' option.
The kernel on your system requires modules to be signed for loading.
The module created by compiling your script must be signed by a systemtap compile-server. [man stap-server]
--use-server was automatically selected in order to request compilation by a compile-server.
Tip: /usr/share/doc/systemtap/README.Debian should help you get started.
答案 0 :(得分:0)
在启用SecureBoot的系统上,systemtap依赖于编译服务器(stap-server
服务)来对内核模块文件进行签名。没有这些签名,SecureBoot内核可能会完全拒绝这些模块。参见https://sourceware.org/systemtap/wiki/SecureBoot。
此Ubuntu内核可能以一种方式编译,即使在SecureBoot模式下,也可能会加载未签名的.ko文件。即便如此,设置完成后,具有安全启动功能的stap-server
仍然可以正常工作。