如何查看系统日志

news/2024/11/17 10:38:29/

1、dmesg简介

‘dmesg’命令设备故障的诊断是非常重要的。在‘dmesg’命令的帮助下进行硬件的连接或断开连接操作时,我们可以看到硬件的检测或者断开连接的信息。‘dmesg’命令在多数基于LinuxUnix的操作系统中都可以使用。在引导过程中以及系统运行时,内核会将各种消息写入内核环形缓冲区。这些消息包括有关系统操作的各种信息。内核环形缓冲区是物理内存的一部分,用于保存内核的日志消息。它具有固定的大小,这意味着一旦缓冲区已满,较旧的日志记录将被覆盖。dmesg 命令行实用程序用于在 Linux 和其他类似 Unix 的操作系统中打印和控制内核环形缓冲区。对于检查内核启动消息和调试与硬件相关的问题很有用。

2、demsg日志

内核参数 kernel.dmesg_restrict 指定非特权用户是否可以使用 dmesg 查看来自内核日志缓冲区的消息。要删除限制,请将其设置为零:

[root@VM_0_11_centos ~]# sysctl -a | grep dmesg
kernel.dmesg_restrict = 0

dmesg 从 /proc/kmsg 虚拟文件中读取内核生成的消息。该文件提供了到内核环形缓冲区的接口,并且只能由一个进程打开。如果系统上正在运行 syslog 进程,并且你尝试使用cat 或 less 命令读取文件,则命令将挂起。syslog 守护程序将内核消息转储到 /var/log/dmesg,因此你也可以使用该日志文件:

[root@VM_0_11_centos ~]# systemctl -a | grep dmesgrhel-dmesg.service                                                                  loaded    active   exited    Dump dmesg to /var/log/dmesg

3、命令使用

1)格式化输出

-H 更容易阅读的方式
[root@VM_0_11_centos ~]# dmesg -H 
[Dec13 23:54] Initializing cgroup subsys cpuset
[  +0.000000] Initializing cgroup subsys cpu
[  +0.000000] Initializing cgroup subsys cpuacct
[  +0.000000] Linux version 3.10.0-957.21.3.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1
[  +0.000000] Command line: BOOT_IMAGE=/boot/vmlinuz-3.10.0-957.21.3.el7.x86_64 root=UUID=4b499d76-769a-40a0-93dc-4a31a59add28 ro crashkernel=128M co
[  +0.000000] e820: BIOS-provided physical RAM map:
带有时间戳的格式化输出
[root@VM_0_11_centos ~]# dmesg -T
[Fri Dec 13 23:54:22 2019] Initializing cgroup subsys cpuset
[Fri Dec 13 23:54:22 2019] Initializing cgroup subsys cpu
[Fri Dec 13 23:54:22 2019] Initializing cgroup subsys cpuacct
[Fri Dec 13 23:54:22 2019] Linux version 3.10.0-957.21.3.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Tue Jun 18 16:35:19 UTC 2019
[Fri Dec 13 23:54:22 2019] Command line: BOOT_IMAGE=/boot/vmlinuz-3.10.0-957.21.3.el7.x86_64 root=UUID=4b499d76-769a-40a0-93dc-4a31a59add28 ro crashkernel=128M console=ttyS0 console=tty0 panic=5 net.ifnames=0 biosdevname=0
[Fri Dec 13 23:54:22 2019] e820: BIOS-provided physical RAM map:
[Fri Dec 13 23:54:22 2019] BIOS-e820: [mem 0x0000000000000000-0x000000000009fbff] usable
[Fri Dec 13 23:54:22 2019] BIOS-e820: [mem 0x000000000009fc00-0x000000000009ffff] reserved
[Fri Dec 13 23:54:22 2019] BIOS-e820: [mem 0x00000000000f0000-0x00000000000fffff] reserved
[Fri Dec 13 23:54:22 2019] BIOS-e820: [mem 0x0000000000100000-0x000000007ffdbfff] usable
[Fri Dec 13 23:54:22 2019] BIOS-e820: [mem 0x000000007ffdc000-0x000000007fffffff] reserved
[Fri Dec 13 23:54:22 2019] BIOS-e820: [mem 0x00000000feffc000-0x00000000feffffff] reserved

2)过滤相关信息

[root@VM_0_11_centos ~]# dmesg -T | grep -i usb
[Fri Dec 13 23:54:23 2019] ACPI: bus type USB registered
[Fri Dec 13 23:54:23 2019] usbcore: registered new interface driver usbfs
[Fri Dec 13 23:54:23 2019] usbcore: registered new interface driver hub
[Fri Dec 13 23:54:23 2019] usbcore: registered new device driver usb
[Fri Dec 13 23:54:23 2019] ehci_hcd: USB 2.0 'Enhanced' Host Controller (EHCI) Driver
[Fri Dec 13 23:54:23 2019] ohci_hcd: USB 1.1 'Open' Host Controller (OHCI) Driver
[Fri Dec 13 23:54:23 2019] uhci_hcd: USB Universal Host Controller Interface driver
[Fri Dec 13 23:54:23 2019] uhci_hcd 0000:00:01.2: new USB bus registered, assigned bus number 1
[Fri Dec 13 23:54:23 2019] usb usb1: New USB device found, idVendor=1d6b, idProduct=0001
[Fri Dec 13 23:54:23 2019] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1

3)实时输出

方法一:
[root@VM_0_11_centos ~]# dmesg -w
[    0.000000] Initializing cgroup subsys cpuset
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.0-957.21.3.el7.x86_64 (mockbuild@kbuilder.bsys.centos.org) (gcc version 4.8.5 20150623 (Red Hat 4.8.5-36) (GCC) ) #1 SMP Tue Jun 18 16:35:19 UTC 2019
方法二:[root@VM_0_11_centos ~]# tail -f /var/log/dmesg
[    2.996605] piix4_smbus 0000:00:01.3: SMBus Host Controller at 0x700, revision 0
[    3.023032] input: PC Speaker as /devices/platform/pcspkr/input/input4
[    3.050660] sr 0:0:1:0: Attached scsi generic sg0 type 5
[    3.060690] cryptd: max_cpu_qlen set to 1000
[    3.128300] AVX2 version of gcm_enc/dec engaged.

4)清空环形缓冲区

[root@VM_0_11_centos ~]# dmesg -C
[root@VM_0_11_centos ~]# dmesg

 

 

 

 

 


http://www.ppmy.cn/news/363444.html

相关文章

linux系统日志的查看和采集

我们首先要明白,日志是程序本身产生的,那么日志储存在哪里,该如何查看呢? 一、查看日志 先来了解以下日志的类型和日志的级别。 1.日志的类型 auth ##pam产生的日志 suthpriv …

Linux 系统日志分析与管理

Linux系统内核和许多程序会产生各种错误信息、警告信息和其他的提示信息,这些信息对管理员了解系统的运行状态是非常有用的,所以应该把它们写到日志文件中去,完成这个过程的程序就是syslog,syslog可以根据日志的类别和优先级将日志保存到不同的文件中. 关于Linux常见的日志文件…

查看Windows系统日志

我的计算机-右键-管理

系统日志清理

windows下清理 winr eventvwr 两种方法: 1 、meterpreter> clearev 2、meterpreter > shell C:\Windows/system32>del %WINDIR%\*.log /a/s/q/f linux清理 history -c 使系统不再保存历史命令 vi /etc/profile 找到 HISTSIZE这个值…

系统操作日志

1、 我想实现: 我想设置一个JSP程序,只要有用户登陆网站(管理员或非法的),不管登录成功或失败都把登陆的用户名(登陆信息,执行页面)记录到数据库中,还有登陆后台后对网站的修改也要做个记录,比如修改过新闻,删除留言,修改过网站配置等都有记录,不要求可恢复,能记录…

系统日志文件

系统日志默认保存在/var/log目录下 messages: 包括整体系统信息,其中也包含系统启动期间的日志。此外,mail,cron,daemon,kern和auth等内容也记录在var/log/messages日志中。dmesg: 包含内核缓冲…

Win10查看系统日志

最简单的方法右键开始,点击事件查看器。 效果如下。 之后研究一下系统日志的格式。 Windows事件日志中共有五种事件类型,所有的事件必须拥有五种事件类型中的一种,且只可以有一种。五种事件类型分为: 信息(Informa…

系统日志开关

1.系统native日志打印不出来需要添加下面标签 在c文件最开始加,即在#include之前: #define LOG_NDEBUG 0 #define LOG_TAG "SoundPool" 或者 #ifdef LOG_TAG #undef LOG_TAG #define LOG_TAG "SoundPool" #endif #ifdef LOG_NDEBU…