linux rm 命令, Device or resource busy,无法删除

环境:

linux CentOS

遇到的问题:

我打断了 pytorch 下的模型训练,导致 tensorboard 输出的文件无法删除。 想使用 rm -r 删除文件夹时候遇到错误。

rm: cannot remove `你的文件目录/.nfs0000000002f1f4f600000002': Device or resource busy

原因:

有别的进程在使用该文件。

解决:

1.安装 lsof

sudo yum install lsof

2.查看哪个进程在使用该文件

lsof -w | grep nfs0000000002f1f4f600000002

-w 的作用: 忽略一些错误,如果不加 会报多行如下错误:

lsof: no pwd entry for UID xx

上述命令输出的第二列即 占用该文件的进程的 pid。

如:

java `32308` hadoop  199uW  REG  0,23 10 57278514 /文件目录/.nfs0000000002f1f4f600000002 (iboss01:/public)

pid 可能有多个,一起杀死即可。

3.杀死进程

杀死所有的占用该文件的 PID 即可。命令:

sudo kill -9 32308

pid 可能有多个,一起杀死即可。

参考:

【1】Linux不能删除,报错”Device or resource busy”

【2】linux lsof命令报错 no pwd entry for UID xx 解决方法

补充资料:

【1】Linux grep 命令

【2】lsof命令详解

【3】Linux 命令神器:lsof 入门

【4】linux中的&&和&,|和||


windows 系统遇到该问题,请参考:https://blog.csdn.net/NickAJun/article/details/90144083 中的方法 2.

posted @ 2023-03-27 11:10  cold_moon  阅读(5259)  评论(0编辑  收藏  举报