如何从linux内核模块获取主机名?

时间:2013-08-31 13:04:31

标签: linux-kernel kernel-module kernel

我认为标题是可以理解的。我可以读取procfs文件/ proc / sys / kernel / hostname,但从内核空间读取文件是个坏主意。还有别的吗?

1 个答案:

答案 0 :(得分:1)

uname man page说:

  

字段nodename没有意义:它在某个未定义的网络中提供了当前计算机的名称,但通常计算机位于多个网络中并且具有多个名称。而且,内核无法知道这些事情,所以必须告诉它在这里要回答什么。

如果您确实认为需要主机名,请使用以下代码:

#include <linux/utsname.h>

printk("hostname: %s\n", utsname()->nodename);