Configurando um servidor de backup Bacula

Vou passar nesse artigo a experiência que obtive na implementação do sistema Bacula. Desde sua instalação à configuração. O Bacula é um sistema simples e de grande confiança para realização de seus backups.

[ Hits: 97.303 ]

Por: Johnny Tardin em 16/03/2010 | Blog: http://www.vivaolinux.com.br/perfil/verPerfil.php?login=Johnny%20Tardin


Configuração do Bacula



Primeiramente aconselho criar um link no init para sua inicialização. 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 automático não 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 privilégio de execução:

# chmod +x /etc/rc.d/bacula

Configurar sua inicialização no nível gráfico e multiusuário:

# chkconfig bacula on --level 35

Pronto, seu serviço será reiniciado. Agora, se lembra logo acima quando disse sobre o Bacula iniciar antes do banco de dados MySQL? Aqui está a solução.

Você precisa somente retardar o tempo para início do serviço, colocando um "sleep" da seguinte maneira:

# vim /etc/bacula/bacula

Edite o arquivo e coloque isso logo em seu início:

#! /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 inicialização ele levará 30 segundos para o início da execução 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 princípio para definir nome e senhas do Bacula Director.

Logo do início do arquivo defina seu nome e senha. Ele é essencial, pois somente através dessa senha que o Bacula Director fará contato.

Logo em seguida vamos a configuração 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 padrão como vem como default, o que tem a prestar atenção é no máximo 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 após você criará as devices. Nesse ponto é possível configurar o backup para ser feito em disco, DVD, fita etc. Eu aconselho criar vários devices para a organização 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
  RemovableMedia = no;
  AlwaysOpen = yes;

}

Para os diferentes tipos de mídia, o Bacula possui exemplos de configuração.

Configuração do Bacula File:

Abra o arquivo bacula-fd.conf. Esse é o arquivo que você configurará nas estações cliente, onde detém os arquivos a serem copiados.

Você precisará somente colocar o nome e senha do Director para permitir a comunicação entre o Bacula File e o Director. Logo após você deve colocar o nome para a estação cliente e gerar uma senha para ser configurada no Bacula Director para então fazer a cópia dos arquivos.

Configuração do Bacula Director

Abra o arquivo bacula-dir.conf. Como seu nome e chave foram gerados, vamos para a próxima etapa desse arquivo.

Vamos para a sessão "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 configuração de dias e horários de backup
   Client = ns01-fd # Nome dado ao cliente do bacula-fd.conf
   Messages = Standard
   FileSet = "pastasns01" #Localização 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, máximo do tamanho do volume etc

}

Logo após vamos configurar a localização das pastas que vamos copiar.

FileSet {

  Name = "pastasns01" #Copiar o nome dado logo na configuração do Job
  Include {
     Options { signature = MD5 }
     File = /etc
     File = /var/lib/named
  }

}

Para máquinas Windows a barra continua no padrão do shell, e não como é no Windows.

File = "C:/Backup"

Vamos para a configuração do "Schedule", que é responsável pela programação dos dias e hora a ser feito o backup.

Schedule {

  Name = "FullSexta"
  Run = Full fri at 03:00
  Run = Incremental sat-thu at 03:05

}

Nesse exemplo estou fazendo a configuração para que ele faça o backup de todo o conteúdo das pastas às sextas-feiras. Nos outros dias ele vai copiar somente as mudanças realizadas em arquivos e pastas.

Então 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 período de tempo em que os dados gravados serão mantidos na base de dados do catálogo. É importante ressaltar isso, pois somente dentro desse período é que o administrador poderá navegar no banco de dados e fazer a restauração dos arquivos individualmente. E por outro lado tem que se prestar atenção pois quanto maior for o período, maior ficará seu banco de dados, daí a importância da um bom período para a poda desses dados com o "Job Retention".

A "Job Retention" será o tempo em que ele os registros de backup serão mantidos na base de dados. Todos os arquivos salvos estão registrados a algum "job" realizado.

Este não poderá ser apagado nem pelo sistema nem pelo usuário. Isso será o tempo em que o trabalho será apagado do catálogo mas não será apagado os arquivos que foram copiados, neste caso ficarão disponíveis somente os detalhes sobre os trabalhos que derem certo, mas não detalhes dos arquivos que foram copiados. Nesse caso, pra um trabalho de restauração será necessário a restauração de todo o volume criado. A única forma de apagar seria via console pelo comando "Purge".

A linha "AutoPrune" será o tempo mínimo em que o volume será mantido antes de ser reutilizado. Quando esses arquivos são substituídos, os registros antigos no catálogo também são apagados.

Logo após é hora de configurar o "Storage":

Storage {

  Name = Storagens01 # Como na sessão "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                      
  AutoPrune = yes                  
  Volume Retention = 365 days        
  Maximum Volume Bytes = 100G          
  Maximum Volumes = 10
  LabelFormat = "Sec"

}

Essas opções são essenciais para a reciclagem de volumes antigos e liberando espaço para seus backups. Essas opções são importantes pois irá dizer o tempo em que terá a versão do arquivo mais velha pra restaurar, o tamanho máximo de cada volume e o número máximo de volumes a serem criados. A linha "LabelFormat" é importante pois não é necessário fazer o trabalho de montagem de volumes manualmente. Caso o tempo de retenção seja menor do que o período declarado na sessão cliente, o que terá efeito será a reciclagem.

Página anterior     Próxima página

Páginas do artigo
   1. Introdução
   2. Configuração do Bacula
   3. Considerações finais
Outros artigos deste autor
Nenhum artigo encontrado.
Leitura recomendada

Viegas Rubim RMS

HOWTO Linux para Sony Playstation 2 com HDLoader e DEV2

Instalando Ubuntu 7.04 Feisty Fawn

Configurando um servidor de FTP no OpenBSD

Habilitando som nas animações em flash no Ubuntu

  
Comentários
[1] Comentário enviado por tlperini em 24/03/2010 - 13:26h

Show de bola teu artigo!
Estava procurando um material mais resumido sobre configurações do bacula e este ficou 100%.

[2] Comentário 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 estão sendo feitos normalmente, os catalagos criados, tudo ok. a dúvida é, para passar os backups que ja foram feitos nessa maquina para uma maquina nova que acabamos de adquirir, o que eu poderia fazer? para não perder o que ja foi feito no servidor bacula antigo.

Grato!


Contato: tiago.rjonatas@gmail.com

[3] Comentário enviado por Johnny Tardin em 25/03/2010 - 11:13h

Você primeiramente transfere a configuração da máquina antiga pra nova (o bacula-dir, bacula-fd etc).
Depois você copia os backups pra lá, na mesma organização que está.
E por último você faz a restauração do banco de dados Mysql ou Postgree pra máquina nova, que ele vai ter todos os seus registros.

[4] Comentário 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 espaço no meu server, dentro de /home/backup é onde ele guarda os jobs e backups que roda na madrugada eu deletei varios para ganhar espaço após isso 3 serves ao tentar coletar o bacup das partições 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-05-05_10.22.00.02. Não é
possível encontrar todos os volumes adicionável.

Eu devo criar um volume chamado samba.2010-05-05_10.22.00.02 é isso e como crio no bconsole


[5] Comentário 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 após isso:

label

Escolha qual o seu Storage.

Após isso ele volta a gravar normalmente.

Veja esse meu artigo que eu dou uma dica de como configurar ele pra criar o label automaticamente.

Abraço

[6] Comentário enviado por parrera em 17/05/2010 - 23:51h

Muito bom seu artigo,
minha dúvida é 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 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 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
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 não 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] Comentário 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.

Abraços



[8] Comentário enviado por parrera em 18/05/2010 - 18:40h

Obrigado por ajudar Johnny, mas instalei pelo yast os pacotes:

termcap
mingw64_termcap

libncurses

Mas não achei o libterm nem libnterm.

Então 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 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 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 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 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'
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'


====== 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 bacula-fd /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 static-bconsole /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 bpipe-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 instalação e configuração do mysql?
Obrigado



[9] Comentário enviado por parrera em 18/05/2010 - 18:44h

os arquivos criados em /etc/bacula são:

*bacula-fd.conf
*bconsole.conf
*script bacula
*script bconsole
*startmysql
*stopmysql
* e um bacula~

Só isso.

[10] Comentário enviado por parrera em 18/05/2010 - 19:05h

Este erro:

configure: error: Unable to find mysql.h in standard locations

não acha este arquivo em : /home/bacula-5.0.2/src/cats/
realmente ele não consta lah.



[11] Comentário enviado por Johnny Tardin em 19/05/2010 - 00:15h

Bem, então faça o seguinte:

Instale:

termcap-devel

e


symlink

Faça isso e me retorne.

[12] Comentário 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 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 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 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
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
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: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 bacula-fd /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 static-bconsole /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 bpipe-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'

[13] Comentário enviado por parrera em 19/05/2010 - 14:46h

Parece que é o mesmo erro neh? não encontra o mysql.h

[14] Comentário enviado por Johnny Tardin em 21/05/2010 - 14:24h

Aqueles problemas das bibliotecas fantando foram resolvidos, pode reparar que não 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 permissão, e se estiver com senha seu mysql ele não acessará. Nesse caso acho que tem um comando que você passa a senha na instalação.

Mas caso não tenha senha e não 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
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'

[15] Comentário 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 dúvidas dos passos do seu tutorial? É que estou implementado-o e me sobraram algumas dúvidas.
att.

[16] Comentário 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] Comentário enviado por parrera em 09/06/2010 - 23:14h

Johnny, já consegui esclarecer todas as dúvidas acima.

Agora qnd vou iniciar o sistema, vou na máquina 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 permissão?Como posso resolvê-lo?
Obrigado

[18] Comentário enviado por Johnny Tardin em 15/06/2010 - 18:42h

Solucionado via e-mail.

[19] Comentário enviado por parrera em 17/06/2010 - 19:46h

Pessoal, estou tentando instalar o backup, o Johnny está me ajudando em algumas configurações, depois que der certo, posso postar o se deu certo, e depois disponibilizo à vocês meu caso de uso com esta ferramenta.

[20] Comentário 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, além do bacula-dir.conf?
Quais os arquivos que devem estar na máquina(cliente bacula) que faremos o backup?
Obrigado!

[21] Comentário 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 . \

Alguém sabe como posso resolver?

[22] Comentário enviado por rafatmb em 24/11/2010 - 15:19h

Parabens pelo artigo Johnny, muito bom, claro e direto.

Realmente o bacula é uma excelente ferramenta.

Abraço!

Rafael Marangoni
http://www.brlink.com.br

[23] Comentário enviado por digaovaa em 24/02/2011 - 15:39h

Boa tarde!

Estou com a seguinte situação:
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 *** são as pastas dos usuarios


não 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 não queria porque ela é muito grande...

pelo client do bacula no windows (bacula-fd) não funcionou.

Obrigado desde já.

Abraço

[24] Comentário enviado por brunovictor86 em 10/04/2012 - 12:06h

Se alguem ainda estiver com o mesmo problema do parrera, se so fazer este comando abaixo..

cd bacula-5.2.6/src/cats
cp bdb_mysql.h mysql.h

pronto..

tive outro problema tambem na hora de startar o serviço do bacula, estava dando erro neste arquivo libbaccats-5.2.6.so:
cp bacula-5.2.6/src/cats/.libs/libbaccats-5.2.6.so /lib64/ "se o seu sistema for 64 se não é so colocar no /lib/"

[25] Comentário enviado por thiago_dias em 20/09/2012 - 11:53h

Para resolver o problema do mysql.h no ubuntu, é só instalar o seguinte pacote:

apt-get install libmysqld-dev

Abraço.

[26] Comentário enviado por brunozago em 14/08/2013 - 09:30h


[16] Comentário 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.


Muito bom, funcionou de primeira após o erro !


[27] Comentário enviado por jfernandes em 31/05/2015 - 23:22h

Pessoal, sei que estou bem atrasado, mas ....
Estou com um problema de compilar o Bacula no Suse Enterprise Server 11.
Após um make, vejam o erro .
==>Entering directory /downloads/bacula-7.0.5/src/console
make[1]: Entering directory `/downloads/bacula-7.0.5/src/console'
/downloads/bacula-7.0.5/libtool --silent --tag=CXX --mode=link /usr/bin/g++ -L/usr/include/readline -L../lib -L../cats -o bconsole console.o console_conf.o authenticate.o \
-lreadline -lhistory -lncurses -lbaccfg -lbac -lm -lpthread -ldl -ldl \

/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libreadline.a when searching for -lreadline
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lreadline
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: skipping incompatible /usr/lib/libhistory.a when searching for -lhistory
/usr/lib64/gcc/x86_64-suse-linux/4.3/../../../../x86_64-suse-linux/bin/ld: cannot find -lhistory
collect2: ld returned 1 exit status
make[1]: *** [bconsole] Error 1
make[1]: Leaving directory `/downloads/bacula-7.0.5/src/console'


====== Error in /downloads/bacula-7.0.5/src/console ======


make: *** [all] Error 1
director:/downloads/bacula-7.0.5 # ls /downloads/bacula-7.0.5/src/
baconfig.h bc_types.h cats config.h dird fileopts.h findlib host.h.in jcr.h Makefile plugins stored tools
bacula.h c ch.h console filed filetypes.h host.h .indent.pro lib Makefile.in qt-console streams.h version.h

Executei um ls na pasta
director:/downloads/bacula-7.0.5 # ls /downloads/bacula-7.0.5/src/console/
authenticate.c authenticate.o bconsole.conf bconsole.conf.in conio.c conio.h console.c console_conf.c console_conf.h console_conf.o console.o func.h .libs Makefile Makefile.in
director:/downloads/bacula-7.0.5 #
Fico no aguardo.
Joel Fernandes


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts