首页/系统/Linux 运维命令速查/场景:看进程卡在哪个内核点
本包目录(613 条)
文件与目录76 条文本处理77 条网络命令82 条
进程与作业69 条
磁盘与文件系统51 条用户与权限44 条日志与排查40 条systemd 与服务42 条包管理34 条性能与监控48 条定时任务与计划50 条

场景:看进程卡在哪个内核点

没有 strace 权限/不想打扰进程时:wchan 一列直接告诉你它在等什么(IO、锁、网络),排查 D 状态与卡顿的轻量手段。

Linux 运维命令速查系统更新于 2026-10-12
场景进程状态异常但不想 attach
组合ps wchan + /proc/PID/stack

轻量查看

轻量查看
ps -eo pid,stat,wchan:24,cmd | grep -E 'D|app-server' | head
cat /proc/1234/wchan; echo            # 内核函数名
cat /proc/1234/stack 2>/dev/null | head   # 内核栈(权限不足则空)

常见含义

常见含义
# rpc_wait_bit_killable / nfs_* → 网络文件系统卡住
# io_schedule / blk_mq_* → 磁盘 IO 等待
# futex_wait → 用户态锁/条件变量等待
# ep_poll → 事件循环空闲

易错点

  • wchan 显示的是采样瞬间:微秒级等待抓不到,需要多采几次
  • 内核版本影响函数名(各文件系统/驱动不同):含义结合上下文判断,别死记字符串

数据来源与参考

  • man 5 proc
  • man 1 ps(procps-ng 手册)

相关工具

​‌‌​​‌​​​‌‌​‌‌‌‌​‌‌​​​‌‌​‌‌‌​​‌‌​​‌​‌‌‌​​‌‌‌​​​‌​‌‌​‌​​‌​‌‌‌​​​‌​‌‌​‌​​‌​‌‌​​​‌‌​‌‌‌​‌​​​‌‌​‌‌‌‌​​‌​‌‌‌​​‌‌​​​‌‌​‌‌​‌‌‌‌​‌‌​‌‌​‌