summaryrefslogtreecommitdiffstats
path: root/philesight/README
blob: 1a9905e964ea150db0278689dfb21545d4e96620 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100

Summary 
=======

Philesight is a tool to browse your filesystem and see where the diskspace is
being used at a glance. Philesight is implemented as a simple command line
program that generates PNG files; a wrapper CGI script is supplied to allow
navigating through the filesystem. 

Philesight is actually a clone of the filelight program. Wheres filelight is
ment as an interactive, user friendly application for the X-windows desktop,
philesight is designed to run on a remote server without graphical user
interface. 


Dependencies 
============

Philesight is written in ruby1.8, and requires the berkely-db4 and cairo
ruby-libraries. 

Changelog
=========

2008-05-29	Added option (use_gradients) to enable/disable gradients
		in circular graph. Added option to set graph size.

2008-04-16	Added optional table with file list to cgi, some bugfixes,
		increased default graph size to 800. (Thanks to Guillaume 
		Sachot)

2008-03-17	Fixed bug where no image was shown with CGI's running
		on apache-mpm-worker.

2007-03-12	Fixed crash when indexing file named 'rest'

2006-12-09	Workaround for segmentaion fault with ruby 1.8.5

Usage 
=====

Philesight can be run in different modes: first, the filesystem is indexed
and the results are stored in a database. When the database is generated, the
tool can used to generate PNG files with the graphs. The database should be
updated every once in a while of course.

 * Index bulding: 
 
 	./philesight --db {db} --index {path}

   {db} is the name of the database file that will be generated. It is a good
   idea to throw away existing database files before indexing to avoid removed
   files showing in your graph.

   {path} is the top-level directory to start indexing. Usually, '/' is a 
   good choice.

   This process might take some time, since it traverses the whole tree
   from path-to-index downward and stores the data into the db. Make
   sure to remove previous database files before indexing.


 * PNG generating: In this mode, philesight generates a graph of the
   filesystem from path and 4 levels downward. i
   
   	./philesight --db {db} --path {path} --draw {png}

   {db} is the filename of the index file that was generated earlier,
   {path} is the directory which should be drawn, and {png} is the filename
   of the to-be-generated PNG image file


 * CGI: Philesight comes with a CGI module that can be run from within a 
   web server. Edit the configurable parameters in the top of this file
   to point to the database. Make sure the datbase file is readable by
   the webserver!

   Available options:

   * db: Path to database file.

   * default_path: default path to show when CGI first loads.

   * size: graph size. 800 pixels is often a good choice.

   * show_list: render list of directories and their sizes blow graph.

   * use_gradients: use gradient colors in graph (set to 'false' to generate
     smaller PNG files)


Bugs
====

    * Philesight is a ruby program, and thus is not particulary fast.
    * Indexing takes longer than necassery. 
    * Proper error handling is mostly missing. 
    * Not very well tested. 
    * It might eat your disks.