文件删除生成场景案例解决实战
à web服务器磁盘满故障深入解析

参考博文:http://oldboy.blog.51cto.com/2561410/612351

 

Linux的文件名是存在父目录的block里面,并指向这个文件的inode节点,这个文件的inode节点再标记指向存放这个文件的block的数据块。我们删除一个文件,实际上并不清楚inode节点和block的数据。只是在这个文件的父目录里面的block,删除这个文件的名字,从而使这个文件名消失,并且无法指定这个文件的inode节点,当没有文件名指向这个inode节点的时候会同时释放inode节点和存放这个文件的数据块,并更行inodeMAPblockMAP今后让这些位置可以用于防止其他文件数据。

 

wKiom1XMF7SBoyvWAAMNeSRB5lo900.jpg

 


i_link=2  i_count=1  文件删除的条件 i_link=0并且i_count=0

Linux是通过link的数量来控制文件删除的,只有当一个文件不存在任何link的时候,这个文件才会被删除。