当前位置: 首页 > 其他语言 > Delphi

Linux dmesg命令!让你了解电脑的秘密

时间:2023-11-26 22:51:40 Delphi

你有没有想过,当你每天打开电脑的时候,它都在做些什么呢?你有没有想过,你的电脑有没有什么秘密,它不想让你知道呢?你有没有想过,你能不能和你的电脑交流,了解它的心情和状态呢?


如果你是一个Linux用户,那么我有一个好消息要告诉你:你可以通过一个简单的命令,就能看到你的电脑在开机时的所有信息,包括它的硬件配置,内核版本,驱动加载,系统启动,以及可能出现的错误和警告。这个命令就是dmesg,它的全称是display message,意思是显示信息。


dmesg命令是一个非常有用的工具,它可以让你了解你的电脑的运行情况,帮助你诊断和解决问题,优化和调整系统,甚至发现一些有趣的事情。你可能会惊讶地发现,你的电脑其实有很多话要对你说,只是你平时没有注意而已。


那么,如何使用dmesg命令呢?其实很简单,你只需要在终端中输入dmesg,就可以看到你的电脑在开机时的所有信息,就像这样:


这些信息是什么意思呢?让我们一起来看看吧。


首先,你可以看到第一行的信息是:


这一行告诉你,你的电脑使用的是Linux操作系统,具体的版本是5.10.0-8-amd64,这是一个Debian发行版,它是由debian-kernel@lists.debian.org编译的,使用的编译器是gcc-10,链接器是GNU ld,编译时间是2021年8月3日。这些信息可以让你了解你的电脑的系统版本和更新情况,如果你想升级或者更换系统,你可以参考这些信息。


接下来,你可以看到一些以[    0.000000]开头的信息,这些信息是关于你的电脑的硬件配置的,比如CPU,内存,BIOS,主板,显卡,声卡,网卡,硬盘,键盘,鼠标等等。这些信息可以让你了解你的电脑的性能和兼容性,如果你想升级或者更换硬件,你可以参考这些信息。


然后,你可以看到一些以[    0.000000]以外的数字开头的信息,这些信息是关于你的电脑的内核模块和驱动的加载的,比如usb,scsi,ext4,nvidia,alsa,ethernet等等。这些信息可以让你了解你的电脑的功能和支持的设备,如果你遇到某些设备无法正常工作或者识别的问题,你可以参考这些信息。


最后,你可以看到一些以[    OK  ]或者[FAILED]开头的信息,这些信息是关于你的电脑的系统服务和进程的启动的,比如networking,cron,ssh,lightdm,gnome等等。这些信息可以让你了解你的电脑的运行状态和安全性,如果你遇到某些服务无法正常启动或者停止的问题,你可以参考这些信息。


当然,这些信息并不是全部,你还可以看到一些其他的信息,比如时间,温度,电压,频率,中断,错误,警告等等。这些信息可以让你了解你的电脑的细节和异常,如果你想深入了解你的电脑的工作原理和原因,你可以参考这些信息。


你可能会觉得,这些信息太多太复杂了,你怎么能看得懂呢?其实,你不需要看懂所有的信息,你只需要关注你感兴趣或者有问题的部分就可以了。而且,你可以使用dmesg命令的一些参数,来过滤和控制你想看的信息,比如:


1.dmesg -c 显示信息后,清除ring buffer中的内容。ring buffer是一个循环的缓冲区,它用来存储开机信息,它的大小是8196字节,当它满了之后,就会覆盖旧的信息。如果你想清空ring buffer,以便查看新的信息,你可以使用这个参数。


2.dmesg -s <缓冲区大小> 预设置为8196,刚好等于ring buffer的大小。如果你想改变ring buffer的大小,你可以使用这个参数,但是你需要注意,这个参数只能在root用户下使用,而且你需要重新启动电脑才能生效。


3.dmesg -n <层级> 设置记录信息的层级。开机信息有不同的层级,从0到7,分别代表不同的重要性,比如0是紧急,1是警告,2是错误,3是通知,4是信息,5是调试,6是详细,7是全部。默认的层级是7,也就是显示所有的信息。如果你想只显示某些层级的信息,你可以使用这个参数,比如dmesg -n 3,就只显示层级为3以下的信息,也就是紧急,警告,错误和通知。


除了这些参数,你还可以使用一些其他的命令,来配合dmesg命令,来更好地查看和分析开机信息,比如:


1.dmesg | less 分页显示开机信息,你可以使用上下左右键来翻页,按q键退出。


2.dmesg | grep <关键词> 搜索开机信息中包含关键词的部分,比如dmesg | grep usb,就可以显示所有和usb相关的信息。


3.dmesg | tail -n <行数> 显示开机信息的最后几行,比如dmesg | tail -n 10,就可以显示最后10行的信息。


4.dmesg > <文件名> 将开机信息保存到一个文件中,比如dmesg > boot.log,就可以将开机信息保存到boot.log文件中,方便以后查看。


你可能还会问,为什么要使用dmesg命令,而不是直接查看/var/log目录中的dmesg文件呢?这个文件不是也保存了开机信息吗?其实,这个文件并不是实时更新的,它只是在每次开机的时候,将ring buffer中的内容复制到这个文件中,所以,如果你想查看最新的开机信息,你还是要使用dmesg命令来查看实时的开机信息。


dmesg命令是一个非常强大和有趣的命令,它可以让你了解你的电脑的秘密,帮助你解决问题,优化系统,甚至发现一些惊喜。你可以尝试使用dmesg命令,来和你的电脑交流,看看它会对你说些什么吧。