Baobab
|
Starting from its v.2.4.2, Baobab has been included as a component of gnome-utils with the name 'Disk Usage Analyzer', so it is no more updated as a stand-alone product, but it will follow gnome-utils release cycle. ![]() |
Index |
Baobab is a C/gtk+ application to analyse disk usage in any Gnome environment. Baobab can easily scan either the whole filesystem tree, or a specific user-requested directory branch (local or remote). It also includes a complete file-search functionality and auto-detects in real-time any changes made to your home directory as far as any mounted/unmounted device. Baobab also provides a full graphical treemap window for each selected folder.
Debian package
Baobab is currently in Debian unstable/testing and Ubuntu Dapper repositories. These users can just apt-get it. (please check latest version)
Other users of debian-derivative distro's can just download the .deb package and type, from a terminal (the filename depends upon user's system architecture):
After package installation, Baobab is placed into Gnome Applications->Accessories menu.
Fedora Core 4
Baobab is also in fedora-extras. Just do a:
and start using it! Binaries are found on every fedora-extras mirror or in the main-server.
Mac OS
Aaron Harwood has successfully managed to get Baobab running on a MacOS. Please check this instruction page.
Thanks to Aaron!
Tarball
Unpack your tarball and build the program:
tar -xvzf baobab-2.4.2.tar.gz
cd baobab-2.4.2
./configure --prefix=/usr
make
make install
Last command must be run with root privileges. Please read the INSTALL file, for configuration options.
Baobab build dependencies are: libgtk2.0-dev (>= 2.6.0), libgnomeui-dev, libgnomevfs2-dev, libgconf2-dev, libgtop2-dev (>= 2.10.0)
- baobab_2.4.2-1- Debian Package v. 2.4.2 (arch: alpha, amd64, hppa, i386 ia64, mips, mipsel, powerpc, s390)
- Source tarball - v.2.4.2 source
- Portage Gentoo
Baobab is also available on Gnome-CVS.
If you don't have a Gnome-CVS account, you can checkout latest Baobab
CVS version through an Anonymous access:
cvs -z3 -d:pserver:anonymous@anoncvs.gnome.org:/cvs/gnome co -P baobab
Baobab can be started in three ways:
- from Gnome menu Applications -> Accessories;
- from a terminal window;
- from Nautilus "Open with..." ;
If launched from Gnome menu, Baobab starts and remains in a stand-by state, waiting for user action. The user can then:
- start a full filesystem scan;
- select a specific local directory branch to scan
- select a remote server and folder to scan
- search for a file
- set preferences
*NOTE*: If you run a full filesystem scan, Baobab window will start drawing the tree as soon as the thread starts scanning the filesystem. If any large partition is mounted on the filesystem, that will be scanned too.
If you want to start Baobab from a terminal window, just type:
Once get launched in any of the three methods, the Baobab window will display the full requested tree. You can then traverse the tree, sort it in alphabetically or numerically, display the directory size either as an absolute or as a percentage of the branch displayed. Baobab will not count the /proc dir, nor any file size that is not related to a "plain" file, so symlinks, character blocks, device blocks will not be part of the directory size. Hard-links are managed in a different way: this first hardlink is counted as a normal file, while the subsequent links to the same inode device are not counted in the total, but highlighted in the right-hand column of the window (see here).
If you right-click in the Baobab main tree over a directory, you will open a popup-menu from which you can open the directory in the Gnome file browser (i.e. Nautilus), list all files in folder in Baobab file-window, draw a graphical treemap of the folder (see below) or move the directory to Trash.
In the Preference window (screenshot) you can select which mounted devices are to be used by Baobab.
Another preference is the check box to enable auto-detect monitoring of user's home directory. If checked, Baobab will constantly monitor any external changes to home directory and warn the user if a file is added/removed (screenshot).
Baobab will display sizes in the directory tree as allocated space. This means that the displayed sizes refer to the actual disk usage and not to the apparent directory size. If you want to view the apparent file size, click on the toolbar's checkbox named Allocated space.
If you need to scan a remote server-folder, just click on the toolbar icon and you will get this dialog box. Baobab can connect to a server through ssh, ftp, smb, http & https.
The file search dialog-box (screenshot)
gives the user a full but easy file-searching capability. The filename
text box also allows wildcards character such as * or ?. As an example,
suppose you need to list ALL files in a folder: here you have two ways
of doing this:
1 - Right-click the directory in the tree-view and select "List all
files in folder" from the popup menu;
2 - Enter an asterisk in the filename field in the file search dialog,
select the directory and click on OK;
Once displayed the file list (screenshot), thru the Sort menu you can sort it by size, by date, by name or by file type.
By right-clicking over a folder, you can select the "Folder graphical map" option. This will open a new fullscreen window with the graphical treemap of the selected folder.
You can open as many treemap windows as you want. Each selected folder can be represented as a treemap graph, with the big advantage of showing you , at a glance, how exactly is space allocated and what is occupying the space, even if it's a directory nested many levels down. Level of depth can be adjusted and the treemap can be zoomed in/out as far as saved into an image file (png-jpeg-bmp). It is amazing to set your preferred folder's treemap as your desktop background!

Treemap concepts has been developed by Shneiderman in the
'90s. Read his vision on treemaps. Figure shows
an example of treemap's theory. Each node (as shown in the tree
diagram) has a name (a letter) and an associated size (a number). The
size of leaves may represent for instance the size of individual files,
the size of non-leaf nodes is the sum of the sizes of its children. The
treemap is constructed via recursive subdivision of the initial
rectangle. The size of each sub-rectangle corresponds to the size of
the node. The direction of subdivision alternates per level: first
horizontally, next vertically, etcetera. As a result, the initial
rectangle is partitioned into smaller rectangles, such that the size of
each rectangle reflects the size of the leaf. The structure of the tree
is also reflected in the treemap, as a result of its construction.
Color and annotation can
be used to give extra information about the leaves.
Treemaps are very effective when size is the most important feature to be displayed.
Support
Discussions relating to Baobab and program localization take place on the Ubuntu Linux Forum.
If you need more information, or if you simply need to contact me, my e-mail address is
- v. 2.4.2
- Code restyling
- Added a View Menu
- Reworked toolbar
- Toolbar and status bar can be hidden
- Toolbar follows Desktop wide toolbar preferences
- Changed modules naming
- Terminology changes: folder vs directory
- Fixed memory leaks
- Make app icon themable
- Fixed bug on deleting files
- v. 2.3.2
- Added finnish translation
- Switched to automount 1.8
- v. 2.3.1
- Trees sorted by size by default
- Do not popup preference window upon (un)mounting partitions
- Added new translations
- v. 2.3.0
- Scanning can now be started from a symlink too
- Moved menu in Applications->Accessories
- v. 2.2.2
- Fixed bug on reported Allocated Size
- v. 2.2.1
- Fixed gnome-bug #323331
- v. 2.2.0
- Full support to scan remote folders through ssh, ftp, smb, http & https.
- New translations
- v. 2.0.1
- Each folder can be represented in a full graphical treemap window
- New translations
- v. 1.3.1
- First CVS-based release
- Fixed major memory leaks
- Fixed compilation with gcc-2.95
- New translations
- Reworked hardlink handling
- Relocated icon and pixmaps
- v. 1.2.0
- Enabled viewing of allocated disk usage in the tree
- Added allocated bytes size in each file description
- Now showing percentage next to size column in tree
- Modified and improved scanning logic
- Removed bug on home directory monitor
- Added basque translation
- v. 1.1.0
- New full file search functionality
- open/delete folders and files
- auto-detect filesystem changes in real-time
- monitoring of user's home directory for changes
- list all files in a folder
- v. 1.0.1
- Code cleanup for compilation with gcc-4
- v. 1.0.0
- Fully re-written in C/gtk+
- v. 0.1.2
- More on Unicode support
- v. 0.1.1
- Minor bugs removed
- Added UTF-8 support for non-ASCII characters in directory names
- Added french and spanish localization


