#1 kdirstat ignores large files

open
nobody
None
5
2009-07-22
2009-07-22
Ernest Beinrohr
No

my file is 30GB and kdirstat does not see it. On my root filesystem it says that it has 58GB but df says 155 GB are used. Thats weird.

Discussion

  • Steve Bonds
    Steve Bonds
    2009-08-04

    I patched this a while back and hundhammer committed it into the CVS version of kdirstat. Most linux distros seem to only include the unpatched 2.5.2 version. Try building the CVS version and see if it fixes your problem.

    Here's the patch if you want to apply it to 2.5.2:

    -----
    *** kdirstat-2.5.2/kdirstat/kdirinfo.cpp 2006-01-06 16:28:37.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/kdirinfo.cpp 2006-05-07 17:04:38.0000
    00000 -0700
    ***************
    *** 7,18 ****
    * Updated: 2006-01-07
    */

    #include <kapp.h>
    #include <klocale.h>
    #include "kdirtree.h"
    #include "kdirtreeiterators.h"
    - #include "config.h"

    using namespace KDirStat;

    --- 7,20 ----
    * Updated: 2006-01-07
    */

    + #ifdef HAVE_CONFIG_H
    + # include <config.h>
    + #endif

    #include <kapp.h>
    #include <klocale.h>
    #include "kdirtree.h"
    #include "kdirtreeiterators.h"

    using namespace KDirStat;

    *** kdirstat-2.5.2/kdirstat/kdirreadjob.cpp 2006-01-07 10:27:36.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/kdirreadjob.cpp 2006-05-07 17:04:49.0000
    00000 -0700
    ***************
    *** 8,14 ****
    */

    ! #include "config.h"
    #include <string.h>
    #include <stdio.h>
    #include <sys/errno.h>
    --- 8,16 ----
    */

    ! #ifdef HAVE_CONFIG_H
    ! # include <config.h>
    ! #endif
    #include <string.h>
    #include <stdio.h>
    #include <sys/errno.h>
    ***************
    *** 21,28 ****
    #include "kdirreadjob.h"
    #include "kdirtreecache.h"

    - #include "config.h"
    -
    #define HAVE_STUPID_COMPILER 0

    --- 23,28 ----
    *** kdirstat-2.5.2/kdirstat/kdirtree.cpp 2006-01-07 09:44:35.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/kdirtree.cpp 2006-05-07 17:03:25.0000
    00000 -0700
    ***************
    *** 8,19 ****
    */

    #include <kapp.h>
    #include <kconfig.h>
    #include "kdirtree.h"
    #include "kdirreadjob.h"
    #include "kdirtreecache.h"
    - #include "config.h"

    using namespace KDirStat;

    --- 8,19 ----
    */

    + #include "config.h"
    #include <kapp.h>
    #include <kconfig.h>
    #include "kdirtree.h"
    #include "kdirreadjob.h"
    #include "kdirtreecache.h"

    using namespace KDirStat;

    *** kdirstat-2.5.2/kdirstat/kfileinfo.cpp 2006-01-06 16:27:33.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/kfileinfo.cpp 2006-05-07 17:04:57.0000
    00000 -0700
    ***************
    *** 7,18 ****
    * Updated: 2006-01-07
    */

    #include <klocale.h>
    -
    #include "kdirtree.h"
    #include "kdirsaver.h"
    - #include "config.h"

    using namespace KDirStat;

    --- 7,19 ----
    * Updated: 2006-01-07
    */

    + #ifdef HAVE_CONFIG_H
    + # include <config.h>
    + #endif

    #include <klocale.h>
    #include "kdirtree.h"
    #include "kdirsaver.h"

    using namespace KDirStat;

    *** kdirstat-2.5.2/kdirstat/ktreemapview.h 2003-02-02 12:31:37.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/ktreemapview.h 2006-05-07 17:06:40.0000
    00000 -0700
    ***************
    *** 11,22 ****
    #ifndef KTreemapView_h
    #define KTreemapView_h

    - #include <qcanvas.h>
    -
    #ifdef HAVE_CONFIG_H
    # include <config.h>
    #endif

    #define MinAmbientLight 0
    #define MaxAmbientLight 200
    --- 11,21 ----
    #ifndef KTreemapView_h
    #define KTreemapView_h

    #ifdef HAVE_CONFIG_H
    # include <config.h>
    #endif

    + #include <qcanvas.h>

    #define MinAmbientLight 0
    #define MaxAmbientLight 200
    <agora.rdrop.com> [103] $ pwd
    /home/sbonds
    <agora.rdrop.com> [104] $ cat kdirstat-2.5.2-config_h.patch
    *** kdirstat-2.5.2/kdirstat/kdirinfo.cpp 2006-01-06 16:28:37.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/kdirinfo.cpp 2006-05-07 17:04:38.0000
    00000 -0700
    ***************
    *** 7,18 ****
    * Updated: 2006-01-07
    */

    #include <kapp.h>
    #include <klocale.h>
    #include "kdirtree.h"
    #include "kdirtreeiterators.h"
    - #include "config.h"

    using namespace KDirStat;

    --- 7,20 ----
    * Updated: 2006-01-07
    */

    + #ifdef HAVE_CONFIG_H
    + # include <config.h>
    + #endif

    #include <kapp.h>
    #include <klocale.h>
    #include "kdirtree.h"
    #include "kdirtreeiterators.h"

    using namespace KDirStat;

    *** kdirstat-2.5.2/kdirstat/kdirreadjob.cpp 2006-01-07 10:27:36.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/kdirreadjob.cpp 2006-05-07 17:04:49.0000
    00000 -0700
    ***************
    *** 8,14 ****
    */

    ! #include "config.h"
    #include <string.h>
    #include <stdio.h>
    #include <sys/errno.h>
    --- 8,16 ----
    */

    ! #ifdef HAVE_CONFIG_H
    ! # include <config.h>
    ! #endif
    #include <string.h>
    #include <stdio.h>
    #include <sys/errno.h>
    ***************
    *** 21,28 ****
    #include "kdirreadjob.h"
    #include "kdirtreecache.h"

    - #include "config.h"
    -
    #define HAVE_STUPID_COMPILER 0

    --- 23,28 ----
    *** kdirstat-2.5.2/kdirstat/kdirtree.cpp 2006-01-07 09:44:35.000000000 -0
    800
    --- kdirstat-2.5.2.working/kdirstat/kdirtree.cpp 2006-05-07 17:03:25.0000
    00000 -0700
    ***************
    *** 8,19 ****
    */

    #include <kapp.h>
    #include <kconfig.h>
    #include "kdirtree.h"
    #include "kdirreadjob.h"
    #include "kdirtreecache.h"
    - #include "config.h"

    using namespace KDirStat;

    --- 8,19 ----
    */

    + #include "config.h"
    #include <kapp.h>
    #include <kconfig.h>
    #include "kdirtree.h"
    #include "kdirreadjob.h"
    #include "kdirtreecache.h"

    using namespace KDirStat;
    *** kdirstat-2.5.2/kdirstat/kfileinfo.cpp 2006-01-06 16:27:33.000000000 -0800
    --- kdirstat-2.5.2.working/kdirstat/kfileinfo.cpp 2006-05-07 17:04:57.000000000 -0700
    ***************
    *** 7,18 ****
    * Updated: 2006-01-07
    */

    #include <klocale.h>
    -
    #include "kdirtree.h"
    #include "kdirsaver.h"
    - #include "config.h"

    using namespace KDirStat;

    --- 7,19 ----
    * Updated: 2006-01-07
    */

    + #ifdef HAVE_CONFIG_H
    + # include <config.h>
    + #endif

    #include <klocale.h>
    #include "kdirtree.h"
    #include "kdirsaver.h"

    using namespace KDirStat;

    *** kdirstat-2.5.2/kdirstat/ktreemapview.h 2003-02-02 12:31:37.000000000 -0800
    --- kdirstat-2.5.2.working/kdirstat/ktreemapview.h 2006-05-07 17:06:40.000000000 -0700
    ***************
    *** 11,22 ****
    #ifndef KTreemapView_h
    #define KTreemapView_h

    - #include <qcanvas.h>
    -
    #ifdef HAVE_CONFIG_H
    # include <config.h>
    #endif

    #define MinAmbientLight 0
    #define MaxAmbientLight 200
    --- 11,21 ----
    #ifndef KTreemapView_h
    #define KTreemapView_h

    #ifdef HAVE_CONFIG_H
    # include <config.h>
    #endif

    + #include <qcanvas.h>

    #define MinAmbientLight 0
    #define MaxAmbientLight 200
    -----

     
  • thanx, the CVS version seems to fix things.

    BTW: unless you release a new version, distros are unlikely to include the CVS version.

     
  • I would if I could, Mr. Anonymous. :-)

     
  • Steve Bonds
    Steve Bonds
    2009-08-12

    I managed to track down Mr. Hundhammer. Hopefully he'll be able to get a new release produced, or will let me produce it for him.