]> git.sur5r.net Git - bacula/bacula/blobdiff - gui/bweb/INSTALL
ebl Add brestore ajax port.
[bacula/bacula] / gui / bweb / INSTALL
index f70aa99a16788923db7ea16f77eddf32a2121825..857070914ac890e74ccc77fecc11ac1d70347d67 100644 (file)
@@ -7,19 +7,21 @@ Bweb works well with 1.39 release or later.
 1) install Perl lib
 2) copy your files
 3) initialize your configuration file
-4) do some sql stuff (for postgresql users)
+4) do some sql stuff (for postgresql or mysql 5 users)
 5) use the -n option on bconsole so that it works with Expect
 6) get bacula log more useful
 7) bweb limitation
 8) using sudo with autochanger
 9) using bfileview.pl
 10) accessing to bweb
+11) setting mysql read-only account
+12) get more statistics
+13) use groups with bweb
+14) setup restoration in bweb (not yet working)
 
 ################ FILE COPY #####################################
- # you must get bweb cvs files
- cvs -d:pserver:anonymous@bacula.cvs.sourceforge.net:/cvsroot/bacula login 
- cvs -z3 -d:pserver:anonymous@bacula.cvs.sourceforge.net:/cvsroot/bacula co -P gui
- cd gui
+ # you must get bweb svn files
+ svn checkout https://bacula.svn.sourceforge.net/svnroot/bacula/trunk/gui/bweb bweb
 
  # or get them from the released tar files or from the apt or rpms.
 
@@ -56,7 +58,7 @@ Bweb works well with 1.39 release or later.
 
  # done !
 
- WARNING : Your www-data user must be able to execute bconsole and able 
+ WARNING : Your www-data (or wwwrun on SuSE) user must be able to execute bconsole and able 
            to read the bconsole.conf file!
            You can create an bconsole group for that.
 
@@ -68,8 +70,9 @@ Simply use lang/fr/tpl/*.tpl files instead of tpl/*.tpl
 
  - perl modules
     - DBI (with mysql or postgresql support DBD::Pg and DBD::mysql)
-    - Gd::Graph
-    - Gd
+          (SQLite is not supported)
+    - GD::Graph
+    - GD
     - HTML::Template
     - CGI
     - Expect
@@ -89,10 +92,21 @@ Simply use lang/fr/tpl/*.tpl files instead of tpl/*.tpl
     cd /var/www/cgi-bin/bweb
     ./bweb.pl 
 
+ you might also want to try:
+
+    ./bgraph.pl 
+
+ To make sure the graphing modules are loaded.  However, running it
+ will spray binary graphics data on your terminal.  Otherwise, you will
+ get an error.
+
  That should show you if any of the pre-requisites are missing.
  On SuSE 10.2, I was able to load all the appropriate modules via rpms,
-  with the exception of Expect and Time::ParseDate, which I loaded manually
-  using perl.
+ with the exception of Expect and Time::ParseDate, which I loaded manually
+ using perl.
+
+ If you experience problems, always consult the Apache error_log
+ file.
 
 ################ APACHE CONFIGURATION ##########################
 
@@ -169,12 +183,23 @@ If you want to use brestore with bweb, you must associate a mime type
 text/brestore with your brestore.pl, and you must install brestore.
 See gui/brestore/README for instructions on installing brestore.pl.
 
-################ POSTGRESQL NOTES ##############################
+################ POSTGRESQL AND MYSQL5 NOTES ####################
 
 If you want to use PostgreSQL instead of MySQL, you must add
 a function to the PostgreSQL Bacula database to get Bweb to work.
 
-psql -u bacula bacula < script/bweb-postgresql.sql
+psql -U bacula bacula < script/bweb-postgresql.sql
+
+Tips: PL must be enabled in your cluster, you can do this with postgres user
+postgres:~$ echo 'CREATE PROCEDURAL LANGUAGE plpgsql;' | psql bacula 
+
+
+To get database size with mysql5, edit Bweb.pm and change the DB_SIZE macro
+
+ # with mysql < 5, you have to play with the ugly SHOW command
+ DB_SIZE => " SELECT 0 ",
+ # works only with mysql 5
+ # DB_SIZE => " SELECT sum(DATA_LENGTH) FROM INFORMATION_SCHEMA.TABLES ",
 
 ################ BCONSOLE NOTES ################################
 
@@ -238,8 +263,8 @@ chown www-data /var/spool/bweb
 You have to remove "<!-- Remove this to activate bfileview" and "-->" from
 tpl/display_job_zoom.tpl.
 
-You must use brestore.pl -b to initialize the database, and
-you can use bfileview.pl mode=batch jobid=xxx where=/ to compute tree size.
+You MUST use brestore.pl -b to initialize the database, and
+you CAN use bfileview.pl mode=batch jobid=xxx where=/ to compute tree size.
 
 At this time, it's a good idea to schedule brestore.pl -b after your 
 BackupCatalog job.
@@ -258,9 +283,65 @@ To upgrade from an old installation, you can use :
 ALTER TABLE brestore_pathvisibility ADD Size int8;
 ALTER TABLE brestore_pathvisibility ADD Files int4;
 
-################ ACCESSING TO BWEB ###############################
+################ ACCESSING TO BWEB ############################
 
 Now, you are able to launch firefox/mozilla and go on
 http://your-server/bweb
 
+################ SETTING MYSQL ACCOUNT ########################
+
+At this time, Bweb needs a write access to :
+- Location 
+- LocationLog
+- Media::LocationId
+- Media::Comment
+- Media::RecyclePoolId (it will change soon)
+
+If your doesn't use Location feature, you can use ReadOnly access
+for all tables, or setup something like :
+
+GRANT SELECT ON bacula.* TO 'bweb'@'%'  IDENTIFIED BY 'password';
+GRANT INSERT,UPDATE,DELETE ON bacula.Location 
+  TO 'bweb'@'%' IDENTIFIED BY 'password';
+GRANT INSERT,UPDATE,DELETE ON bacula.LocationLog 
+  TO 'bweb'@'%' IDENTIFIED BY 'password';
+
+################ GET MORE STATISTICS ###########################
+
+You keep Jobs informations across retention into a job_old table.
+You have to setup stat_job_table = job_old in bweb configuration.
+
+CREATE TABLE job_old (LIKE Job);
+
+And run this on crontab when you want :
+INSERT INTO job_old 
+  (SELECT * FROM Job WHERE JobId NOT IN (SELECT JobId FROM job_old) );
+
+################ USE GROUPS WITH BWEB ##########################
+
+It works with postgresql and mysql5 (4 not tested).
+With mysql, load bweb/script/bweb-mysql.sql into your catalog
+For postgresql, it will be done with bweb/script/bweb-postgresql.sql (already done)
+
+################ MADE RESTORATION WITH BWEB ####################
+
+Warning, this function is not for production use at this time !
+It will do some basics things on a working bweb/brestore setup.
+
+1) Go to http://extjs.com and download their toolkit (last 1.X release)
+2) Install files in /bweb/ext web root 
+ example on debian : 
+  root@localhost:~# mv ext-1.1.1 /usr/share/bweb/html/ext
+
+3) Make sure that brestore cache tables are updated with brestore.pl
+  bacula@localhost:~$ brestore.pl -b
+
+4) Enable bresto.pl cgi. 
+  edit the bweb/cgi/bresto.pl script and change $bresto_enable=0; to $bresto_enable=1;
+  on the top of the file.
+
+4) Go on http://you-director/bweb/bresto.html
+
+################################################################
+
 Enjoy !