工具及命令1.ssh如果没有连接串口的条件,首先可以通过ssh登录到系统。如果无法登录,首先排查是否没有预设ip或者是ssh服务已经崩溃。 2.top命令使用top命令可实时查看进程占cpu以及内存情况,实时刷新比较直观。但是同样也有弊端,当进程较多,资源表换较快的时候,进程会跳来跳去,不方便确认此时可以用下方的工具。 3.ps命令可以使用ps -aux查看哪些进程占用cpu或者内存过高,如果有的进程值看起来不太正常,可以和其他正常的板子进行对比,如果确实是进程异常占用cpu或者内存比例过高,并且始终不下降,基本可以确定是该进程卡死了,如果急切需要恢复,可以使用kill -9杀死该进程。 还可以继续向上追查,如果该进程可能是某个服务的子进程,使用ps -ef | grep 进程ID,这样可以显示出该进程对应的父进程。 4.strace命令strcae -p 进程ID 跟踪进程执行时的系统调用和所接收的信号(即它跟踪到一个进程产生的系统调用,包括参数、返回值、执行消耗的时间,可以看到卡在哪个位置。 查看进程文件描述符目录:查看3进行的是socket操作,也就是卡在通信。 5.netstat命令使用netstat -anoutp |grep 进程ID 查看通信的目标是什么。 6.journalctl命令Systemd是Linux发行版的初始化系统,负责启动系统后的所有服务,并监视它们在系统运行期间的状态。Journal是Systemd的一部分,主要负责收集和存储日志数据。 journalctl是Journal的主要接口,提供丰富的功能来检索和显示日志条目。它能从磁盘上的二进制文件或者其他传输目标(如syslog)获取日志。
具体使用方法参考以下链接: |
|小黑屋| 飞凌嵌入式 ( 冀ICP备12004394号-1 )
GMT+8, 2024-11-22 18:29
Powered by Discuz! X3.4
© 2001-2013 Comsenz Inc.