You are on page 1of 28

Instalao do Bacula no Linux Debian 4.

0
O Bacula um poderoso sistema de backup. Ao implementar esse sistema encontrei pouca documentao falando sobre instalao. Por isso escrevi esse pequeno artigo tentando explicar um pouco para os que esto com a mesma dificuldade que eu tive. Baixar e instalar todas as dependncias: # apt-get install mysql-server gcc libmysqlclient15-dev g++ make libncurses5-dev Baixe o arquivo de origem e guard-lo para a pasta raiz: # wgethttp://heanet.dl.sourceforge.net/sourceforge/bacula/bacula-2.2.6.tar.gz Extraia os arquivos compactados: # tar -xvvf bacula-2.2.6.tar.gz Compilar o arquivo de origem: # cd bacula-2.2.6 # ./configure -with-mysql # make # make install Configure o servidor MySQL a trabalhar com Bacula: # cd src/cats # ./create_mysql_database # ./make_mysql_tables # ./grant_mysql_privileges Criar e instalar os servios: # cp /etc/bacula/bacula-ctl-fd /etc/init.d/bacula-fd # cp /etc/bacula/bacula-ctl-dir /etc/init.d/bacula-director # cp /etc/bacula/bacula-ctl-sd /etc/init.d/bacula-sd # chmod 755 /etc/init.d/bacula-sd # chmod 755 /etc/init.d/bacula-fd # chmod 755 /etc/init.d/bacula-director # update-rc.d bacula-sd defaults 90 # update-rc.d bacula-fd defaults 91 # update-rc.d bacula-director defaults 92 Iniciar os servios: # /etc/init.d/bacula-sd start # /etc/init.d/bacula-fd start # /etc/init.d/bacula-director start

Introduo
O Bacula (Backup + Drcula) um sistema de backup em constante aumento de popularidade graas a divulgao de sua comunidade. J so mais de um milho de downloads segundo estatsticas do Sourceforge. Ele permite ao administrador fazer backup, gerenci-los e restaur-los atravs da rede. possvel atravs dele realizar backup de mquinas Windows e Linux, em fita ou disco.

O Bacula cumpre com o mesmo nvel solues comerciais proprietrias e distribudo sob licena GNU verso 2. Vou demonstrar como fazer o backup em Devices para armazenamento local. O Bacula tem como requisitos:
y y

MySQL ou PostgreSQL GCC-C++

Uma breve explicao sobre os principais arquivos


O Bacula utiliza-se de cinco principais componentes: Director, Console, File, Storage, e Monitor services.
y y y y y

Director: o arquivo principal para a comunicao e supervisionamento dos servios como backup, restaurao etc (bacula-dir.conf). Bacula console: o servio principal entre a o administrador e o bacula (bconsole.conf). Bacula File: o arquivo onde ser configurado nos clientes, extremamente simples (bacula-fd.conf) Bacula Storage: o arquivo responsvel pela configurao de onde ser armazenado seus dados (bacula-sd.conf). Catlogo: onde fica armazenado todo o histrico de jobs realizados, para a simplificao de quando precisar fazer uma restaurao.

Atravs desse grfico possvel entender a relao entre os arquivos.

Download e instalao do Bacula

http://www.bacula.org/en/?page=downloads

Instalao do servidor: Primeiro descompacte os arquivos. $ tar vfxz bacula-5.0.1.tar.gz Depois entre na pasta e vamos instal-lo: $ ./configure --with-mysql $ make # make install Instalao nas estaes cliente (Bacula File): $ ./configure --enable-client-only $ make # make install

Configurao do Bacula
Primeiramente aconselho criar um link no init para sua inicializao. Aconselho pois tive um problema criando no rc.d, criando um script para iniciar via rc.local, pois o daemon Bacula iniciava antes do banco de dados MySQL e assim seu processo automtico no funcionava da maneira esperada. Primeiro aconselho criar um link para o daemon Bacula, da seguinte maneira: # cd /etc/rc.d # ln -s /etc/bacula/bacula bacula Depois dar o privilgio de execuo: # chmod +x /etc/rc.d/bacula Configurar sua inicializao no nvel grfico e multiusurio: # chkconfig bacula on --level 35 Pronto, seu servio ser reiniciado. Agora, se lembra logo acima quando disse sobre o Bacula iniciar antes do banco de dados MySQL? Aqui est a soluo. Voc precisa somente retardar o tempo para incio do servio, colocando um "sleep" da seguinte maneira: # vim /etc/bacula/bacula Edite o arquivo e coloque isso logo em seu incio: #! /bin/sh # # bacula This shell script takes care of starting and stopping # the bacula daemons. # # This is pretty much watered down version of the RedHat script # that works on Solaris as well as Linux, but it won't work everywhere. # # description: It comes by night and sucks the vital essence from your computers.

# All these are not *really* needed but it makes it # easier to "steal" this code for the development # environment where they are different. # sleep 40

SCRIPTDIR=/etc/bacula

# # Com isso, em sua inicializao ele levar 30 segundos para o incio da execuo do daemon bacula. Para esse exemplo estou configurando os daemons: Bacula File, Bacula Director e Bacula Storage no servidor. Primeiro vamos abrir o arquivo bacula-dir.conf somente a princpio para definir nome e senhas do Bacula Director. Logo do incio do arquivo defina seu nome e senha. Ele essencial, pois somente atravs dessa senha que o Bacula Director far contato. Logo em seguida vamos a configurao do Storage, edite o arquivo bacula-sd.conf. Storage { # definition of myself Name = serverbackup-sd SDPort = 9103 # A porta de trabalho WorkingDirectory = "/var/bacula/working" Pid Directory = "/var/run" Maximum Concurrent Jobs = 20 Aqui eu aconselho deixar em padro como vem como default, o que tem a prestar ateno no mximo de jobs. # List Directors who are permitted to contact Storage daemon # Director { Name = serverbackup-dir Password = "dasdajkshdjkahsdukhakhduihauidhuiasd" } Aqui voc usar as credenciais e senha gerados no arquivo bacula-dir.conf. Logo aps voc criar as devices. Nesse ponto possvel configurar o backup para ser feito em disco, DVD, fita etc. Eu aconselho criar vrios devices para a organizao dos arquivos em pastas diferentes. Device { Name = Pastadearmazenamentons01# Esse nome voc usar no arquivo do Director Media Type = File Archive Device = /backup/ns01 LabelMedia = yes; # lets Bacula label unlabeled media Random Access = Yes; AutomaticMount = yes; # when device opened, read it

AlwaysOpen = yes; } Para os diferentes tipos de mdia, o Bacula possui exemplos de configurao. Configurao do Bacula File: Abra o arquivo bacula-fd.conf. Esse o arquivo que voc configurar nas estaes cliente, onde detm os arquivos a serem copiados. Voc precisar somente colocar o nome e senha do Director para permitir a comunicao entre o Bacula File e o Director. Logo aps voc deve colocar o nome para a estao cliente e gerar uma senha para ser configurada no Bacula Director para ento fazer a cpia dos arquivos.

Configurao do Bacula Director


Abra o arquivo bacula-dir.conf. Como seu nome e chave foram gerados, vamos para a prxima etapa desse arquivo. Vamos para a sesso "Job". O arquivo default vem com um job default. Mas vamos fazer um job completo sem depender dele. Job { Name = "ns01" # Nome do job Type = Backup Level = Incremental Schedule = "FullSexta" # Aqui o nome da configurao de dias e horrios de backup Client = ns01-fd # Nome dado ao cliente do bacula-fd.conf Messages = Standard FileSet = "pastasns01" #Localizao das pastas do cliente a serem copiadas. Write Bootstrap = "/var/bacula/working/ns01.bsr" Priority = 10 Storage = Storagens01 # Gerado no bacula-fd.conf, local onde ser salvo ou fita Pool = Poolns01 # Local onde ser configurado a reciclagem, mximo do tamanho do volume etc } Logo aps vamos configurar a localizao das pastas que vamos copiar. FileSet { Name = "pastasns01" #Copiar o nome dado logo na configurao do Job Include { Options { signature = MD5 } File = /etc File = /var/lib/named } } Para mquinas Windows a barra continua no padro do shell, e no como no Windows. File = "C:/Backup" Vamos para a configurao do "Schedule", que responsvel pela programao dos dias e hora a ser feito o backup. Schedule { Name = "FullSexta" Run = Full fri at 03:00

} Nesse exemplo estou fazendo a configurao para que ele faa o backup de todo o contedo das pastas s sextas-feiras. Nos outros dias ele vai copiar somente as mudanas realizadas em arquivos e pastas. Ento devemos configurar o cliente, lembre dos dados gerados no arquivo bacula-fd.conf. Client { Name = ns01-fd Address = 192.168.0.52 # Sempre opte pelo o IP aqui FDPort = 9102 Catalog = MyCatalog Password = "senhaDoFileDaemon" # password for FileDaemon File Retention = 30 days # Aqui ser o tempo em que seu backup ficar retido Job Retention = 6 months # O tempo que o trabalho ficar retido AutoPrune = yes # Prune expired Jobs/Files } A linha "File Retention" vai dizer o perodo de tempo em que os dados gravados sero mantidos na base de dados do catlogo. importante ressaltar isso, pois somente dentro desse perodo que o administrador poder navegar no banco de dados e fazer a restaurao dos arquivos individualmente. E por outro lado tem que se prestar ateno pois quanto maior for o perodo, maior ficar seu banco de dados, da a importncia da um bom perodo para a poda desses dados com o "Job Retention". A "Job Retention" ser o tempo em que ele os registros de backup sero mantidos na base de dados. Todos os arquivos salvos esto registrados a algum "job" realizado. Este no poder ser apagado nem pelo sistema nem pelo usurio. Isso ser o tempo em que o trabalho ser apagado do catlogo mas no ser apagado os arquivos que foram copiados, neste caso ficaro disponveis somente os detalhes sobre os trabalhos que derem certo, mas no detalhes dos arquivos que foram copiados. Nesse caso, pra um trabalho de restaurao ser necessrio a restaurao de todo o volume criado. A nica forma de apagar seria via console pelo comando "Purge". A linha "AutoPrune" ser o tempo mnimo em que o volume ser mantido antes de ser reutilizado. Quando esses arquivos so substitudos, os registros antigos no catlogo tambm so apagados. Logo aps hora de configurar o "Storage": Storage { Name = Storagens01 # Como na sesso "Job" acima Address = 192.168.0.2 # Opte pelo IP SDPort = 9103 Password = "SenhaDoStorage" # Senha e nome gerados no bacula-sd.conf Device = Pastadearmazenamentons01# Nome do local onde ser gravado o backup, verificar em bacula-sd.conf Media Type = File E por ltimo chegou a hora de configurar a "pool". Pool { Name = Poolns01 Pool Type = Backup Recycle = yes

Volume Retention = 365 days Maximum Volume Bytes = 100G Maximum Volumes = 10 LabelFormat = "Sec" } Essas opes so essenciais para a reciclagem de volumes antigos e liberando espao para seus backups. Essas opes so importantes pois ir dizer o tempo em que ter a verso do arquivo mais velha pra restaurar, o tamanho mximo de cada volume e o nmero mximo de volumes a serem criados. A linha "LabelFormat" importante pois no necessrio fazer o trabalho de montagem de volumes manualmente. Caso o tempo de reteno seja menor do que o perodo declarado na sesso cliente, o que ter efeito ser a reciclagem.

Consideraes finais
Bacula um pacote slido de softwares para backup, que traz todo o necessrio para salvar, restaurar e verificar as informaes atravs de uma rede de diversos computadores, inclusive trazendo a opo de armazenar dados de maneira criptografada. O Bacula tem demonstrado grande satisfao com esse meu trabalho. Fao backup de grandes arquivos, inclusive de discos virtuais Xen, eu simplesmente copio a configurao e o disco. Quando preciso restaurar somente indico o arquivo de configurao e o disco e a mquina inicia normalmente. Exemplifiquei uma configurao aqui somente bsica, existem vrios outros tipos que forem ser conferidos em sua documentao oficial. Espero ter sido claro para passar a informao e que seja til para algum que esteja lendo meu artigo. At uma prxima! << Pgina anterior Pginas do artigo 1. Introduo 2. Configurao do Bacula 3. Consideraes finais Outros artigos deste autor Nenhum artigo encontrado. Leitura recomendada Acertando automaticamente a hora e a data Resolvendo o problema de gerenciamento de energia - ACPI Configurando o X no Slackware Como configurar e instalar o VirtualBox Diagnosticando problemas variados em ambientes GNU/Linux (parte 1) Comentrios [1] Comentrio enviado por tlperini em 24/03/2010 - 13:26h: Show de bola teu artigo! Estava procurando um material mais resumido sobre configuraes do bacula e este ficou 100%. [2] Comentrio enviado por tiago.pacato em 25/03/2010 - 10:16h: Instalei o servidor bacula em uma maquina normal com hds de 250 gb, os backups esto sendo feitos normalmente, os catalagos criados, tudo ok. a dvida , para passar os backups que ja foram feitos nessa maquina para uma maquina nova que acabamos de adquirir, o que eu poderia fazer? para no perder o que ja foi feito no servidor bacula antigo.

Grato!

Contato: tiago.rjonatas@gmail.com [3] Comentrio enviado por Johnny Tardin em 25/03/2010 - 11:13h: Voc primeiramente transfere a configurao da mquina antiga pra nova (o bacula -dir, bacula-fd etc). Depois voc copia os backups pra l, na mesma organizao que est. E por ltimo voc faz a restaurao do banco de dados Mysql ou Postgree pra mquina nova, que ele vai ter todos os seus registros. [4] Comentrio enviado por LinuxTec em 05/05/2010 - 10:32h: Cara vi seu post e acho que pode me ajudar, sou iniciante com bacula e estava sem espao no meu server, dentro de /home/backup onde ele guarda os jobs e backups que roda na madrugada eu deletei varios para ganhar espao aps isso 3 serves ao tentar coletar o bacup das parties da o seguinte erro. Assunto: Bacula: Intervention needed for samba.2010-05-05_10.22.00.02 Corpo do Email: 05-May 10:22 backup-sd JobId 1632: Job samba.2010-05-05_10.22.00.02 waiting. Cannot find any appendable volumes. Please use the "label" command to create a new Volume for: Storage: "FileStorage" (/home/backup) Pool: Full-Pool-samba Media type: File

Ou seja ele diz que o trabalho foi interrompido pois, Trabalho espera samba.2010-0505_10.22.00.02. No possvel encontrar todos os volumes adicionvel. Eu devo criar um volume chamado samba.2010-05-05_10.22.00.02 isso e como crio no bconsole

[5] Comentrio enviado por Johnny Tardin em 13/05/2010 - 12:05h: Voc deve seguir os seguintes passos via terminal: Primeiro digite "bconsole" para entrar no console via terminal. Digite aps isso: label Escolha qual o seu Storage. Aps isso ele volta a gravar normalmente. Veja esse meu artigo que eu dou uma dica de como configurar ele pra criar o label automaticamente. Abrao [6] Comentrio enviado por parrera em 17/05/2010 - 23:51h: Muito bom seu artigo, minha dvida a seguinte, eu instalo o mysql no meu suse, descompacto o bacula e informo como root:

parrera:~ # cd /root/bacula-5.0.2 parrera:~/bacula-5.0.2 # ./configure --with-mysql E me retorna: checking for true... /bin/true checking for false... /bin/false configuring for Bacula 5.0.2 (28 April 2010) checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether gcc and cc understand -c and -o together... yes checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking whether gcc needs -traditional... no checking for g++... /usr/bin/g++ checking for a BSD-compatible install... /usr/bin/install -c checking for mv... /bin/mv checking for rm... /bin/rm checking for cp.../bin/cp checking for sed... /usr/bin/sed checking for echo... /bin/echo checking for cmp... /usr/bin/cmp checking for tbl... /usr/bin/tbl checking for ar... /usr/bin/ar checking for openssl... /usr/bin/openssl checking for mtx... mtx checking for dd... /bin/dd checking for mkisofs... /usr/bin/mkisofs checking for python... /usr/bin/python checking for growisofs... /usr/bin/growisofs checking for dvd+rw-mediainfo... /usr/bin/dvd+rw-mediainfo checking for dvd+rw-format... /usr/bin/dvd+rw-format checking for pkg-config... /usr/bin/pkg-config checking for qmake... none checking for gmake... /usr/bin/gmake checking for wx-config... wx-config checking for cdrecord... /usr/bin/cdrecord checking for pidof... /sbin/pidof checking for gawk... gawk checking for gawk... /usr/bin/gawk checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/x86_64-suse-linux/bin/ld checking if the linker (/usr/x86_64-suse-linux/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes

checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking for /usr/x86_64-suse-linux/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for ar... /usr/bin/ar checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking whether we are using the GNU C++ compiler... (cached) yes checking whether /usr/bin/g++ accepts -g... (cached) yes checking how to run the C++ preprocessor... /usr/bin/g++ -E checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking for ld used by /usr/bin/g++... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64 checking if the linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the /usr/bin/g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking for /usr/bin/g++ option to produce PIC... -fPIC -DPIC checking if /usr/bin/g++ PIC flag -fPIC -DPIC works... yes checking if /usr/bin/g++ static flag -static works... yes checking if /usr/bin/g++ supports -c -o file.o... yes checking if /usr/bin/g++ supports -c -o file.o... (cached) yes checking whether the /usr/bin/g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking host system type... (cached) x86_64-unknown-linux-gnu checking for Operating System Distribution... done checking whether make sets $(MAKE)... yes checking whether NLS is requested... yes checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for xgettext... no checking for msgmerge... no checking for ld used by GCC... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64

checking for shared library run path origin... done checking for CFPreferencesCopyAppValue... no checking for CFLocaleCopyCurrent... no checking whether NLS is requested... yes checking for GNU gettext in libc... yes checking whether to use NLS... yes checking where the gettext function comes from... libc checking for msgfmt... (cached) /usr/bin/msgfmt checking termcap.h usability... no checking termcap.h presence... no checking for termcap.h... no checking curses.h usability... no checking curses.h presence... no checking for curses.h... no checking term.h usability... no checking term.h presence... no checking for term.h... no Required libraries not found. CONIO turned off ... ], checking whether stat file-mode macros are broken... no checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for strcasecmp... yes checking for select... yes checking for setenv... yes checking for putenv... yes checking for tcgetattr... yes checking for lstat... yes checking for lchown... yes checking for nanosleep... yes checking for nl_langinfo... yes checking varargs.h usability... no checking varargs.h presence... no checking for varargs.h... no checking for Python support... no checking for socket... yes using libc's socket checking for OpenSSL... no checking for library containing dlopen... -ldl checking for PostgreSQL support... no checking for MySQL support... no configure: error: Unable to find mysql.h in standard locations O que est dando de errado?Ele no est configurando junto com o mysql, qnd eu informo: parrera:~/bacula-5.0.2 # make make: *** No targets specified and no makefile found. Stop. parrera:~/bacula-5.0.2 # make install make: *** No rule to make target `install'. Stop. O que pode estar havendo? Obrigado

[7] Comentrio enviado por Johnny Tardin em 18/05/2010 - 00:15h: Ol Parrera.

Pelo que observei, est faltando algumas bibliotecas. Eu verifiquei num servidor Open Suse. Instale os seguintes pacotes via Yast: termcap libcurses libterm Creio que possa resolver o seu problema. Caso d mais algum erro reporte ele aqui. Abraos

[8] Comentrio enviado por parrera em 18/05/2010 - 18:40h: Obrigado por ajudar Johnny, mas instalei pelo yast os pacotes: termcap mingw64_termcap libncurses Mas no achei o libterm nem libnterm. Ento no prompt fiz: parrera:~ # cd /root/bacula-5.0.2 parrera:~/bacula-5.0.2 # ./configure --with-mysql checking for true... /bin/true checking for false... /bin/false configuring for Bacula 5.0.2 (28 April 2010) checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether gcc and cc understand -c and -o together... yes checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking whether gcc needs -traditional... no checking for g++... /usr/bin/g++ checking for a BSD-compatible install... /usr/bin/install -c checking for mv... /bin/mv checking for rm... /bin/rm checking for cp.../bin/cp checking for sed... /usr/bin/sed

checking for cmp... /usr/bin/cmp checking for tbl... /usr/bin/tbl checking for ar... /usr/bin/ar checking for openssl... /usr/bin/openssl checking for mtx... mtx checking for dd... /bin/dd checking for mkisofs... /usr/bin/mkisofs checking for python... /usr/bin/python checking for growisofs... /usr/bin/growisofs checking for dvd+rw-mediainfo... /usr/bin/dvd+rw-mediainfo checking for dvd+rw-format... /usr/bin/dvd+rw-format checking for pkg-config... /usr/bin/pkg-config checking for qmake... none checking for gmake... /usr/bin/gmake checking for wx-config... wx-config checking for cdrecord... /usr/bin/cdrecord checking for pidof... /sbin/pidof checking for gawk... gawk checking for gawk... /usr/bin/gawk checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/x86_64-suse-linux/bin/ld checking if the linker (/usr/x86_64-suse-linux/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking for /usr/x86_64-suse-linux/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for ar... /usr/bin/ar checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking whether we are using the GNU C++ compiler... (cached) yes checking whether /usr/bin/g++ accepts -g... (cached) yes checking how to run the C++ preprocessor... /usr/bin/g++ -E checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes

checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking for ld used by /usr/bin/g++... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64 checking if the linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the /usr/bin/g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking for /usr/bin/g++ option to produce PIC... -fPIC -DPIC checking if /usr/bin/g++ PIC flag -fPIC -DPIC works... yes checking if /usr/bin/g++ static flag -static works... yes checking if /usr/bin/g++ supports -c -o file.o... yes checking if /usr/bin/g++ supports -c -o file.o... (cached) yes checking whether the /usr/bin/g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking host system type... (cached) x86_64-unknown-linux-gnu checking for Operating System Distribution... done checking whether make sets $(MAKE)... yes checking whether NLS is requested... yes checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for xgettext... no checking for msgmerge... no checking for ld used by GCC... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64 checking if the linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) is GNU ld... yes checking for shared library run path origin... done checking for CFPreferencesCopyAppValue... no checking for CFLocaleCopyCurrent... no checking whether NLS is requested... yes checking for GNU gettext in libc... yes checking whether to use NLS... yes checking where the gettext function comes from... libc checking for msgfmt... (cached) /usr/bin/msgfmt checking termcap.h usability... no checking termcap.h presence... no checking for termcap.h... no checking curses.h usability... no checking curses.h presence... no checking for curses.h... no checking term.h usability... no checking term.h presence... no checking for term.h... no Required libraries not found. CONIO turned off ... ], checking whether stat file-mode macros are broken... no checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for strcasecmp... yes checking for select... yes checking for setenv... yes checking for putenv... yes checking for tcgetattr... yes checking for lstat... yes checking for lchown... yes checking for nanosleep... yes checking for nl_langinfo... yes

checking varargs.h presence... no checking for varargs.h... no checking for Python support... no checking for socket... yes using libc's socket checking for OpenSSL... no checking for library containing dlopen... -ldl checking for PostgreSQL support... no checking for MySQL support... no configure: error: Unable to find mysql.h in standard locations parrera:~/bacula-5.0.2 # make ==>Entering directory /root/bacula-5.0.2/src make[1]: Entering directory `/root/bacula-5.0.2/src' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/src' ==>Entering directory /root/bacula-5.0.2/scripts make[1]: Entering directory `/root/bacula-5.0.2/scripts' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/scripts' ==>Entering directory /root/bacula-5.0.2/src/lib make[1]: Entering directory `/root/bacula-5.0.2/src/lib' ==== Make of lib is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/lib' ==>Entering directory /root/bacula-5.0.2/src/findlib make[1]: Entering directory `/root/bacula-5.0.2/src/findlib' ==== Make of findlib is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/findlib' ==>Entering directory /root/bacula-5.0.2/src/filed make[1]: Entering directory `/root/bacula-5.0.2/src/filed' ==== Make of filed is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/filed' ==>Entering directory /root/bacula-5.0.2/src/console make[1]: Entering directory `/root/bacula-5.0.2/src/console' ==== Make of console is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/console' ==>Entering directory /root/bacula-5.0.2/src/plugins/fd make[1]: Entering directory `/root/bacula-5.0.2/src/plugins/fd' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/src/plugins/fd' ==>Entering directory /root/bacula-5.0.2/src/cats make[1]: Entering directory `/root/bacula-5.0.2/src/cats' Compiling bvfs.c bvfs.c: In function void build_path_hierarchy(JCR*, B_DB*, pathid_cache&, char*, char*) : bvfs.c:202: error: struct B_DB has no member named path bvfs.c:220: error: sql_num_rows was not declared in this scope bvfs.c:229: error: struct B_DB has no member named path bvfs.c:230: error: struct B_DB has no member named pnl bvfs.c:230: error: struct B_DB has no member named path bvfs.c:244: error: struct B_DB has no member named path bvfs.c:255: error: struct B_DB has no member named path bvfs.c:256: error: struct B_DB has no member named fnl bvfs.c: In function void update_path_hierarchy_cache(JCR*, B_DB*, pathid_cache&, JobId_t) : bvfs.c:278: error: sql_num_rows was not declared in this scope bvfs.c:310: error: sql_num_rows was not declared in this scope bvfs.c:314: error: SQL_ROW was not declared in this scope bvfs.c:314: error: expected ; before row bvfs.c:316: error: row was not declared in this scope

bvfs.c:346: error: sql_affected_rows was not declared in this scope bvfs.c: In member function bool Bvfs::ch_dir(const char*) : bvfs.c:477: error: struct B_DB has no member named path bvfs.c:478: error: struct B_DB has no member named pnl bvfs.c:478: error: struct B_DB has no member named path bvfs.c: In member function DBId_t Bvfs::get_root() : bvfs.c:523: error: struct B_DB has no member named path bvfs.c: In member function bool Bvfs::ls_dirs() : bvfs.c:598: error: SQL_MATCH was not declared in this scope bvfs.c:653: error: struct B_DB has no member named num_rows bvfs.c: In member function bool Bvfs::ls_files() : bvfs.c:674: error: SQL_MATCH was not declared in this scope bvfs.c:702: error: struct B_DB has no member named num_rows make[1]: *** [bvfs.lo] Error 1 make[1]: Leaving directory `/root/bacula-5.0.2/src/cats'

====== Error in /root/bacula-5.0.2/src/cats ======

==>Entering directory /root/bacula-5.0.2/src/dird make[1]: Entering directory `/root/bacula-5.0.2/src/dird' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bacula-dir'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/dird'

====== Error in /root/bacula-5.0.2/src/dird ======

==>Entering directory /root/bacula-5.0.2/src/stored make[1]: Entering directory `/root/bacula-5.0.2/src/stored' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bscan'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/stored'

====== Error in /root/bacula-5.0.2/src/stored ======

==>Entering directory /root/bacula-5.0.2/src/tools make[1]: Entering directory `/root/bacula-5.0.2/src/tools' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `dbcheck'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/tools'

====== Error in /root/bacula-5.0.2/src/tools ======

==>Entering directory /root/bacula-5.0.2/manpages make[1]: Entering directory `/root/bacula-5.0.2/manpages' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/manpages' parrera:~/bacula-5.0.2 # make install ./autoconf/mkinstalldirs /sbin ./autoconf/mkinstalldirs /etc/bacula ./autoconf/mkinstalldirs /etc/bacula ./autoconf/mkinstalldirs /usr/share/doc/bacula ./autoconf/mkinstalldirs /tmp if test ! -d /var/bacula/working ; then \ ./autoconf/mkinstalldirs /var/bacula/working; \ chmod 770 /var/bacula/working; \ fi

chown /var/bacula/working; \ fi if test "x" != "x" ; then \ chgrp /var/bacula/working; \ fi make[1]: Entering directory `/root/bacula-5.0.2/src' make[1]: Nothing to be done for `install'. make[1]: Leaving directory `/root/bacula-5.0.2/src' make[1]: Entering directory `/root/bacula-5.0.2/scripts' ../autoconf/mkinstalldirs /etc/bacula ../autoconf/mkinstalldirs /sbin ../autoconf/mkinstalldirs /etc/bacula ../autoconf/mkinstalldirs /usr/share/man /usr/bin/install -c -m 0750 startmysql /etc/bacula/startmysql /usr/bin/install -c -m 0750 stopmysql /etc/bacula/stopmysql /usr/bin/install -c -m 0750 bconsole /etc/bacula/bconsole /usr/bin/install -c -m 0750 bacula /etc/bacula/bacula /usr/bin/install -c -m 0750 bacula_config /etc/bacula/bacula_config /usr/bin/install: cannot stat `bacula_config': No such file or directory make[1]: *** [install] Error 1 make[1]: Leaving directory `/root/bacula-5.0.2/scripts' make[1]: Entering directory `/root/bacula-5.0.2/src/lib' ==== Make of lib is good ==== /root/bacula-5.0.2/autoconf/mkinstalldirs /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbac.la /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbaccfg.la /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbacpy.la /usr/lib64 make[1]: Leaving directory `/root/bacula-5.0.2/src/lib' make[1]: Entering directory `/root/bacula-5.0.2/src/findlib' ==== Make of findlib is good ==== /root/bacula-5.0.2/autoconf/mkinstalldirs /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbacfind.la /usr/lib64 make[1]: Leaving directory `/root/bacula-5.0.2/src/findlib' make[1]: Entering directory `/root/bacula-5.0.2/src/filed' ==== Make of filed is good ==== /root/bacula-5.0.2/libtool --silent --tag=CXX --mode=install /usr/bin/install -c -m 0750 baculafd /sbin/bacula-fd ==> Found existing bacula-fd.conf, installing new conf file as bacula-fd.conf.new /usr/bin/install -c -m 640 bacula-fd.conf /etc/bacula/bacula-fd.conf.new make[1]: Leaving directory `/root/bacula-5.0.2/src/filed' make[1]: Entering directory `/root/bacula-5.0.2/src/console' ==== Make of console is good ==== /root/bacula-5.0.2/libtool --silent --tag=CXX --mode=install /usr/bin/install -c -m 0750 bconsole /sbin/bconsole ==> Found existing bconsole.conf, installing new conf file as bconsole.conf.new /usr/bin/install -c -m 640 bconsole.conf /etc/bacula/bconsole.conf.new if test -f static-bconsole; then \ /root/bacula-5.0.2/libtool --silent --tag=CXX --mode=install /usr/bin/install -c -m 0750 staticbconsole /sbin/static-bconsole; \ fi make[1]: Leaving directory `/root/bacula-5.0.2/src/console' make[1]: Entering directory `/root/bacula-5.0.2/src/plugins/fd' /root/bacula-5.0.2/autoconf/mkinstalldirs /usr/lib64

fd.la /usr/lib64 /bin/rm -f /usr/lib64/bpipe-fd.la make[1]: Leaving directory `/root/bacula-5.0.2/src/plugins/fd' make[1]: Entering directory `/root/bacula-5.0.2/src/cats' Compiling bvfs.c bvfs.c: In function void build_path_hierarchy(JCR*, B_DB*, pathid_cache&, char*, char*) : bvfs.c:202: error: struct B_DB has no member named path bvfs.c:220: error: sql_num_rows was not declared in this scope bvfs.c:229: error: struct B_DB has no member named path bvfs.c:230: error: struct B_DB has no member named pnl bvfs.c:230: error: struct B_DB has no member named path bvfs.c:244: error: struct B_DB has no member named path bvfs.c:255: error: struct B_DB has no member named path bvfs.c:256: error: struct B_DB has no member named fnl bvfs.c: In function void update_path_hierarchy_cache(JCR*, B_DB*, pathid_cache&, JobId_t) : bvfs.c:278: error: sql_num_rows was not declared in this scope bvfs.c:310: error: sql_num_rows was not declared in this scope bvfs.c:314: error: SQL_ROW was not declared in this scope bvfs.c:314: error: expected ; before row bvfs.c:316: error: row was not declared in this scope bvfs.c:316: error: sql_fetch_row was not declared in this scope bvfs.c:346: error: sql_affected_rows was not declared in this scope bvfs.c: In member function bool Bvfs::ch_dir(const char*) : bvfs.c:477: error: struct B_DB has no member named path bvfs.c:478: error: struct B_DB has no member named pnl bvfs.c:478: error: struct B_DB has no member named path bvfs.c: In member function DBId_t Bvfs::get_root() : bvfs.c:523: error: struct B_DB has no member named path bvfs.c: In member function bool Bvfs::ls_dirs() : bvfs.c:598: error: SQL_MATCH was not declared in this scope bvfs.c:653: error: struct B_DB has no member named num_rows bvfs.c: In member function bool Bvfs::ls_files() : bvfs.c:674: error: SQL_MATCH was not declared in this scope bvfs.c:702: error: struct B_DB has no member named num_rows make[1]: *** [bvfs.lo] Error 1 make[1]: Leaving directory `/root/bacula-5.0.2/src/cats' make[1]: Entering directory `/root/bacula-5.0.2/src/dird' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bacula-dir'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/dird' make[1]: Entering directory `/root/bacula-5.0.2/src/stored' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bscan'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/stored' make[1]: Entering directory `/root/bacula-5.0.2/src/tools' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `dbcheck'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/tools' make[1]: Entering directory `/root/bacula-5.0.2/manpages' /root/bacula-5.0.2/autoconf/mkinstalldirs //usr/share/man/man8 for I in bacula.8 bacula-dir.8 bacula-fd.8 bacula-sd.8 bconsole.8 bcopy.8 bextract.8 bls.8 bscan.8 btape.8 btraceback.8 dbcheck.8; \ do (/bin/rm -f $I.gz; gzip -c $I >$I.gz; \ /usr/bin/install -c -m 644 $I.gz /usr/share/man/man8/$I.gz; \ rm -f $I.gz); \ done /root/bacula-5.0.2/autoconf/mkinstalldirs //usr/share/man/man1 for I in bacula-tray-monitor.1 bacula-bwxconsole.1 bsmtp.1 bat.1; \ do (/bin/rm -f $I.gz; gzip -c $I >$I.gz; \ /usr/bin/install -c -m 644 $I.gz /usr/share/man/man1/$I.gz; \ rm -f $I.gz); \ done make[1]: Leaving directory `/root/bacula-5.0.2/manpages'

O que ser que est dando de errado?O mysql tem que estar rodando antes de eu fazer o comnado (./configure --with-mysql)? Ser que erro de instalao e configurao do mysql? Obrigado

[9] Comentrio enviado por parrera em 18/05/2010 - 18:44h: os arquivos criados em /etc/bacula so: *bacula-fd.conf *bconsole.conf *script bacula *script bconsole *startmysql *stopmysql * e um bacula~ S isso. [10] Comentrio enviado por parrera em 18/05/2010 - 19:05h: Este erro: configure: error: Unable to find mysql.h in standard locations no acha este arquivo em : /home/bacula-5.0.2/src/cats/ realmente ele no consta lah.

[11] Comentrio enviado por Johnny Tardin em 19/05/2010 - 00:15h: Bem, ento faa o seguinte: Instale: termcap-devel e

symlink Faa isso e me retorne. [12] Comentrio enviado por parrera em 19/05/2010 - 14:17h: Certo instalei esses 2 e fiz: parrera:~ # cd /root/bacula-5.0.2 parrera:~/bacula-5.0.2 # ./configure --with-mysql checking for true... /bin/true checking for false... /bin/false configuring for Bacula 5.0.2 (28 April 2010) checking for gcc... gcc checking for C compiler default output file name... a.out checking whether the C compiler works... yes checking whether we are cross compiling... no checking for suffix of executables... checking for suffix of object files... o checking whether we are using the GNU C compiler... yes

checking for gcc option to accept ISO C89... none needed checking for g++... g++ checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking whether gcc and cc understand -c and -o together... yes checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /usr/bin/grep checking for egrep... /usr/bin/grep -E checking whether gcc needs -traditional... no checking for g++... /usr/bin/g++ checking for a BSD-compatible install... /usr/bin/install -c checking for mv... /bin/mv checking for rm... /bin/rm checking for cp.../bin/cp checking for sed... /usr/bin/sed checking for echo... /bin/echo checking for cmp... /usr/bin/cmp checking for tbl... /usr/bin/tbl checking for ar... /usr/bin/ar checking for openssl... /usr/bin/openssl checking for mtx... mtx checking for dd... /bin/dd checking for mkisofs... /usr/bin/mkisofs checking for python... /usr/bin/python checking for growisofs... /usr/bin/growisofs checking for dvd+rw-mediainfo... /usr/bin/dvd+rw-mediainfo checking for dvd+rw-format... /usr/bin/dvd+rw-format checking for pkg-config... /usr/bin/pkg-config checking for qmake... none checking for gmake... /usr/bin/gmake checking for wx-config... wx-config checking for cdrecord... /usr/bin/cdrecord checking for pidof... /sbin/pidof checking for gawk... gawk checking for gawk... /usr/bin/gawk checking build system type... x86_64-unknown-linux-gnu checking host system type... x86_64-unknown-linux-gnu checking for a sed that does not truncate output... (cached) /usr/bin/sed checking for fgrep... /usr/bin/grep -F checking for ld used by gcc... /usr/x86_64-suse-linux/bin/ld checking if the linker (/usr/x86_64-suse-linux/bin/ld) is GNU ld... yes checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B checking the name lister (/usr/bin/nm -B) interface... BSD nm checking whether ln -s works... yes checking the maximum length of command line arguments... 1572864 checking whether the shell understands some XSI constructs... yes checking whether the shell understands "+="... yes checking for /usr/x86_64-suse-linux/bin/ld option to reload object files... -r checking for objdump... objdump checking how to recognize dependent libraries... pass_all checking for ar... /usr/bin/ar checking for strip... strip checking for ranlib... ranlib checking command to parse /usr/bin/nm -B output from gcc object... ok checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes

checking for stdint.h... yes checking for unistd.h... yes checking for dlfcn.h... yes checking whether we are using the GNU C++ compiler... (cached) yes checking whether /usr/bin/g++ accepts -g... (cached) yes checking how to run the C++ preprocessor... /usr/bin/g++ -E checking for objdir... .libs checking if gcc supports -fno-rtti -fno-exceptions... no checking for gcc option to produce PIC... -fPIC -DPIC checking if gcc PIC flag -fPIC -DPIC works... yes checking if gcc static flag -static works... yes checking if gcc supports -c -o file.o... yes checking if gcc supports -c -o file.o... (cached) yes checking whether the gcc linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking whether -lc should be explicitly linked in... no checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking whether stripping libraries is possible... yes checking if libtool supports shared libraries... yes checking whether to build shared libraries... yes checking whether to build static libraries... no checking for ld used by /usr/bin/g++... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64 checking if the linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) is GNU ld... yes checking whether the /usr/bin/g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking for /usr/bin/g++ option to produce PIC... -fPIC -DPIC checking if /usr/bin/g++ PIC flag -fPIC -DPIC works... yes checking if /usr/bin/g++ static flag -static works... yes checking if /usr/bin/g++ supports -c -o file.o... yes checking if /usr/bin/g++ supports -c -o file.o... (cached) yes checking whether the /usr/bin/g++ linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) supports shared libraries... yes checking dynamic linker characteristics... GNU/Linux ld.so checking how to hardcode library paths into programs... immediate checking host system type... (cached) x86_64-unknown-linux-gnu checking for Operating System Distribution... done checking whether make sets $(MAKE)... yes checking whether NLS is requested... yes checking for msgfmt... /usr/bin/msgfmt checking for gmsgfmt... /usr/bin/msgfmt checking for xgettext... no checking for msgmerge... no checking for ld used by GCC... /usr/x86_64-suse-linux/bin/ld -m elf_x86_64 checking if the linker (/usr/x86_64-suse-linux/bin/ld -m elf_x86_64) is GNU ld... yes checking for shared library run path origin... done checking for CFPreferencesCopyAppValue... no checking for CFLocaleCopyCurrent... no checking whether NLS is requested... yes checking for GNU gettext in libc... yes checking whether to use NLS... yes checking where the gettext function comes from... libc checking for msgfmt... (cached) /usr/bin/msgfmt checking termcap.h usability... no checking termcap.h presence... no checking for termcap.h... no checking curses.h usability... no checking curses.h presence... no checking for curses.h... no checking term.h usability... no checking term.h presence... no

Required libraries not found. CONIO turned off ... ], checking whether stat file-mode macros are broken... no checking for dirent.h that defines DIR... yes checking for library containing opendir... none required checking for strcasecmp... yes checking for select... yes checking for setenv... yes checking for putenv... yes checking for tcgetattr... yes checking for lstat... yes checking for lchown... yes checking for nanosleep... yes checking for nl_langinfo... yes checking varargs.h usability... no checking varargs.h presence... no checking for varargs.h... no checking for Python support... no checking for socket... yes using libc's socket checking for OpenSSL... no checking for library containing dlopen... -ldl checking for PostgreSQL support... no checking for MySQL support... no configure: error: Unable to find mysql.h in standard locations parrera:~/bacula-5.0.2 # make ==>Entering directory /root/bacula-5.0.2/src make[1]: Entering directory `/root/bacula-5.0.2/src' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/src' ==>Entering directory /root/bacula-5.0.2/scripts make[1]: Entering directory `/root/bacula-5.0.2/scripts' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/scripts' ==>Entering directory /root/bacula-5.0.2/src/lib make[1]: Entering directory `/root/bacula-5.0.2/src/lib' ==== Make of lib is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/lib' ==>Entering directory /root/bacula-5.0.2/src/findlib make[1]: Entering directory `/root/bacula-5.0.2/src/findlib' ==== Make of findlib is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/findlib' ==>Entering directory /root/bacula-5.0.2/src/filed make[1]: Entering directory `/root/bacula-5.0.2/src/filed' ==== Make of filed is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/filed' ==>Entering directory /root/bacula-5.0.2/src/console make[1]: Entering directory `/root/bacula-5.0.2/src/console' ==== Make of console is good ==== make[1]: Leaving directory `/root/bacula-5.0.2/src/console' ==>Entering directory /root/bacula-5.0.2/src/plugins/fd make[1]: Entering directory `/root/bacula-5.0.2/src/plugins/fd' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/src/plugins/fd' ==>Entering directory /root/bacula-5.0.2/src/cats make[1]: Entering directory `/root/bacula-5.0.2/src/cats'

bvfs.c: In function void build_path_hierarchy(JCR*, B_DB*, pathid_cache&, char*, char*) : bvfs.c:202: error: struct B_DB has no member named path bvfs.c:220: error: sql_num_rows was not declared in this scope bvfs.c:229: error: struct B_DB has no member named path bvfs.c:230: error: struct B_DB has no member named pnl bvfs.c:230: error: struct B_DB has no member named path bvfs.c:244: error: struct B_DB has no member named path bvfs.c:255: error: struct B_DB has no member named path bvfs.c:256: error: struct B_DB has no member named fnl bvfs.c: In function void update_path_hierarchy_cache(JCR*, B_DB*, pathid_cache&, JobId_t) : bvfs.c:278: error: sql_num_rows was not declared in this scope bvfs.c:310: error: sql_num_rows was not declared in this scope bvfs.c:314: error: SQL_ROW was not declared in this scope bvfs.c:314: error: expected ; before row bvfs.c:316: error: row was not declared in this scope bvfs.c:316: error: sql_fetch_row was not declared in this scope bvfs.c:346: error: sql_affected_rows was not declared in this scope bvfs.c: In member function bool Bvfs::ch_dir(const char*) : bvfs.c:477: error: struct B_DB has no member named path bvfs.c:478: error: struct B_DB has no member named pnl bvfs.c:478: error: struct B_DB has no member named path bvfs.c: In member function DBId_t Bvfs::get_root() : bvfs.c:523: error: struct B_DB has no member named path bvfs.c: In member function bool Bvfs::ls_dirs() : bvfs.c:598: error: SQL_MATCH was not declared in this scope bvfs.c:653: error: struct B_DB has no member named num_rows bvfs.c: In member function bool Bvfs::ls_files() : bvfs.c:674: error: SQL_MATCH was not declared in this scope bvfs.c:702: error: struct B_DB has no member named num_rows make[1]: *** [bvfs.lo] Error 1 make[1]: Leaving directory `/root/bacula-5.0.2/src/cats'

====== Error in /root/bacula-5.0.2/src/cats ======

==>Entering directory /root/bacula-5.0.2/src/dird make[1]: Entering directory `/root/bacula-5.0.2/src/dird' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bacula-dir'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/dird'

====== Error in /root/bacula-5.0.2/src/dird ======

==>Entering directory /root/bacula-5.0.2/src/stored make[1]: Entering directory `/root/bacula-5.0.2/src/stored' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bscan'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/stored'

====== Error in /root/bacula-5.0.2/src/stored ======

==>Entering directory /root/bacula-5.0.2/src/tools make[1]: Entering directory `/root/bacula-5.0.2/src/tools' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `dbcheck'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/tools'

====== Error in /root/bacula-5.0.2/src/tools ======

==>Entering directory /root/bacula-5.0.2/manpages make[1]: Entering directory `/root/bacula-5.0.2/manpages' make[1]: Nothing to be done for `all'. make[1]: Leaving directory `/root/bacula-5.0.2/manpages' parrera:~/bacula-5.0.2 # make install ./autoconf/mkinstalldirs /sbin ./autoconf/mkinstalldirs /etc/bacula ./autoconf/mkinstalldirs /etc/bacula ./autoconf/mkinstalldirs /usr/share/doc/bacula ./autoconf/mkinstalldirs /tmp if test ! -d /var/bacula/working ; then \ ./autoconf/mkinstalldirs /var/bacula/working; \ chmod 770 /var/bacula/working; \ fi if test "x" != "x" ; then \ chown /var/bacula/working; \ fi if test "x" != "x" ; then \ chgrp /var/bacula/working; \ fi make[1]: Entering directory `/root/bacula-5.0.2/src' make[1]: Nothing to be done for `install'. make[1]: Leaving directory `/root/bacula-5.0.2/src' make[1]: Entering directory `/root/bacula-5.0.2/scripts' ../autoconf/mkinstalldirs /etc/bacula ../autoconf/mkinstalldirs /sbin ../autoconf/mkinstalldirs /etc/bacula ../autoconf/mkinstalldirs /usr/share/man /usr/bin/install -c -m 0750 startmysql /etc/bacula/startmysql /usr/bin/install -c -m 0750 stopmysql /etc/bacula/stopmysql /usr/bin/install -c -m 0750 bconsole /etc/bacula/bconsole /usr/bin/install -c -m 0750 bacula /etc/bacula/bacula /usr/bin/install -c -m 0750 bacula_config /etc/bacula/bacula_config /usr/bin/install: cannot stat `bacula_config': No such file or directory make[1]: *** [install] Error 1 make[1]: Leaving directory `/root/bacula-5.0.2/scripts' make[1]: Entering directory `/root/bacula-5.0.2/src/lib' ==== Make of lib is good ==== /root/bacula-5.0.2/autoconf/mkinstalldirs /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbac.la /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbaccfg.la /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbacpy.la /usr/lib64 make[1]: Leaving directory `/root/bacula-5.0.2/src/lib' make[1]: Entering directory `/root/bacula-5.0.2/src/findlib' ==== Make of findlib is good ==== /root/bacula-5.0.2/autoconf/mkinstalldirs /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --finish --mode=install /usr/bin/install -c -m 0750 libbacfind.la /usr/lib64 make[1]: Leaving directory `/root/bacula-5.0.2/src/findlib' make[1]: Entering directory `/root/bacula-5.0.2/src/filed' ==== Make of filed is good ==== /root/bacula-5.0.2/libtool --silent --tag=CXX --mode=install /usr/bin/install -c -m 0750 baculafd /sbin/bacula-fd ==> Found existing bacula-fd.conf, installing new conf file as bacula-fd.conf.new

make[1]: Leaving directory `/root/bacula-5.0.2/src/filed' make[1]: Entering directory `/root/bacula-5.0.2/src/console' ==== Make of console is good ==== /root/bacula-5.0.2/libtool --silent --tag=CXX --mode=install /usr/bin/install -c -m 0750 bconsole /sbin/bconsole ==> Found existing bconsole.conf, installing new conf file as bconsole.conf.new /usr/bin/install -c -m 640 bconsole.conf /etc/bacula/bconsole.conf.new if test -f static-bconsole; then \ /root/bacula-5.0.2/libtool --silent --tag=CXX --mode=install /usr/bin/install -c -m 0750 staticbconsole /sbin/static-bconsole; \ fi make[1]: Leaving directory `/root/bacula-5.0.2/src/console' make[1]: Entering directory `/root/bacula-5.0.2/src/plugins/fd' /root/bacula-5.0.2/autoconf/mkinstalldirs /usr/lib64 /root/bacula-5.0.2/libtool --silent --tag=CXX --mode=install /usr/bin/install -c -m 0750 bpipefd.la /usr/lib64 /bin/rm -f /usr/lib64/bpipe-fd.la make[1]: Leaving directory `/root/bacula-5.0.2/src/plugins/fd' make[1]: Entering directory `/root/bacula-5.0.2/src/cats' Compiling bvfs.c bvfs.c: In function void build_path_hierarchy(JCR*, B_DB*, pathid_cache&, char*, char*) : bvfs.c:202: error: struct B_DB has no member named path bvfs.c:220: error: sql_num_rows was not declared in this scope bvfs.c:229: error: struct B_DB has no member named path bvfs.c:230: error: struct B_DB has no member named pnl bvfs.c:230: error: struct B_DB has no member named path bvfs.c:244: error: struct B_DB has no member named path bvfs.c:255: error: struct B_DB has no member named path bvfs.c:256: error: struct B_DB has no member named fnl bvfs.c: In function void update_path_hierarchy_cache(JCR*, B_DB*, pathid_cache&, JobId_t) : bvfs.c:278: error: sql_num_rows was not declared in this scope bvfs.c:310: error: sql_num_rows was not declared in this scope bvfs.c:314: error: SQL_ROW was not declared in this scope bvfs.c:314: error: expected ; before row bvfs.c:316: error: row was not declared in this scope bvfs.c:316: error: sql_fetch_row was not declared in this scope bvfs.c:346: error: sql_affected_rows was not declared in this scope bvfs.c: In member function bool Bvfs::ch_dir(const char*) : bvfs.c:477: error: struct B_DB has no member named path bvfs.c:478: error: struct B_DB has no member named pnl bvfs.c:478: error: struct B_DB has no member named path bvfs.c: In member function DBId_t Bvfs::get_root() : bvfs.c:523: error: struct B_DB has no member named path bvfs.c: In member function bool Bvfs::ls_dirs() : bvfs.c:598: error: SQL_MATCH was not declared in this scope bvfs.c:653: error: struct B_DB has no member named num_rows bvfs.c: In member function bool Bvfs::ls_files() : bvfs.c:674: error: SQL_MATCH was not declared in this scope bvfs.c:702: error: struct B_DB has no member named num_rows make[1]: *** [bvfs.lo] Error 1 make[1]: Leaving directory `/root/bacula-5.0.2/src/cats' make[1]: Entering directory `/root/bacula-5.0.2/src/dird' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bacula-dir'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/dird' make[1]: Entering directory `/root/bacula-5.0.2/src/stored' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `bscan'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/stored' make[1]: Entering directory `/root/bacula-5.0.2/src/tools' make[1]: *** No rule to make target `../cats/libbacsql.la', needed by `dbcheck'. Stop. make[1]: Leaving directory `/root/bacula-5.0.2/src/tools'

/root/bacula-5.0.2/autoconf/mkinstalldirs //usr/share/man/man8 for I in bacula.8 bacula-dir.8 bacula-fd.8 bacula-sd.8 bconsole.8 bcopy.8 bextract.8 bls.8 bscan.8 btape.8 btraceback.8 dbcheck.8; \ do (/bin/rm -f $I.gz; gzip -c $I >$I.gz; \ /usr/bin/install -c -m 644 $I.gz /usr/share/man/man8/$I.gz; \ rm -f $I.gz); \ done /root/bacula-5.0.2/autoconf/mkinstalldirs //usr/share/man/man1 for I in bacula-tray-monitor.1 bacula-bwxconsole.1 bsmtp.1 bat.1; \ do (/bin/rm -f $I.gz; gzip -c $I >$I.gz; \ /usr/bin/install -c -m 644 $I.gz /usr/share/man/man1/$I.gz; \ rm -f $I.gz); \ done make[1]: Leaving directory `/root/bacula-5.0.2/manpages' [13] Comentrio enviado por parrera em 19/05/2010 - 14:46h: Parece que o mesmo erro neh? no encontra o mysql.h [14] Comentrio enviado por Johnny Tardin em 21/05/2010 - 14:24h: Aqueles problemas das bibliotecas fantando foram resolvidos, pode reparar queno h mais o erro com elas. O problema principal est nestas linhas abaixo, que parece ser algo relacionado ao Mysql sim. Voc tem algum banco de dados rodando j nele? Se tiver, o seu root est com senha? Pode ser que pra ele criar o banco tenha que ter permisso, e se estiver com senha seu mysql ele no acessar. Nesse caso acho que tem um comando que voc passa a senha na instalao. Mas caso no tenha senha e no tenha nenhum banco instalado, eu recomendaria voc reinstalar seu mysql, uma chance de resolver algo relacionado.

Compiling bvfs.c bvfs.c: In function void build_path_hierarchy(JCR*, B_DB*, pathid_cache&, char*, char*) : bvfs.c:202: error: struct B_DB has no member named path bvfs.c:220: error: sql_num_rows was not declared in this scope bvfs.c:229: error: struct B_DB has no member named path bvfs.c:230: error: struct B_DB has no member named pnl bvfs.c:230: error: struct B_DB has no member named path bvfs.c:244: error: struct B_DB has no member named path bvfs.c:255: error: struct B_DB has no member named path bvfs.c:256: error: struct B_DB has no member named fnl bvfs.c: In function void update_path_hierarchy_cache(JCR*, B_DB*, pathid_cache&, JobId_t) : bvfs.c:278: error: sql_num_rows was not declared in this scope bvfs.c:310: error: sql_num_rows was not declared in this scope bvfs.c:314: error: SQL_ROW was not declared in this scope bvfs.c:314: error: expected ; before row bvfs.c:316: error: row was not declared in this scope bvfs.c:316: error: sql_fetch_row was not declared in this scope bvfs.c:346: error: sql_affected_rows was not declared in this scope bvfs.c: In member function bool Bvfs::ch_dir(const char*) : bvfs.c:477: error: struct B_DB has no member named path bvfs.c:478: error: struct B_DB has no member named pnl bvfs.c:478: error: struct B_DB has no member named path bvfs.c: In member function DBId_t Bvfs::get_root() : bvfs.c:523: error: struct B_DB has no member named path bvfs.c: In member function bool Bvfs::ls_dirs() : bvfs.c:598: error: SQL_MATCH was not declared in this scope bvfs.c:653: error: struct B_DB has no member named num_rows bvfs.c: In member function bool Bvfs::ls_files() : bvfs.c:674: error: SQL_MATCH was not declared in this scope

make[1]: *** [bvfs.lo] Error 1 make[1]: Leaving directory `/root/bacula-5.0.2/src/cats' [15] Comentrio enviado por parrera em 27/05/2010 - 13:39h: Vlw ae Johnny! reinstalei meu mysql e est td nos conformes. Posso te enviar um e-mail com algumas dvidas dos passos do seu tutorial? que estou implementado-o e me sobraram algumas dvidas. att. [16] Comentrio enviado por sandrocarva em 28/05/2010 - 10:06h: Salve... Para corrigir o problema do mysql : "configure: error: Unable to find mysql.h in standard locations" Instala o mysql-devel. Att. [17] Comentrio enviado por parrera em 09/06/2010 - 23:14h: Johnny, j consegui esclarecer todas as dvidas acima. Agora qnd vou iniciar o sistema, vou na mquina aonde instalei e configurei o servidor bacula e informo: parrera:~ # bacula-dir 14-Jun 15:14 bacula-dir: ERROR TERMINATION at run_conf.c:559 Config error: Invalid month, weekday or position range : line 92, col 27 of file /etc/bacula/bacula-dir.conf Run = Incremental 2nd-6th Monday at 8:00pm O que pode ser esse erro? de permisso?Como posso resolv-lo? Obrigado [18] Comentrio enviado por Johnny Tardin em 15/06/2010 - 18:42h: Solucionado via e-mail. [19] Comentrio enviado por parrera em 17/06/2010 - 19:46h: Pessoal, estou tentando instalar o backup, o Johnny est me ajudando em algumas configuraes, depois que der certo, posso postar o se deu certo, e depois disponibilizo vocs meu caso de uso com esta ferramenta. [20] Comentrio enviado por parrera em 01/07/2010 - 09:28h: No meu caso o servidor bacula, possui 3 arquivos que devem ser editados: bacula -sd.conf e bacula-fd.conf, alm do bacula-dir.conf? Quais os arquivos que devem estar na mquina(cliente bacula) que faremos o backup? Obrigado! [21] Comentrio enviado por alpcarrara em 03/09/2010 - 17:11h: Boa tarde, tenho tentado instalar o bacula no meu OpenSuse 11.2, quando executo o ./configure --with-mysql ocorre o erro de loop no final, como segue: && CONFIG_FILES=./Makefile CONFIG_HEADERS= /bin/sh ./config.status config.status: creating ./Makefile config.status: executing libtool commands config.status: executing default-1 commands config.status: executing default commands cd . \ Algum sabe como posso resolver?

Parabens pelo artigo Johnny, muito bom, claro e direto. Realmente o bacula uma excelente ferramenta. Abrao! Rafael Marangoni http://www.brlink.com.br [23] Comentrio enviado por digaovaa em 24/02/2011 - 15:39h: Boa tarde! Estou com a seguinte situao: A - Servidor linux ubuntu 10.04 com uma unidade de fita LTO-3 Ultrium IBM B - Servidor Windows Server 2008 como File Server No servidor B tenho assim: G:\Documentos\*** onde *** so as pastas dos usuarios

no estou conseguindo fazer o backup na fita no servidor A.. Tem alguma forma de fazer o backup da pasta pela rede? exemplo sbm://servidorB/Documentos montar essa pasta no queria porque ela muito grande... pelo client do bacula no windows (bacula-fd) no funcionou.