我正在尝试在 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 操作。