![从用户空间向 printk 缓冲区发送消息--不起作用](https://linux22.com/image/1043824/%E4%BB%8E%E7%94%A8%E6%88%B7%E7%A9%BA%E9%97%B4%E5%90%91%20printk%20%E7%BC%93%E5%86%B2%E5%8C%BA%E5%8F%91%E9%80%81%E6%B6%88%E6%81%AF--%E4%B8%8D%E8%B5%B7%E4%BD%9C%E7%94%A8.png)
实际上,我希望驱动程序消息能够到达我的终端以进行调试。所以我只是尝试通过以下链接进行检查。
我引用了以下链接:--
http://elinux.org/Debugging_by_printing
我在 vmplayer 虚拟机中使用 ubuntu。Ubuntu 在虚拟机内以终端模式运行。我试图向内核 printk 缓冲区发送一些消息,但 echo 命令失败。
klog demon 也正在运行,我通过以下命令确认。
ps aux | grep klogd
proc printk 条目上的 Cat 命令:---
# cat /proc/sys/kernel/printk
4 4 1 7
运行 echo 命令:---
#sudo echo "<1>Writing critical printk messages from userspace" >/dev/kmsg
但我无法在终端上收到消息。运行上述命令时,我收到以下错误:--
-bash: /dev/kmsg: Permission denied
请建议如何在控制台上打印?
我的实际要求是...将驱动程序中的 printk() 消息直接发送到控制台。我只是从控制台测试低优先级消息是否到达控制台。