Linux教程

Linux删除文件后磁盘空间仍未被释放问题

本文主要是介绍Linux删除文件后磁盘空间仍未被释放问题,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

在Linux系统中删除了一个大文件后查看相关磁盘空间, 发现磁盘空间没有被释放;
这是以为通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink),如果被删除的文件是被打开的(或者有一个进程正在使用被删除的文件),那么该进程将仍然可以读取被删除的文件,磁盘空间也一直被占用。

lsof命令可以列出当前打开的文件和对应的进程

lsof {{path/to/file}} 找到打开指定文件的进程

lsof -i :{{port}} 找出打开本地因特网端口的进程

lsof -u {{username}} 列出指定用户打开的文件

lsof +D {{path/to/directory}} 列出目录中被打开的文件

注意,lsof命令后面可以使用管道符结合grep查找,如 lsof |grep deleted;

通过lsof命令找到占用被删除文件的进程号,杀死对应进程后,再次查看磁盘空间已被释放。

 

图文并茂的链接→linux删除文件后却没有释放空间

这篇关于Linux删除文件后磁盘空间仍未被释放问题的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!