我试图更好地理解Linux,特别是驱动程序注册等等,所以我试图跟踪当我插入模块和驱动程序时会发生什么。据我所理解,内核事件(如模块插入和删除)登录到/var/log/messages中,但根据模块的不同,我发现结果不一致。例如,如果加载usb存储模块,内核将进程记录到/var/log/messages,如下所示:
[root@lily frank]# modprobe -v usb-storage
insmod /lib/modules/2.6.32-573.26.1.el6.i686/kernel/drivers/usb/storage/usb-storage.ko
[root@lily dev]# cat /var/log/messages | tail
Jun 16 10:03:29 lily kernel: Initializing USB Mass Storage driver...
Jun 16 10:03:29 lily kernel: usbcore: registered new interface driver usb-storage
Jun 16 10:03:29 lily kernel: USB Mass Storage support registered.但是,当我尝试使用其他模块时,内核不会记录操作,如下所示的fcoe驱动程序:
[root@lily dev]# modprobe -v fcoe
insmod /lib/modules/2.6.32-573.26.1.el6.i686/kernel/drivers/scsi/scsi_tgt.ko
insmod /lib/modules/2.6.32-573.26.1.el6.i686/kernel/drivers/scsi/scsi_transport_fc.ko
insmod /lib/modules/2.6.32-573.26.1.el6.i686/kernel/drivers/scsi/libfc/libfc.ko
insmod /lib/modules/2.6.32-573.26.1.el6.i686/kernel/drivers/scsi/fcoe/libfcoe.ko
insmod /lib/modules/2.6.32-573.26.1.el6.i686/kernel/drivers/scsi/fcoe/fcoe.ko
[root@lily dev]# cat /var/log/messages | tail
Jun 16 10:03:29 lily kernel: Initializing USB Mass Storage driver...
Jun 16 10:03:29 lily kernel: usbcore: registered new interface driver usb-storage
Jun 16 10:03:29 lily kernel: USB Mass Storage support registered.如您所见,自从记录了usb存储模块的插入后,内核就没有在/var/ log /消息中记录任何内容。我发现它不会记录很多模块的插入。
谁能告诉我这种行为的原因吗?这和日志记录级别有关吗?
发布于 2016-06-16 18:18:59
内核不以集中的方式记录模块操作,每个模块可以记录它想要的任何内容(使用printk())。USB模块记录“初始化USB海量存储驱动程序”等;但是FCoE驱动程序只在错误发生时记录消息--如果所有加载都正确,它们将保持静默状态。许多模块都是这样工作的;趋势是尽量减少记录的消息数量,特别是当事情正常运行时。
https://unix.stackexchange.com/questions/290204
复制相似问题