读取系统调用冻结

读取系统调用冻结

我有一个 VPS,有时会突然卡住。最近我发现运行 ps aux 时 ssh 会话会卡住。运行后strace ps aux我得到了以下信息。

stat("/proc/1573", {st_mode=S_IFDIR|0555, st_size=0, ...}) = 0
openat(AT_FDCWD, "/proc/1573/stat", O_RDONLY) = 6
read(6, "1573 (sshd) D 506 1573 1573 0 -1"..., 2048) = 335
close(6)                                = 0
openat(AT_FDCWD, "/proc/1573/status", O_RDONLY) = 6
read(6, "Name:\tsshd\nUmask:\t0022\nState:\tD "..., 2048) = 1287
close(6)                                = 0
openat(AT_FDCWD, "/proc/1573/cmdline", O_RDONLY) = 6
read(6,

似乎 ps aux 在最后一个 read 系统调用中冻结,看起来像是一个 sshd 进程。我运行cat /proc/1573/cmdline也可以重现此问题。这是我第一次调查此类问题。有人能告诉我如何解决这个问题吗?这是硬件问题吗?

相关内容