Par défaut les logs du kernel ne sont accessibles qu'aux administrateurs de la machine, il faut donc soit passer par le compte root ou par sudo pour accéder à leur lecture, ce qui est confirmé par la sortie de cette commande :
# sysctl kernel.dmesg_restrict kernel.dmesg_restrict = 1
Et si un user veut y accéder :
$ dmesg dmesg: échec de lecture du tampon de noyau: Opération non permise
La commande suivante permettra aux users de lancer la dmesg jusque au prochaine reboot de la machine.
# sysctl -w kernel.dmesg_restrict=0 kernel.dmesg_restrict = 0
Si entre temps, vous souhaitez ne plus laisser les logs du kernel à disposition des users,
# sysctl -w kernel.dmesg_restrict=1 kernel.dmesg_restrict = 1
Si vous désirez rendre cette situation permanente, alors il suffit d'entrée cette valeur à /etc/sysctl.conf
# echo 'kernel.dmesg_restrict=1' | tee -a /etc/sysctl.conf
ou si sudo
$ echo 'kernel.dmesg_restrict=1' | sudo tee -a /etc/sysctl.conf
Si votre console vous sort des logs en noir et blanc, utilser cette option
$ dmesg -H --color
Si vous ne souhaitez avoir que les logs du kernel
$ dmesg --kernel
Que ceux de l'userspace
$ dmesg --userspace