J'ai écrit le script Powershell suivant pour effectuer une sauvegarde unique de mon ordinateur Windows Server 2008 R2. L'idée est d'effectuer une sauvegarde hebdomadaire sur un autre lecteur externe et de planifier l'exécution du script à partir du planificateur de tâches.
Import-Module ServerManager
Add-PSSnapin Windows.ServerBackup
$backup = Get-WBPolicy
$weekly = New-WBPolicy
Add-WBVolume -POLICY $weekly -VOLUME $backup.VolumesToBackup
$inc1 = NEW-WBFileSpec -FileSpec "C:\"
$inc2 = NEW-WBFileSpec -FileSpec "D:\"
$incs = $inc1,$inc2
Add-WBFileSpec -POLICY $weekly -fileSpec $incs
$disk = WBDisk | where{$_.DiskName -EQ "Seagate Backup+ Desk USB Device"}
$target = New-WBBackupTarget -DISK $disk
Add-WBBackupTarget -POLICY $weekly -TARGET $target
Add-WBBareMetalRecovery -POLICY $weekly
Set-WBVSSBackupOptions -POLICY $weekly -VSSFULLBACKUP
Start-WBBackup -POLICY $weekly
Je reçois l'erreur suivante:
Start-WBBackup : Object reference not set to an instance of an object.
At C:\Users\ejb\Documents\Scripts\WeeklyBackup.ps1:21 char:15
+ Start-WBBackup <<<< -POLICY $weekly
+ CategoryInfo : NotSpecified: (:) [Start-WBBackup], NullReferenceException
+ FullyQualifiedErrorId : System.NullReferenceException,Microsoft.Windows.ServerBackup.Commands.StartWBBackup
J'ai vérifié et vérifié que tous les modules, composants logiciels et fonctionnalités appropriés étaient installés / chargés.
windows
backup
powershell
cnc_general
la source
la source
Schedule : BackupTargets : {Seagate Backup+ Desk USB Device} VolumesToBackup : {DATAPART1 (D:), Local disk (C:)} FilesSpecsToBackup : {C:\*, D:\*} FilesSpecsToExclude : {} BMR : True SystemState : False VssBackupOptions : VssFullBackup
j'ai vérifié MSDN et la planification n'a pas besoin d'être définie dans ce cas.Réponses:
J'ai trouvé que le problème était dû à la façon dont je fixais la cible. Même s'il était correctement configuré, il n'était pas correctement lié à la politique WB que je créais. La manière correcte de définir la cible était:
Bien que cela suppose que le disque attaché soit toujours monté sur la lettre G: letter, cela a fonctionné correctement lorsque je l'ai exécuté.
la source
Je rencontre le même problème lors de la définition d'une sauvegarde ponctuelle (ou de la génération d'une stratégie à la volée). Je pense ... Vous devez utiliser Volume (objet de Get-WBVolume) ou VolumePath (si la lettre de montage est disponible). Les options de disque sont présentes lorsque vous souhaitez définir une stratégie persistante. Lorsque vous utilisez Disk (objet de Get-WBDisk), vous devez utiliser Set-Policy. Le disque sera effacé et un nouveau volume y sera créé. Ce volume sera ensuite utilisé.
la source