红联Linux门户
Linux帮助

Linux禁止删除正在使用的文件的方法

发布时间:2015-02-16 21:50:58来源:linux网站作者:shuaiff

关于Linux删除被操作的文件是不会有提示该文件正在被使用的,查看文件是否被使用可以使用工具软件lsof或fuser来显示,当需要删除的文件较多时候采用这种方式效率很低。下面简单的几行代码可以阻止删除正在使用的文件。


修改内核代码fs/namei.c的may_delete

if (victim->d_flags & DCACHE_NFSFS_RENAMED)

return -EBUSY;
//++sw
if(!isdir)
if(victim->d_count.counter>1)
{
return -EBUSY;
}
//--sw
return 0;


经过这样的改动则删除正在使用的文件时候会提示:

Device or resource busy