尽管kill -9 $PID
应该始终有效,但有时却不行。至少我还记得一些经历。昨天我遇到过这样的情况:我的 SD 卡出了问题,我用零覆盖了它(dd
)。之后,我重新插入读卡器并尝试列出所有可用分区:
$ sudo parted -l
但该过程挂起,几分钟后我尝试用CTR+中断它C。它什么也没做,所以我尝试终止该进程:
$ ps aux | grep parted
root 26968 0.0 0.0 73408 4384 pts/4 S+ 01:40 0:00 sudo parted -l
root 26969 0.0 0.0 39516 3072 pts/4 D+ 01:40 0:00 parted -l
username 27178 0.0 0.0 15664 1148 pts/5 S+ 01:45 0:00 grep parted
经过几次迭代之后
$ sudo kill 26969
$ sudo kill -15 26969
$ sudo kill -9 26969
$ sudo kill -9 26968
我被杀了26968(只是sudo
,我想)。 PID 26969 仍然(大约 16 小时后)在进程表中:
root 26969 0.0 0.0 39516 444 pts/4 D 01:40 0:00 parted -l
我无法访问我的 SD 卡,我重新插入了几次,尝试通过几种方式访问它,但dmesg
我没有看到任何插入卡的事件。通常,遇到这种情况,我除了重启之外没有其他办法。
有没有更好的办法?