|
|
Bacula + MySql en Debian Sarge
(16095 lectures)
Por Elídier Moya R
lillo
(http://emoya.freeshell.org)
Creado el 21/02/2006 18:38 modificado el 21/02/2006 19:02
|
Pagina3/5 |
3.- ¿El Tape
Backup funciona apropiadamente, ahora cual programa utilizo?
Luego de analizar la idea de crear scripts propios que
realizaran los backups y de ver la documentación de varios
programas de respaldo se encontró que el que más
se ajusta a las necesidades concretas en este momento es bacula.
3.1.-
Componentes de la solución seleccionada (bacula)
Bacula está compuesto por tres programas que en
términos generales son:
bacula-director
(Encargado de dirijir el proceso de backup)
bacula-sd
(Encargado de manejar el proceso de almacenamiento)
bacula-fd
(Cliente, encargado de transmitir al director los archivos a
respaldar)
Nota: Los
clientes pueden ser computadoras corriendo Linux o incluso
otro sistema operativo.
3.2.-
Instalando los componentes
Bacula puede ser instalado utilizando diversos manejadores de base de
datos, en este caso se realizó la instalación
utilizando mysql
apt-get install bacula-director-mysql
apt-get install bacula-sd
apt-get install bacula-fd
3.2.1.-
El problema:
La instalación del primer programa (bacula-director-mysql)
tiene un error en el script de post instalación y finaliza
con un 1045 Access Denied for user root@'localhost'
using password YES
3.2.2.-
La solución:
Luego de buscar y buscar en Internet se encontró un
documento
de Iván Bao Fernández quién
había resuelto este problema. A
continuación se transcriben algunas de las líneas
del documento de Iván (Las utilizadas) y se agregan algunos
comentarios:
1. Parece
que el script de instalación no consigue acceder a MySQL
para crear algunas de las tablas necesarias. Para simplificar las
cosas, se anulan las restricciones de acceso a MySQL
añadiendo la siguiente línea en el archivo
/etc/mysql/my.cnf:
skip-grant-tables
Nota1: Está
línea debe ser agregada después de la
línea skip-external-locking, pues fue agreguada en otro
lugar y no se obtuvieron los efectos deseados.
Nota2: Esta
modificación implica dejar totalmente al descubierto MySQL.
Cualquiera podrá entrar con privilegios de
administración y hacer lo que le salga en gana. Es MUY IMPORTANTE
deshacer este cambio cuando se indique un poco más abajo.
2. Reiniciar demonio
/etc/init.d/mysql para que los cambios del paso anterior surtan efecto.
3. Ejecutar el script
/usr/share/bacula-director/make_mysql_tables. Esto creará
las tablas necesarias en la base de datos bacula ya creada por el
script de instalación.
4.Comentar o eliminar la
línea que añadimos a
/etc/mysql/my.cnf y reiniciar el demonio /etc/init.d/mysql. Esto
rehabilitará las tablas de privilegios que deshabilitamos en
el paso 1 restableciendo el control de accesos a MySQL. El siguiente
paso pretende realizar cambios sobre esta tabla, por lo que no
funcionará si no esta habilitada.
5. Añadir el usuario
bacula a mysql con todos los permisos para la base de datos bacula.
$ mysql -u root -p
$ Password:
contraseña_root
mysql> \u
mysql
mysql>
GRANT ALL privileges ON bacula.* TO bacula@localhost IDENTIFIED BY
'password_bacula';
mysql>
FLUSH PRIVILEGES;
mysql> quit
6. Anular todas las líneas
comprendidas entre las siguientes secciones (incluidas estas) en el
script de postinstalación
(/var/lib/dpkg/info/bacula-director-mysql.postinst):
db_get
bacula-director-mysql/create_tables || true
if [ "$RET" =
"true" ]; then
# Create DB
.
.
.
echo -e "GRANT
ALL privileges ON $CATALOG.* TO $MYSQL_USER@$MYSQL_HOST_URI " \
"$MYSQL_USER_PSWD_STRING;\nFLUSH
PRIVILEGES;" \
| $MYSQL -h
$MYSQL_HOST -u $MYSQL_ROOT_USER $MYSQL_PSWD_STRING mysql
fi
bacula-director-mysql/create_tables == "true"
Nota: No
olvide incluir la línea del if y el fi. Recuerde que el
caracter utilizado para anular las líneas es #
7. Reconfigurar el paquete
para que realice el resto de tareas automáticamente (# dpkg
--configure bacula-director-mysql). Aparece el siguiente mensaje de
error:
Starting Bacula
Director: 14-Sep 18:07 bacula-dir: ERROR TERMINATION at lex.c:591
Config error:
expected a string, got T_EOL: =
: line 191, col
51 of file /etc/bacula/bacula-dir.conf
dbname = bacula;
DB Address = localhost; user = ; password = ""
failed.
Importante:
El dpkg --configure ni dpkg --reconfigure funciono. Se
realizó otra vez un apt-get
install como si se estuviera instalando de nuevo para
que apareciera éste mensaje de error.
8. Modificar el archivo
/etc/bacula/bacula-dir.conf y añadir
línea
dbname=... los datos que se ajusten a los introducidos durante la
instalación:
#
Generic catalog service
Catalog {
Name = MyCatalog
dbname = bacula;
DB Address = localhost; user = bacula; password = "password_bacula"
}
9. Por
último, reinicie
los tres scripts
de bacula
/etc/init.d/bacula-director
restart
/etc/init.d/bacula-sd
restart
/etc/init.d/bacula-fd
restart
|
Paginas: <<Abreviatura Anterior 1 2 3 4 5 Abreviatura Siguiente>> |
|
|
|
|
|
|---|
|
|
|
|
Calificacion
    Vots: 18 |
Danos tu opinion:
|
|
|
|
|
|
|