20.3. 回溯虚拟机进程
当与虚拟机(VM)相关的进程出现故障时,您可以使用 gstack 命令和进程标识符(PID)来生成一个故障进程的执行堆栈跟踪。如果该进程是线程组的一部分,那么也会跟踪所有线程。
先决条件
确保
GDB软件包已安装。有关安装
GDB和可用组件的详情,请参阅安装 GNU Debugger。请确定您知道要追踪进程的 PID。
您可以使用
pgrep命令,后跟进程的名称来查找 PID。例如:# pgrep libvirt 22014 22025
流程
使用
gstack工具,后跟您要回溯的进程的 PID。例如,以下命令回溯追踪 PID 为 22014 的
libvirt进程。# gstack 22014 Thread 3 (Thread 0x7f33edaf7700 (LWP 22017)): #0 0x00007f33f81aef21 in poll () from /lib64/libc.so.6 #1 0x00007f33f89059b6 in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0 #2 0x00007f33f8905d72 in g_main_loop_run () from /lib64/libglib-2.0.so.0 ...有关使用
gstack的更多信息,请参阅您系统上的gstack手册页。