{"id":870,"date":"2014-06-08T18:42:45","date_gmt":"2014-06-08T21:42:45","guid":{"rendered":"http:\/\/www.viazap.com.br\/?p=870"},"modified":"2014-06-08T18:42:45","modified_gmt":"2014-06-08T21:42:45","slug":"bacula-server-7-0-3-com-postgresql-no-debian","status":"publish","type":"post","link":"https:\/\/blog.clusterweb.com.br\/?p=870","title":{"rendered":"Bacula Server 7.0.3 com PostgreSQL no Debian"},"content":{"rendered":"<table border=\"0\" width=\"100%\" cellspacing=\"3\" cellpadding=\"3\">\n<tbody>\n<tr>\n<td colspan=\"2\"><b>Introdu\u00e7\u00e3o ao Bacula Server e instala\u00e7\u00e3o do PostgreSQL<\/b><\/p>\n<div>\n<p>O\u00a0<em>Bacula<\/em>\u00a0\u00e9 um software de backup em rede, baseado em tr\u00eas m\u00f3dulos:<\/p>\n<ul>\n<li>Bacula-DIR\u00a0:: Que \u00e9 o daemon que ir\u00e1 executar, catalogar, agendar etc&#8230; os backups dos clientes.<\/li>\n<li>Bacula-FD\u00a0:: \u00c9 o daemon cliente, ou seja, de quem iremos fazer o backup.<\/li>\n<li>Bacula-SD\u00a0:: \u00c9 o daemon de Storage, \u00e9 onde o Director ir\u00e1 criar os volumes, para que os clientes &#8220;despejem&#8221; seus arquivos.<\/li>\n<\/ul>\n<p>Basicamente, o Bacula-DIR diz pro Bacula-FD: &#8220;envie para o Bacula-SD o conte\u00fado dos diret\u00f3rios \/X \/Y \/Z&#8221;.<\/p>\n<p>Claro, tudo isso de uma forma bem mais complexa. Ent\u00e3o, m\u00e3os na massa.<\/p>\n<p>Considerando que temos o\u00a0<em>Debian<\/em>\u00a0j\u00e1 instalado, instalaremos o PostgreSQL via reposit\u00f3rio:<!--more--><\/p>\n<p><strong># apt-get install postgresql-9.1 postgresql-contrib-9.1 postgresql-server-dev-9.1<\/strong><\/p>\n<p>Ap\u00f3s instalado, como usu\u00e1rio postgres:<\/p>\n<p><strong># su postgres<\/strong><\/p>\n<p>Vamos adicionar uma senha para o usu\u00e1rio\u00a0postgres, do servidor PostgreSQL:<\/p>\n<p><strong>$ psql<\/strong><br \/>\npostgres=#\u00a0<strong>alter user postgres with password &#8216;postgres&#8217;;<\/strong><\/p>\n<p>Para sair do terminal do\u00a0psql:<\/p>\n<p>postgres=#\u00a0<strong>\\q<\/strong><\/p>\n<p>Retorne ao usu\u00e1rio root e vamos editar alguns par\u00e2metros dos arquivos de configura\u00e7\u00e3o do PostgreSQL.<\/p>\n<p>No arquivo\u00a0\/etc\/postgresql\/9.1\/main\/pga_hba.conf, edite as seguintes linhas para deix\u00e1-las como abaixo:<\/p>\n<div class=\"codigo\"><span class=\"comentario\"># Database administrative login by Unix domain socket<\/span><br \/>\nlocal\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 postgres\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0md5<span class=\"comentario\"># TYPE\u00a0DATABASE\u00a0\u00a0\u00a0\u00a0USER\u00a0\u00a0\u00a0\u00a0ADDRESS\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0METHOD<\/span><\/p>\n<p># &#8220;local&#8221; is for Unix domain socket connections only<\/p>\n<p>local\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 md5<\/p>\n<p><span class=\"comentario\"># IPv4 local connections:<\/span><br \/>\nhost\u00a0\u00a0all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0 127.0.0.1\/32\u00a0\u00a0\u00a0\u00a0md5<br \/>\nhost\u00a0\u00a0all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0 0.0.0.0\/0\u00a0\u00a0\u00a0\u00a0\u00a0 md5<\/p>\n<p><span class=\"comentario\"># IPv6 local connections:<\/span><br \/>\nhost\u00a0\u00a0all\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 all\u00a0\u00a0\u00a0\u00a0 ::1\/128\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0 md5<\/p>\n<\/div>\n<p>E, no arquivo\u00a0\/etc\/postgresql\/9.1\/main\/postgresql.conf, edite a linha a seguir e deixe-a como abaixo:<\/p>\n<div class=\"codigo\">listen_addresses = &#8216;*&#8217;\u00a0\u00a0\u00a0\u00a0\u00a0<span class=\"comentario\"># what IP address(es) to listen on;<\/span><\/div>\n<p>Feito isso, reinicie o servi\u00e7o do PostgreSQL e tente uma conex\u00e3o com o banco de dados com o usu\u00e1rio root:<\/p>\n<p><strong># service postgresql restart<br \/>\n# psql -Upostgres -W<\/strong><\/p>\n<p>Se voc\u00ea logar no terminal do\u00a0psql, pode sair do mesmo com o comando:<\/p>\n<p>postgres=#\u00a0<strong>\\q<\/strong><\/p>\n<p>Na pr\u00f3xima p\u00e1gina, vamos para a instala\u00e7\u00e3o das depend\u00eancias do Bacula e a sua compila\u00e7\u00e3o.<\/p>\n<\/div>\n<\/td>\n<\/tr>\n<tr>\n<td colspan=\"2\"><b>Instala\u00e7\u00e3o de pacotes adicionais e compila\u00e7\u00e3o do Bacula<\/b><\/p>\n<div>\n<p>Para que o possamos compilar o Bacula de forma &#8220;correta&#8221;, teremos que instalar algumas depend\u00eancias antes:<\/p>\n<p><strong># apt-get install vim openssl make gcc build-essential libssl-dev libpq5 perl unp mc libqwt5-qt4-dev<\/strong><\/p>\n<p>E, em seguida, para habilitar o auto-complete no Bacula instalado por compila\u00e7\u00e3o, vamos instalar os seguintes pacotes, via reposit\u00f3rio:<\/p>\n<p><strong># apt-get install libreadline6 libreadline6-dbg libreadline-gplv2-dev<\/strong><\/p>\n<p>Confirme que foram criados os arquivos\u00a0history.h\u00a0e\u00a0readline.h\u00a0no diret\u00f3rio\u00a0\/usr\/include\/readline.<\/p>\n<p>Considerando que voc\u00ea j\u00e1 tenha o PostgreSQL rodando em perfeito estado e o readline tamb\u00e9m, iremos fazer o download da \u00faltima vers\u00e3o do Bacula, em:<\/p>\n<ul>\n<li><a href=\"http:\/\/sourceforge.net\/projects\/bacula\/files\/#files\">http:\/\/sourceforge.net\/projects\/bacula\/files\/#files<\/a><\/li>\n<\/ul>\n<p>Descompacte o arquivo\u00a0.tar.gz\u00a0do Bacula em um diret\u00f3rio de sua prefer\u00eancia:<\/p>\n<p><strong># tar -zxvf bacula-7.0.3.tar.gz<\/strong><\/p>\n<p>Acesse a pasta onde o Bacula foi descompactado:<\/p>\n<p><strong># cd bacula-7.0.3\/<\/strong><\/p>\n<p>E vamos, enfim, configurar o Bacula de acordo com o nosso cen\u00e1rio:<\/p>\n<p><strong>#.\/configure &#8211;with-postgresql &#8211;with-db-user=postgres &#8211;with-db-password=postgres &#8211;with-db-port=5432 &#8211;with-readline=\/usr\/include\/readline &#8211;disable-conio<\/strong><\/p>\n<p>Se todos os passos at\u00e9 aqui forem executados corretamente, a configura\u00e7\u00e3o do Bacula ir\u00e1 ocorrer perfeitamente. Ent\u00e3o, executamos o comando:<\/p>\n<p><strong># make<br \/>\n# make install<\/strong><\/p>\n<p>E, em seguida, para que os daemons iniciem junto com o seu servidor:<\/p>\n<p><strong># make install-autostart<\/strong><\/p>\n<p>Se chegarmos aqui, est\u00e1 tudo bem. Vamos agora criar o cat\u00e1logo do Bacula no PostgreSQL.<\/p>\n<p>Primeiro, acesse o diret\u00f3rio onde o Bacula foi instalado, por padr\u00e3o:\u00a0\/etc\/bacula:<\/p>\n<p><strong># cd \/etc\/bacula\/<\/strong><\/p>\n<p>E vamos executar, respectivamente, os comandos de cria\u00e7\u00e3o do banco de dados, popula\u00e7\u00e3o de dados e o arquivo que adiciona permiss\u00e3o &#8220;Full&#8221; ao usu\u00e1rio\u00a0bacula\u00a0nesta tabela:<\/p>\n<p><strong># .\/create_postgresql_database -Upostgres<br \/>\n# .\/make_postgresql_database -Upostgres<br \/>\n# .\/grant_postgresql_privilegies -Upostgres<\/strong><\/p>\n<p>Se os comandos acima retornarem com sucesso, j\u00e1 podemos reiniciar o Bacula Server:<\/p>\n<p><strong># service bacula-fd restart<br \/>\n# service bacula-sd restart<br \/>\n# service bacula-dir restart<\/strong><\/p>\n<p>Se nenhum erro ocorrer at\u00e9 aqui, podemos acessar o console pela primeira vez, com o comando abaixo:<\/p>\n<p><strong># bconsole<\/strong><\/p>\n<p>Se o console do Bacula abriu corretamente, ele ir\u00e1 te retornar este texto:<\/p>\n<p><sub>Connecting to Director bdir:9101<br \/>\n1000 OK: 1 bdir-dir Version: 7.0.3 (12 May 2014)<br \/>\nEnter a period to cancel a command.<br \/>\n*\u00a0<\/sub><\/p>\n<p>Para sair do console, voc\u00ea s\u00f3 precisa digitar:<\/p>\n<p><strong>*exit<\/strong><\/p>\n<p>Agora, cabe a n\u00f3s configurarmos os daemons do Bacula.<\/p>\n<p>Em breve, postarei aqui algumas dicas de configura\u00e7\u00e3o dos daemons do Bacula, o que pode ser um assunto bem longo, se estudado a fundo.<\/p>\n<p>Mas, nada melhor do que a documenta\u00e7\u00e3o do software, ent\u00e3o, fica a dica:\u00a0<a href=\"http:\/\/blog.bacula.org\/documentation\/documentation\/\">Manuals \u00ab Bacula<\/a><\/p>\n<\/div>\n<\/td>\n<\/tr>\n<\/tbody>\n<\/table>\n","protected":false},"excerpt":{"rendered":"<p>Introdu\u00e7\u00e3o ao Bacula Server e instala\u00e7\u00e3o do PostgreSQL O\u00a0Bacula\u00a0\u00e9 um software de backup em rede, baseado em tr\u00eas m\u00f3dulos: Bacula-DIR\u00a0:: Que \u00e9 o daemon que ir\u00e1 executar, catalogar, agendar etc&#8230; os backups dos clientes. Bacula-FD\u00a0:: \u00c9 o daemon cliente, ou seja, de quem iremos fazer o backup. Bacula-SD\u00a0:: \u00c9 o daemon de Storage, \u00e9 onde [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"site-sidebar-layout":"default","site-content-layout":"","ast-site-content-layout":"default","site-content-style":"default","site-sidebar-style":"default","ast-global-header-display":"","ast-banner-title-visibility":"","ast-main-header-display":"","ast-hfb-above-header-display":"","ast-hfb-below-header-display":"","ast-hfb-mobile-header-display":"","site-post-title":"","ast-breadcrumbs-content":"","ast-featured-img":"","footer-sml-layout":"","ast-disable-related-posts":"","theme-transparent-header-meta":"","adv-header-id-meta":"","stick-header-meta":"","header-above-stick-meta":"","header-main-stick-meta":"","header-below-stick-meta":"","astra-migrate-meta-layouts":"default","ast-page-background-enabled":"default","ast-page-background-meta":{"desktop":{"background-color":"var(--ast-global-color-4)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"ast-content-background-meta":{"desktop":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"tablet":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""},"mobile":{"background-color":"var(--ast-global-color-5)","background-image":"","background-repeat":"repeat","background-position":"center center","background-size":"auto","background-attachment":"scroll","background-type":"","background-media":"","overlay-type":"","overlay-color":"","overlay-opacity":"","overlay-gradient":""}},"footnotes":""},"categories":[455,477,91,1,42,51,552,495,68,127,548],"tags":[325,349,17,361,972,605],"class_list":["post-870","post","type-post","status-publish","format-standard","hentry","category-apache2","category-backup-2","category-banco-de-dados","category-viazap","category-leitura-recomendada","category-linux-linuxrs","category-postgresql","category-profissional-de-ti","category-redes-2","category-sistemas-de-armazenamento","category-ubuntu-2","tag-bacula","tag-com","tag-debian","tag-no","tag-postgresql","tag-server-7-0-3"],"_links":{"self":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/870","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=870"}],"version-history":[{"count":1,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/870\/revisions"}],"predecessor-version":[{"id":871,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=\/wp\/v2\/posts\/870\/revisions\/871"}],"wp:attachment":[{"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=870"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=870"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.clusterweb.com.br\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=870"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}