
¿Es rsyslog
solo una capa de abstracción encima del búfer de anillo del núcleo? ¿O es el búfer de anillo del núcleo su propia entidad y rsyslog
la interacción es como la de cualquier otra "aplicación"?
Respuesta1
Aunque varios documentos (incluido man dmesg
) se refieren a él como "el búfer de anillo del núcleo", podría ser mejor referirse a él como el búfer de registro del núcleo, ya que "búfer de anillo" es un término genérico y creo que el núcleo también usa el búfer de anillo. buffers para varias cosas completamente ajenas. El "búfer printk" también es apropiado, después de que la función de espacio del núcleo se utilice para escribir en él.
De todos modos, reside en el espacio del kernel y se proporciona una interfaz de lectura a través /proc/kmsg
de /dev/kmsg
. Entonces si como root vas:
echo "Hello Kernel!" > /dev/ksmg
Lo verá si lo hace entonces cat /dev/ksmg
(sin embargo, probablemente no verá que esto aparezca en ningún registro; consulte el comentario de Matthew Phipps a continuación para conocer una posible razón). Esta es una salida sin procesar y no se parece exactamente a lo que ve dmesg
en sus archivos de registro. Hay un pocoun poco de documentaciónsobre esto proporcionado con la fuente del kernel. Se recomienda no leer desde /proc/kmsg
(no es lo mismo que ) si se está ejecutando (r)syslog./dev/ksmg
Rsyslog es uno de variosregistro del sistemaImplementaciones comúnmente utilizadas en Linux. Estas son aplicaciones de usuario que obtienen mensajes del kernel /proc/ksmg
y mensajes de otros procesos de usuario a través de un socket, /dev/log
.