系统侠官网 - 最好的电脑系统下载网站!

当前位置:首页 > 系统教程 > Linux教程 > 详细页面

Linux df和du命令查出来的已使用空间不同怎么处理?

时间:2020-02-27 来源:系统侠一键重装大师

  有用户登录到Linux系统服务器上查看的时候,竟然发现df和du查出来的结果不一样,du查出来的“实际使用空间”明显比df查出来的已使用空间要小很多,这是究竟是怎么一回事呢?难道有些空间被隐藏起来了?下面来说一下df和du命令查出来的已使用空间不同的处理办法。

  方法如下:

  首先,我们用df来查看已使用空间:

Linux df和du命令查出来的已使用空间不同如何解决?

  从上图可知,根分区已使用5456700KB(合约5.20GB)。

  然后,我们用du查出根分区下每个目录的大小:

Linux df和du命令查出来的已使用空间不同如何解决?

  排除红框中的两个目录(因为他们是挂载上去的),所有目录的总大小为3075332KB(合约2.93GB),比df查出来足足小了2.27GB。

  什么原因会少了这么多空间呢?

  其实是因为我们之前删除了一些进程正在写入的文件,虽然已经被我们删除了,但只要进程还在,那个文件就不会被真正地删除,只是被临时存放到系统的某个地方而已,有点类似于Windows的回收站。

  想处理这个问题,最简单地就是重启服务器了,但是生产环境一般都不会轻易重启的,所以我们可以通过其他方式来处理。

  先用lsof命令配合grep命令查出哪些是已经被删除,却依旧占用系统空间的“无赖”。

Linux df和du命令查出来的已使用空间不同如何解决?

  上图红框中的文件正是我之前删除的一个大文件,我现在尝试去重启这个软件(node),我直接kill掉这个进程,因为我做了自动启动,所以我不用手动去启动它。

Linux df和du命令查出来的已使用空间不同如何解决?

  已使用空间一下子下降到3226324KB(合约3.08GB),已经很接近du统计的总空间了。

  接下来,我逐个重启了其他deleted的文件,最终df查出来的大小就和du统计的总空间差不多大了。

  到此,就处理了df和du查出来的结果不同的文件,赶走了系统里的“无赖”,索回属于我们的空间。

  df和du命令查出来的已使用空间不同的处理办法就说到这里了,如你们也有此问题的可以按照上述的步骤去操作,从而处理问题。

相关信息

  • 如何在Linux系统中安装和使用ProcDump for Linux?

    Linux系统怎么安装使用ProcDump for Linux?ProcDump for Linux是Windows版Sysinternals套件中ProcDump工具的Linux 构建版,专为Linux 开发人员提供,开发人员可以根据性能...

    2020/10/20

  • Linux yum命令是什么?常用命令有哪些

    yum是Linux比较常用到的命令功能,全称Yellow dog Updater,Modified,是一个Shell前端软件包管理器。能够从指定的服务器自动下载安装RPM包,无须繁琐操作,简单便捷又好用。那么常用...

    2020/10/18

系统教程栏目

栏目热门教程

人气教程排行

站长推荐

热门系统下载