Partprobe 无法被杀死

Partprobe 无法被杀死

我正在尝试在 CentOS 服务器上配置软件 RAID 10。在测试期间,我禁用了一个设备以检查文件系统是否仍在运行。

当我执行 partprobe 时,服务器没有响应,我无法获得提示,因此我关闭了我的 ssh 会话并重新打开了一个新会话。

现在我有这个:

# ps aux | grep partprobe 
root   6319  0.0  0.0  21704   916 ?        D07:40   0:00 partprobe

我尝试过跑步kill -9 6319,但是没有用!!

# lsof /dev/md10
COMMAND    PID USER   FD   TYPE DEVICE SIZE NODE NAME
partprobe 6319 root    4u   BLK   9,10      8708 /dev/md10

编辑:

root      6212  0.0  0.0  71800   752 ?        D    07:36   0:00 umount /var/lib/mysql/
root      6319  0.0  0.0  21704   916 ?        D    07:40   0:00 partprobe
root      6424  0.0  0.0  71812   856 ?        D    07:47   0:00 mount /dev/md10 /var/lib/mysql/
root      6552  0.0  0.0  71812   860 ?        D    07:56   0:00 mount /dev/md10 /var/lib/mysql/
root      6583  0.0  0.0   5888   668 ?        D    07:57   0:00 shutdown -r 0 w
root      6663  0.0  0.0  71812   856 ?        D    08:02   0:00 mount /dev/md10 /var/lib/mysql/
root      6779  0.0  0.0   5888   668 ?        D    08:08   0:00 shutdown -r 0 w
root      7285  0.0  0.0   5888   668 ?        D    08:54   0:00 shutdown -r 0 w
root      7325  0.0  0.0  90108  3364 ?        Ss   08:59   0:00 sshd: root@pts/8
root      7328  0.0  0.0  66088  1608 pts/8    Ss   09:00   0:00 -bash
root      8332  0.0  0.0  65612   964 pts/8    R+   10:49   0:00 ps aux

你能帮我吗 ?

答案1

摘自 WIKI:(阅读最后一句)

Uninterruptible sleep

An uninterruptible sleep state is a sleep state that cannot handle a signal (such as waiting for disk or network IO (input/output)).    
When the process is sleeping uninterruptibly, the signal will be noticed when the process returns from the system call or trap.    
In Unix-like systems the command 'ps -l' uses code "D" for the uninterruptible sleep state of a process.    
Such processes cannot be killed even with 'kill -9' command, and the only nonsophisticated way to get rid of them is to reboot the system.

答案2

上面说的D07:40实际上是两个字段。D 表示它处于磁盘 I/O 等待状态。您无法终止处于该状态的进程。它必须先等待并完成 I/O 操作。

相关内容