06 may

Instalar BaculaWeb en Freebsd

Vamos a explicar como instalar una pequeña web única y exclusivamente para controlar los trabajos del servidor de bacula, esta solución básicamente los que nos ofrece es una web donde veremos como están los backups, cuantos fallaron cuantos fueron bien etc… pero de momento como os comento es a modo informativo….

Pues dicho esto vamos al lio.

Primero de todo deberemos instalar los paquetes que nos hacen falta.

Como lo vamos hacer en FreeBSD una cosa muy importante es controlar los paquetes dependientes de las X11, para evitar que nos instale “basura” si no tenemos un entorno gráfico, para evitar eso lo explico aquí

Haremos.

cd /usr/ports/
cd databases/postgresql91-server
make install clean
cd ..
cd sysutils/bacula-client
www/apache22
make install clean
cd ..
cd lang/php5
make install clean
cd ..
cd www/php5-session
make install clean
cd ..
cd devel/php5-gettext
make install clean
cd ..
cd graphics/php5-gd
make install clean
cd ..
cd sysutils/bacula-client
make install clean
cd ..
cd www/apache22
make install clean
cd ..
cd lang/php5
make install clean
cd ..
cd www/php5-session
make install clean
cd ..
cd devel/php5-gettext
make install clean
cd ..
cd graphics/php5-gd
make install clean
cd ..
cd databases/php5-mysql
make install clean
cd ..
cd databases/php5-pdo_mysql
make install clean

Es posible que durante la instalación de los paquetes tengamos un problema de dependencias con el paquete libpng-1.5.13.tar.xz, pero no os preocupéis el papi Miguel piensa en vosotros y aquí lo tenéis libpng-1.5.13, por supuesto esta en doc porque wordpress no me deja subir tar.xz, pero es un tar.xz.

Pues con esto instalado comprobamos que esta el apache arrancado y lo ponemos en el arranque automático

vi  /root/rc.confapache22_enable="YES"

Ahora solo nos queda configurar el codigo, nos lo bajamos de http://bacula-web.org/tl_files/downloads/

cd  /usr/local/www/apache22/data/wget http://bacula-web.org/tl_files/downloads/bacula-web-latest-version-number.tar.gztar -xzf bacula-web-version_number.tar.gz -C /usr/local/www/apache22/data/chown -Rv /usr/local/www/apache22/data/baculachmod -v ug+w /usr/local/www/apache22/data/bacula/application/view/cache

Bueno como veréis los pasos son triviales, lo único que debemos tener en cuenta es darle permisos de escritura al directorio cache.

Ahora vamos a configurar el chirringo este para que se comunique con bacula-dir

Utilizaremos los ficheros de ejemplo para configurarlo.

cp  /usr/local/www/apache22/data/bacula/application/config/config.php.sample /usr/local/www/apache22/data/bacula/application/config/config.php

 

$config['language'] = 'es_ES';// MySQL bacula catalog

Como vemos es bastante sencillo, cambiamos el idioma por defecto y configuramos la base de datos donde tengamos corriendo Bacula.

Una vez hecho esto ya deberíamos tener la web funcionando, iremos a la dirección siguiente

http://IPserver/bacula/test.php

Y deberíamos ver algo así.

testY si vamos a index.php, veremos las tareas y demás información que ya os dejo que la vayáis descubriendo vosotros mismos :).

Dashboard

Ale a disfrutarlo!!!

29 abr

Comprobación base de datos de Bacula DBCHECK

Vamos hablar muy rápidamente del comando dbcheck, que nos permite limpiar la base de datos de Bacula de registros que estén mal y que ya no sean útiles, por norma general esto nunca nos debería pasar ya que si todas las tareas empiezan y terminan bien, los registros deben ser correctos, aun así en ciertas situaciones con muchos Jobs y muchos clientes nos puede pasar.

La solución muy muy sencilla, utilizamos en comando DBCHECK

Tal que así,


dbcheck  -c /usr/local/etc/bacula-dir.conf -v

Con la opción -c le damos la ruta del fichero de configuración de bacula-dir, nos mostrá todas las posibles opciones.


Hello, this is the database check/correct program.
Modify database is off. Verbose is on.
Please select the function you want to perform.

1) Toggle modify database flag
2) Toggle verbose flag
3) Check for bad Filename records
4) Check for bad Path records
5) Check for duplicate Filename records
6) Check for duplicate Path records
7) Check for orphaned Jobmedia records
8) Check for orphaned File records
9) Check for orphaned Path records
10) Check for orphaned Filename records
11) Check for orphaned FileSet records
12) Check for orphaned Client records
13) Check for orphaned Job records
14) Check for all Admin records
15) Check for all Restore records
16) All (3-15)
17) Quit

La opción 16, que somos valientes.

Select function number: 16
Checking for Filenames with a trailing slash
Found 0 bad Filename records.
Checking for Paths without a trailing slash
Found 1 bad Path records.
Print them? (yes/no): yes

Checking for duplicate Filename entries.
Found 0 duplicate Filename records.
Checking for duplicate Path entries.
Found 0 duplicate Path records.
Checking for orphaned JobMedia entries.
Checking for orphaned File entries. This may take some time!
Pruning orphaned Path entries isn't possible when using BVFS.
Note. Index over the FilenameId column not found, that can greatly slow down dbcheck.
Create temporary index? (yes/no): yes
Create temporary index... This may take some time!
CREATE INDEX idxFIchk ON File (FilenameId)
Temporary index created.
Checking for orphaned Filename entries. This may take some time!
Found 300000 orphaned Filename records.
Print them? (yes/no):

Y nada vamos dándole al yes/no según creamos oportuno las preguntas que nos hace.

Ale a disfrutarlo!

29 mar

Dbcheck de la base de datos Bacula

Vamos hablar muy rapidamente del comando dbcheck, que nos permite limpiar la base de datos de Bacula de registros que esten mal y que ya no sean utiles, por norma general esto nunca nos deberia pasar ya que si todas las tareas empiezan y terminan bien, los registros deben ser correctos, aun asi en ciertas situaciones con muchos Jobs y muchos clientes nos puede pasar.

La solución muy muy sencilla, utilizamos en comando DBCHECK

Tal que así,


dbcheck  -c /usr/local/etc/bacula-dir.conf -v

Con la opción -c le damos la ruta del fichero de configuracion de bacula-dir, nos mostrá todas las posibles opciones.


Hello, this is the database check/correct program.
Modify database is off. Verbose is on.
Please select the function you want to perform.

1) Toggle modify database flag
2) Toggle verbose flag
3) Check for bad Filename records
4) Check for bad Path records
5) Check for duplicate Filename records
6) Check for duplicate Path records
7) Check for orphaned Jobmedia records
8) Check for orphaned File records
9) Check for orphaned Path records
10) Check for orphaned Filename records
11) Check for orphaned FileSet records
12) Check for orphaned Client records
13) Check for orphaned Job records
14) Check for all Admin records
15) Check for all Restore records
16) All (3-15)
17) Quit

La opción 16, que somos valientes.

Select function number: 16
Checking for Filenames with a trailing slash
Found 0 bad Filename records.
Checking for Paths without a trailing slash
Found 1 bad Path records.
Print them? (yes/no): yes

Checking for duplicate Filename entries.
Found 0 duplicate Filename records.
Checking for duplicate Path entries.
Found 0 duplicate Path records.
Checking for orphaned JobMedia entries.
Checking for orphaned File entries. This may take some time!
Pruning orphaned Path entries isn't possible when using BVFS.
Note. Index over the FilenameId column not found, that can greatly slow down dbcheck.
Create temporary index? (yes/no): yes
Create temporary index... This may take some time!
CREATE INDEX idxFIchk ON File (FilenameId)
Temporary index created.
Checking for orphaned Filename entries. This may take some time!
Found 300000 orphaned Filename records.
Print them? (yes/no):

Y nada vamos dándole al yes/no según creamos oportuno las preguntas que nos hace.

Ale a disfrutarlo!

11 mar

Resetear base de datos y ficheros de bacula

Tenemos un entrono con Bacula configurado, y nos ponemos en el supuesto que queremos resetear la base de datos con los ficheros, para empezar de nuevo.

Primero de todo vamos hacer una copia de sguridad de la base de datos, por si se nos va la mano más de la cuenta.


/usr/bin/mysqldump bacula > bacula_antes_purge.sql

Ahora pararemos bacula.
En freebsd


/usr/local/etc/rc.d/bacula-dir onestop
/usr/local/etc/rc.d/bacula-sd onestop

En debian

service bacula-director stop
service bacula-sd       stop

Después eliminamos la base de datos y la volvemos a crear

mysql -u root -p
drop database bacula;
create database bacula;
quit

Ahora solo nos queda recrear las tablas, para ello vamos a utilizar el script que nos da bacula y lo ejecutamos tal que

Dependiendo de nuestro SO, estará en un lugar u otro.

~/make_mysql_tables

Una vez finalizado, podemos si queremos eliminar los fichero de copias de seguridad y empezar de nuevo o arrancar el servicio y alinear los ficheros de copia de seguridad con el catálogo.

Primero,

service bacula-director start
service bacula-sd       start
o
service bacula-director start
service bacula-sd       start

Ahora ya tenemos el director, con la nueva base de datos, en el caso que tengamos ficheros de copia de seguridad, podemos volver a cargarlos en el catalogo tal que:

/usr/local/sbin/bscan -V nombredelVOl -v -s -m -c /usr/local/etc/bacula-sd.conf /storage/bacula/

Podemos hacer un script que nos vaya cargando los ficheros de forma sencilla, como os imaginéis en el caso de tener muchos datos, pues darle al play y echaros a dormir.

Ale a disfrutarlo