我只是尝试将文件移动到另一个路径,然后我得到了
mv: cannot move «file.mp4» to «/path/file.mp4»: Device or resource busy*
我尝试使用 lsof,但它没有显示任何打开的文件。
lsof +D /path/
我正在使用具有以下挂载选项的 aufs。aufs udba=reval,sum,create=mfs,br:
*cat file.mp4 > /dev/null 没有失败
有件奇怪的事
mv 文件.mp4 /路径/文件.mp4
mv: cannot move «file.mp4» to «/path/file.mp4»: Device or resource busy*
触摸/路径/文件.mp4
触摸后我可以移动文件... mv file.mp4 /path/file.mp4 有效。但如果我尝试移动新文件,mv file2.mp4 /path/file2.mp4
我会再次收到相同的错误Device or resource busy
*更新
重启没有帮助:|
消息
[ 1162.330502] aufs au_lkup_neg:326:mv[40905]: I/O Error, 2013 should be negative on b9.
[ 1162.356955] aufs au_lkup_neg:326:mv[40908]: I/O Error, 2013 should be negative on b9.
[ 1279.411096] aufs au_lkup_neg:326:mv[47272]: I/O Error, 2013 should be negative on b9.
[ 1682.523704] aufs au_do_pin:470:mv[69289]: err -16
[ 1683.045368] aufs au_do_pin:470:mv[69295]: err -16
[ 1683.488039] aufs au_do_pin:470:mv[69296]: err -16
[ 1683.937787] aufs au_do_pin:470:mv[69297]: err -16
[ 1684.645443] aufs au_do_pin:470:mv[69298]: err -16
答案1
fuser 将找出该过程并要求您终止它,使用以下命令:
fuser -i -k -9 file.mp4 fuser -i -k -9 /path/file.mp4
注意:您应该检查源文件名和目标文件名。
您是否尝试过退出/登录?
此外,如果您的正常运行时间不是很重要,重新启动可能会释放文件/路径。
答案2
您在目标目录上遇到了权限问题。触摸操作成功创建了文件,现在您有了“容器”,移动操作继续。线索是第二次尝试失败,因为目标中的文件不存在。我几乎可以打赌,如果您触摸了第二个文件,那么第二次移动就会顺利进行。
文件系统是什么?您是否启用了 ACL?完整路径是什么?该路径中每个目录的权限是什么?您使用的是哪些用户和组?
答案3
原来是 aufs 的一个 bug。不知什么原因,它在另一个存储中创建了额外的空目录。我干脆把它删掉了。