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

4 min read

rm: cannot remove name/current/.nfs00000000036a004e00000009': Device or resource busy rm: cannot remove name/.nfs00000000036a00320000000a': Device or resource busy
去网上搜了一下,发现是有别的进程在使用该文件

使用lsof |grep nfs00000 命令查看哪个进程在使用该文件,输出结果如下:

java 32308 hadoop 199uW REG 0,23 10 57278514 /public/hadoop/name/.nfs00000000036a00320000000a (iboss01:/public)
java 32308 hadoop 201u REG 0,23 1048576 57278542 /public/hadoop/name/current/.nfs00000000036a004e00000009 (iboss01:/public)
很显然,进程号32308在使用上面的文件

要删除这个文件就要把32308这个进程杀死

命令kill -9 32308 (在这里我就先不使用kill -9命令,因为我在网上看到有人使用这个命令把java虚拟机搞坏了,我先重启电脑试试)

如果重启电脑成功就没必要使用kill -9命令(当然,其它不重要的进程直接杀死就好)

接着就可以rm删除了