歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux綜合 >> Linux資訊 >> Linux文化 >> printk的問題

printk的問題

日期:2017/2/27 12:12:35   编辑:Linux文化

為什麼編寫2.6.13內核模塊時用 int init_module() { printk("Hello!"); return 0; } 在控制台上沒有顯示出Hello!

>>> 此貼的回復 >> printk(KERN_ALERT "Hello!"); or printk(KERN_EMERG "Hello!");

>>> 此貼的回復 >> 看書仔細點呀, linux下有內核日志守護進程,專門把內河信息寫就日志裡,你可以打開日志文件看到,或者cat /proc/kmsg

>>> 此貼的回復 >> dmesg

tail -n 10 /var/log/messages

>>> 此貼的回復 >> nicelcp(廣州大學城)是對的,用你的那種形式,也應該放在引號外面的,還不行就看看你系統的日志級別,默認應該是3

>>> 此貼的回復 >> linux內核的日志有優先級的,控制台也有log_level。當printk的log_level低於控制台,就不會被打印出來。 執行echo 8 /proc/sys/kernel/printk將控制台級別設置為最高。 printk(KERN_EMERG"hello word"); 你試試看。

printk的log_level由高到低有: KERN_EMERG KERN_ALERT KERN_CRIT KERN_ERR KERN_WARNING KERN_NOTICE KERN_INFO KERN_DEBUG八個。 詳見

>>> 此貼的回復 >> 進字符界面運行就看到了,ssh和telnet連接都看到不到的

>>> 此貼的回復 >> sysctl -w kernel.printk="8 8 8 8" 執行你的程序試試


Copyright © Linux教程網 All Rights Reserved