Instalação Automática Silenciosa do Cliente Bacula Windows

Instalar centenas de clientes do Bacula Windows pode ser chato. O script batch a seguir visa manter as coisas rápidas e printar o nome do novo File Daemon e senha após a execução do mesmo, e pode ser usado para as versões do Bacula Community e Enterprise (mude de acordo).

:: Opcional - adicionar entradads no host do cliente
echo 192.168.0.51 baculadb01.bacula.com.br >> %windir%System32driversetchosts
echo 192.168.0.51 bacdirector01.bacula.com.br >> %windir%System32driversetchosts
::
:: Modifique para o caminho onde estão os instaladores do Bacula para Windows
set BINARIES_PATH="\tsclientDownloads"
::
:: Outros exemplos de caminho para o instalador
:: set BINARIES_PATH="\mapped_folderMidiasBacula EnterpriseWindows8.8.5"
:: set BINARIES_PATH="C:UsersAdministratorDownloads"
::
:: Modifique para a versão de seu cliente
set VERSION="8.8.5"
::
:: Modifique para o nome REAL do seu Director
set DIRECTOR="bacdirector01-dir"
::
:: Não modifique
set ARCH="win64"
if "%PROCESSOR_ARCHITECTURE%" == "x86" set ARCH=win32
::
:: Adicione ou modifique se forem pacotes do Bacula Enterprise. Executa o instalador e plugins desejados
%BINARIES_PATH%bacula-enterprise-%ARCH%-%VERSION%.exe /S|more
%BINARIES_PATH%bacula-enterprise-%ARCH%VssPlugin-%VERSION%.exe /S|more
%BINARIES_PATH%bacula-enterprise-%ARCH%MSSQLPlugin-%VERSION%.exe /S|more
::
:: Ou descomente para usar o instalador do Bacula Community
:: %BINARIES_PATH%bacula-enterprise-%ARCH%-%VERSION%.exe /S|more
::
:::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::
::
:: Adiciona exceção porta 9102 do firewall do Windows
Netsh.exe advfirewall firewall add rule name="bacula-fd" localport="9102" protocol=tcp dir=in enable=yes action=allow 
::
:: Gera senha randômica e reseta a configuração fresca do cliente
set PASSWORD="%random%-%TIME%-%DATE%-%random%"
del "C:Program FilesBaculabacula-fd.conf"
::
:: Configura o bacula-fd.conf
echo FileDaemon { > "C:Program FilesBaculabacula-fd.conf" 
echo Name = %COMPUTERNAME%-fd >> "C:Program FilesBaculabacula-fd.conf" 
echo FDport = 9102 >> "C:Program FilesBaculabacula-fd.conf" 
echo WorkingDirectory = "C:\Program Files\Bacula\working" >> "C:Program FilesBaculabacula-fd.conf" 
echo Pid Directory = "C:\Program Files\Bacula\working" >> "C:Program FilesBaculabacula-fd.conf" 
echo Plugin Directory = "C:\Program Files\Bacula\plugins" >> "C:Program FilesBaculabacula-fd.conf" 
echo Maximum Concurrent Jobs = 10 >> "C:Program FilesBaculabacula-fd.conf" 
echo } >> "C:Program FilesBaculabacula-fd.conf" 
echo Director { >> "C:Program FilesBaculabacula-fd.conf" 
echo Name = %DIRECTOR% >> "C:Program FilesBaculabacula-fd.conf" 
echo Password = %PASSWORD% >> "C:Program FilesBaculabacula-fd.conf" 
echo } >> "C:Program FilesBaculabacula-fd.conf" 
echo Messages { >> "C:Program FilesBaculabacula-fd.conf" 
echo Name = Standard >> "C:Program FilesBaculabacula-fd.conf" 
echo director = %DIRECTOR% = all, !skipped, !restored >> "C:Program FilesBaculabacula-fd.conf" 
echo } >> "C:Program FilesBaculabacula-fd.conf" 
::
:: Tira aspas para facilitar copiar a senha
SET NO_QUOTE_PASS=%PASSWORD:"=%
::
:: Reinicia o Cliente Bacula para Aplicar Alterações
net stop bacula-fd
net start bacula-fd
::
:: Printa o nome do cliente e a senha gerada
echo %COMPUTERNAME%-fd%NO_QUOTE_PASS%

 

Disponível em: pt-brPortuguêsenEnglish (Inglês)esEspañol (Espanhol)

Deixe uma resposta