Filesystems df-kvh未显示可用空间-剩余空间在哪里

Filesystems df-kvh未显示可用空间-剩余空间在哪里,filesystems,mount,diskspace,du,Filesystems,Mount,Diskspace,Du,在我使用的一台Linux开发服务器上,我看到根“/”级别的空间使用率为100%。根文件夹有一个名为“production”的文件夹,它位于与根所在的文件服务器不同的装载/文件服务器上。Root拥有接近7.7/8 GB的磁盘空间 我正在对所有以MB或GB为单位的文件夹进行“du-chs”搜索,同时也在根“/”(不包括/production)上查找使用的总空间,但我不知道其他空间在哪里,也不知道为什么在所有文件夹(不包括/production)显示总共只有2.8GB时,它的使用率是100% 我怎样才

在我使用的一台Linux开发服务器上,我看到根“/”级别的空间使用率为100%。根文件夹有一个名为“production”的文件夹,它位于与根所在的文件服务器不同的装载/文件服务器上。Root拥有接近7.7/8 GB的磁盘空间

我正在对所有以MB或GB为单位的文件夹进行“du-chs”搜索,同时也在根“/”(不包括/production)上查找使用的总空间,但我不知道其他空间在哪里,也不知道为什么在所有文件夹(不包括/production)显示总共只有2.8GB时,它的使用率是100%

  • 我怎样才能找回丢失的空间

  • 为什么df-kvh和du命令不能反映所有被正确使用/未被正确使用的空间(当我们说100%使用,du说根“/”级别为2.8GB时)?大约(分配的7.7-使用的2.8)GB空间在哪里

  • 任何想法!我可能在这里错过了什么

    [root@linux-server /]# df -kvh / && echo && echo && df -kvh /production
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/rootvg-root
                          7.7G  7.3G     0 100% /
    
    
    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/rootvg-production
                          258G  231G   14G  95% /production
    [root@linux-server /]#
    
    
    [root@linux-server /]# ls -1|grep -v "production" | xargs du -chs 2>/dev/null|egrep "total|[0-9][0-9]*[MG]"
    7.8M    bin
    20M     boot
    106M    etc
    320M    lib
    25M     lib64
    60M     root
    39M     sbin
    1.9G    usr
    364M    var
    2.8G    total
    [root@linux-server /]#
    

    嗯。我不知道是谁否决了这个问题,但找到导致这种行为的原因对我来说很重要。我想与社区分享答案

    所以,尽管根“/”上有接近5GB的可用空间,但df命令并没有显示它,这可能是因为某些操作系统(设计上的bug/任何东西)

    如果您杀死一个进程并留下一些子进程,或者如果您杀死一个正在使用文件夹的进程并删除该文件夹(进程正在进行),则可能会发生此问题

    高级,如果系统没有以某种方式杀死子进程/pid(这不是必需的)进程,那么“df”命令将无法正确反映您的空间(因为该子进程/进程仍然以某种方式保存资源)

    现在,我是如何解决的。

    我看到有一些Jenkins(java)进程正在运行,我杀死了它们。这仍然没有得到我的空间(我看到只有420KB的空间),然后我做了“ps-eAf”,看到下面的进程正在运行

    c123456  23019     1 99 Oct21 ?        3-07:57:35 readelf -Wa /tmp/Goslr0qbOe/content2/jdk16-solaris-1.6.0.3.tar/jdk1.6.0_03/jre/lib/sparc/libioser12.so
    
    (上述过程是由某个实用程序启动的,可能是“pkgdiff”或pkgdiff实用程序启动的某个子步骤/过程。我的一位团队成员正在比较JDK 1.6和JDK 1.7 tar文件,不知怎的,即使在我两天前杀死了主pkgdiff/相关PID并删除了/tmp/Goslr0qb0e之后,上述过程仍然在运行)

    一旦我杀死了上面的PID(23019)。。。申子!我又开始做生意了

    Filesystem            Size  Used Avail Use% Mounted on
    /dev/mapper/rootvg-root
                          7.7G  2.5G  4.9G  34% /
    

    即使在我重新启动Jenkins实例之后,df现在正确地显示它对根“/”分区/挂载/文件管理器是4.9G免费的,这确认了上面的进程占用了资源(现在我假设,这超出了“df”命令输出的控制/范围)。

    从技术上讲,文件描述符是由一些正在运行的程序使用的。一旦应用程序关闭文件或应用程序结束,可用空间将正确反映

    我向投反对票的人提出的问题。你为什么这么做?这是我面临的一个合理的问题,我正试图找到答案。