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

修改内核代码fs/namei.cmay_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

Logo

更多推荐