开发者社区> 问答> 正文

一个文件描述符与磁盘空间释放的问题

最近清理磁盘文件时,删除了一个nohup.out文件,发现其占用的磁盘空间并没有被释放。最终找到关联的进程,杀掉进程后,磁盘空间才被释放。使用ls -al查看/proc下的文件描述符(fd),发现它们是软连接(lr-x——),为什么删除掉文件后,磁盘空间没有被释放呢?

展开
收起
a123456678 2016-06-17 17:31:13 2041 0
1 条回答
写回答
取消 提交回答
  • 因为在类 UNIX 系统中,当一个文件的 link count 减为零并且所有已打开的文件描述符全部关闭、所有 mmap 的部分全部 unmap 时,系统才会真正将该文件占用的存储空间标记为未使用。这和 Windows 使用的策略是不一样的。

    PS: 这个属于类 UNIX 系统基本常识了。提问者要多加了解和学习啊。
    PPS: 日志还是直接交给 syslog 吧,然后用 logrotate 轮转,就不用自己处理各种麻烦事了

    2019-07-17 19:43:15
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载