Neste post explicarei como agendar passo a passo um backup FULL do FARM.
Quando queremos fazer um backup do FARM, devemos acessar a Administração Central do Sharepoint e ir navegar na opção Backup e Restauração. Selecione a opção Executar um backup e marque todos os itens que desejar, ou selecione Farm para fazer o backup Full.
Porém fica uma tarefa manual e temos de executá-la todos os dias.
Para resolver este problema usaremos um comando PowerShell.
- Crie uma pasta no servidor onde pretende salvar o backup, compartilhe esta pasta com a sua conta de serviço responsável por realizar o backup, exemplo: SeuDomínio SP_FARM.
- Crie outra pasta para guardar os scripts de execução dos comandos PowerShell, não precisa compartilhar esta pasta.
- Salve o comando que realiza o backup em um bloco de notas com a extensão .ps1
Add-PsSnapin Microsoft.SharePoint.Powershell
Backup-SPFarm -Directory Nome do ServidorNome Pasta Backup -BackupMethod full
- Salve o commando que ira deletar backups com data maior que 3 dias ou quantos dias desejar.
# Location of spbrtoc.xml
$spbrtoc = Nome do ServidorNome Pasta Backup spbrtoc.xml"
# Days of backup that will be remaining after backup cleanup.
$days = 3
# Import the Sharepoint backup report xml file
[xml]$sp = gc $spbrtoc
# Find the old backups in spbrtoc.xml
$old = $sp.SPBackupRestoreHistory.SPHistoryObject |
? { $_.SPStartTime -lt ((get-date).adddays(-$days)) }
if ($old -eq $Null) { write-host "No reports of backups older than $days days found in spbrtoc.xml.`nspbrtoc.xml isn’t changed and no files are removed.`n" ; break}
# Delete the old backups from the Sharepoint backup report xml file
$old | % { $sp.SPBackupRestoreHistory.RemoveChild($_) }
# Delete the physical folders in which the old backups were located
$old | % { Remove-Item $_.SPBackupDirectory -Recurse }
# Save the new Sharepoint backup report xml file
$sp.Save($spbrtoc)
Write-host "Backup(s) entries older than $days days are removed from spbrtoc.xml and harddisc."
O arquivo spbrtoc.xml sera criado dentro da pasta quando voce executar o backup do servidor.
A variável $days é para informar com quantos dias você deseja apagar seus backups.
- Vamos agora criar dois arquivos BAT para executar os dois arquivos criados.
- Para executar o backup
- powershell -command E:BackupScriptsScriptsBackup_Farm.ps1
- powershell -command E:BackupScriptsScriptsClean_Bkp_Antigo.ps1
- OBS.: Informe o caminho onde salvou o arquivo .ps1
No exemplo criei 2 pastas uma para os arquivos PowerShell e outra para os arquivos .BAT
Feito isso basta agendar uma tarefa no Task Scheduler do Windows.
Abra o Task Scheduler, selecione onde deseja salvar os comandos ou crie uma nova pasta em: C:WindowsSystem32TasksMicrosoftWindows
Depois de criado crie uma nova tarefa
Clique em OK e repita os mesmos passos para criar uma tarefa para limpar os backups.
Sua pasta ficara assim quando realizar o primeiro backup
Este artigo foi escrito pelo Diego Pereira, caso você queira um artigo publicado ou um artigo sobre um tema, mande para nós.
1 Responses