Duc is built to scale to huge filesystems: it will index and display hundreds of millions of files on petabytes of storage without problems.
Duc stores the disk usage in a optimized database, resulting in a fast user interface. No wait times once the index is complete.
Duc comes with a number of user interfaces for quering the database: use Duc on the console with a command line or ncurses interface, on graphical desktops with an X or OpenGL GUI, or over the web using the CGI interface.
Duc is available through the normal repositories in Debian and most of its derivate operating systems such as Ubuntu. Simply run the following to install Duc:
$ sudo apt-get install duc
For other operating systems, you can download the latest duc source .tgz from the Releases page on github, then
$ cd duc-1.4.1 $ ./configure $ make # make installIf you feel brave and you want to run the latest greatest, you can clone Duc from GitHub
Extensive documentation is available in the manual page man page.
$ duc index /usrList all files and directories under /usr/local, showing relative file sizes in a graph:
$ duc ls -Fg /usr/local 4.7G lib/ [+++++++++++++++++++++++++++++++++++++++++++] 3.1G share/ [++++++++++++++++++++++++++++ ] 2.7G src/ [++++++++++++++++++++++++ ] 814.9M bin/ [+++++++ ] 196.6M include/ [+ ] 66.6M x86_64-w64-mingw32/ [ ] 59.9M local/ [ ] 38.8M i686-w64-mingw32/ [ ] 20.3M sbin/ [ ] 13.6M lib32/ [ ] 13.3M libx32/ [ ]or use the -R options for the tree view:
24.0K ╰┬─ ignore.d.server 4.0K │ ╰┬─ gpg-agent 4.0K │ ├─ rsyslog 4.0K │ ├─ hddtemp 4.0K │ ├─ ntpdate 4.0K │ ╰─ libsasl2-modules 4.0K ├─ ignore.d.paranoid 4.0K ├─ ignore.d.workstation 4.0K ╰─ violations.ignore.d
$ duc gui /usr
or run the ncurses console interface with
duc ui /usr
$ ./configure $ make $ sudo make installTo get the required dependencies on Debian or Ubuntu, run:
$ sudo apt-get install libncursesw5-dev libcairo2-dev libpango1.0-dev build-essentialOn RHEL or CentOS systems, you need to do:
$ sudo yum install pango-devel cairo-devel tokyocabinet-develFor more detailed installation instructions and a description of all the relevant ./configure options check out the INSTALL file at the GitHub repository.
The author can be contact via email at duc@zevv.nl