Quantcast
Channel: Windows PowerShell forum
Viewing all articles
Browse latest Browse all 21975

just need little help to change script

$
0
0

Hello,

I have a script to save my servers and it works very well.

But on one server, i have ISCSI connected and i dont want the script save the ISCI hard disk, just the C: and system state

How to change the script to just save C: and system state ?

maybe it is in this line : $Volumes = Get-WBVolume -AllVolumes | Where-Object { $_.Property -notlike "Critical*" }

and the action :

#Ajout des volumes non-critiques à la sauvegarde
if ($Volumes -ne $null)
{
 Add-WBVolume -Policy $WBPolicy -Volume $Volumes | Out-null
}
 
$WBPolicy | Out-Null
Start-WBBackup -Policy $WBPolicy

Thanks

#requires -version 2.0

#Initilialiser les cmdlets Powershell
if ( (Get-PSSnapin -Name Windows.ServerBackup -ErrorAction SilentlyContinue) -eq $null )
{
    Add-PsSnapin Windows.ServerBackup
}

#Serveur de destination
$Nas = "\\10.10.30.3\Chateau\SVCHA"

#Dossier parent
$HomeBkpDir = ($Nas+"\backup")

#Dossier de sauvegarde
$Filename = Get-Date -Format yyyyMMdd_hhmmss

#Nombre de sauvegardes à conserver: valeur 0 désactive la rotation
$MaxBackup = 8

#Liste des volumes non-critiques à rajouter
$Volumes = Get-WBVolume -AllVolumes | Where-Object { $_.Property -notlike "Critical*" }

#------------------------------------------------------------------
#Fonction comparant le nombre de dossiers à conserver par rapport
#à la valeur $MaxBackup (n'est pas appelé si la valeur est à 0)
#------------------------------------------------------------------
function Rotation()
{
 #Liste des dossiers de sauvegardes
 $Backups = @(Get-ChildItem -Path $HomeBkpDir\*|Sort-Object LastWriteTime)

 #Nombre des dossiers de sauvegardes
 $NbrBackups = $Backups.count

 $i = 0

 #Supprime le(s) dossier(s) le(s) plus ancien(s)
 while ($NbrBackups -ge $MaxBackup)
 {
  $Backups[$i] | Remove-Item -Force -Recurse -Confirm:$false
  $NbrBackups -= 1
  $i++
 }
}

#------------------------------------------------------------------
#Envoi du rapport de sauvegarde par mail (Résumé)
#------------------------------------------------------------------
function EmailNotification()
{
 #Adresse de l'expéditeur
 $Expediteur = "backup@toto.fr"

 #Adresse du destinataire
 $Destinataire = "informatique@toto.fr"

 #Server SMTP
 $Serveur = "toto"

#Objet du message
 $Objet = $env:computername+": Rapport de sauvegarde sur NAS 10.10.30.3 du "+(Get-Date)

#Corps du message
 $Corps = Get-WBJob -Previous 1 | ConvertTo-Html -As List | Out-String

 $SMTPclient = new-object System.Net.Mail.SmtpClient $Serveur

 #Spécifier le port SMTP si nécessaire
 #$SMTPClient.port = 587

 #Activer la fonction SSL si nécessaire
 #$SMTPclient.EnableSsl = $true

 #Préciser les informations d'authentification si nécessaire
 #$SMTPAuthUsername = "login"
 #$SMTPAuthPassword = "password"
 #$SMTPClient.Credentials = New-Object System.Net.NetworkCredential($SMTPAuthUsername, $SMTPAuthPassword)

 $Message = new-object System.Net.Mail.MailMessage $Expediteur, $Destinataire, $Objet, $Corps
 $Message.IsBodyHtml = $true;
 $SMTPclient.Send($Message)
}

#Appel la fonction Rotation si activée
if ($MaxBackup -ne 0)
{
 Rotation
}

#Création du dossier de sauvegarde
New-Item ($HomeBkpDir+"\"+$Filename)  -Type Directory | Out-Null

$WBPolicy = New-WBPolicy

#Activation de la fonctionnalité "récupération complète" (Inclus l'état système)
Add-WBBareMetalRecovery -Policy $WBPolicy | Out-Null

#Ajout de la destination à la stratégie de sauvegarde
$BackupLocation = New-WBBackupTarget -network ($HomeBkpDir+"\"+$Filename)
Add-WBBackupTarget -Policy $WBPolicy -Target $BackupLocation -force | Out-Null

#Ajout des volumes non-critiques à la sauvegarde
if ($Volumes -ne $null)
{
 Add-WBVolume -Policy $WBPolicy -Volume $Volumes | Out-null
}

$WBPolicy | Out-Null
Start-WBBackup -Policy $WBPolicy

#Appel de la fonction de notification par mail
#EmailNotification
 



Viewing all articles
Browse latest Browse all 21975

Latest Images

Trending Articles



Latest Images

<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>