Nov 14 2011

Supprimer les fichiers B2D sous Backup Exec

Publié par à 11:30 sous Sauvegarde

Voici un script qui supprime tous les fichiers B2D de Backup Exec qui font partie d’un même jeu de supports. Copiez le script suivant dans un .bat et modifiez les 3 premiers paramètres Mediaset, B2Dfolder et BEPath.
Vous pouvez ensuite l’exécuter directement.
 
Je considère que c’est une bonne pratique de supprimer les fichiers bkf pour les raisons suivantes:
– On peut bien sûr paramétrer la période de protection contre l’écriture, ainsi Backup Exec réutilisera les fichiers BKF ayant expirés. Ce système fonctionne assez bien dans la plupart des cas surtout lorsqu’on dispose de beaucoup d’espace disque. Si une sauvegarde est retardée et qu’il n’y a plus d’espacce disque, la sauvegarde suivante sera retardée tant que la précédente n’aura pas expiré.
– J’ai vu assez de gens sur les forums se plaindre des temps de restauration ou de duplication à cause d’un disque trop fragmenté. Ce n’est plus un problème lorsque les fichiers sont supprimés.
 

@Echo Off
::
:: Supprime les fichiers BKF de Backup Exec.
::

:CONFIGURE
 SETLOCAL
::
:: Modifier les 3 paramètres suivants selon votre installation.
::
:: * MediaSet - Le jeu de supports Backup Exec utilisé pour les travaux de sauvegarde sur disque
:: * B2Dfolder - Le chemin absolu du dossier de sauvegarde sur disque
:: * BEPath - Le chemin complet vers l'exécutable de Backup Exec (bemcmd.exe pour être spécifique).
::   (Par défaut, C:\Program Files\Symantec\Backup Exec\bemcmd.exe

 SET MediaSet="Supports disque"
 SET B2Dfolder=S:\Backup\
 SET BEPath="C:\Program Files\Symantec\Backup Exec\bemcmd.exe"

 IF NOT EXIST %BEPath% ECHO Chemin de Backup Exec non trouvé!^
 Veuillez éditer le script de commandes. ^
 && goto End

:: Récupère l'ID du jeu de support à partir de son nom
:: Fonctionne pour les noms contenant des espaces
 FOR /F "tokens=3" %%m IN ('"%BEPath% -o70 -j%MediaSet%" ^| FINDSTR ^{[-0-9A-F]*}
) do (
   SET MediaSetId=%%m
 )

:: ID du jeu "Supports abandonnés: identiques sur tous les systèmes
 SET RetiredMediaSetId={00000009-0002-0000-0000-000000000000}

:MAIN
::
:: On commence par faire la liste de tous les supports disques que Backup Exec utilise.
:: On les migre dans les supports abandonnés
:: puis on les supprime dans Backup Exec et physiquement sur le disque
::

 FOR /F "tokens=3" %%m IN ('"%BEPath%" -o132 -i%MediaSetId% ^| FINDSTR ^B2D[0-9]*
) do (
  ECHO Traitement de %%m...
  :: Affecte le support aux Supports Abandonnés
  %BEPath% -o130 -j%%m -ms:%RetiredMediaSetId% > NUL
  :: Supprime le support dans Backup Exec
  %BEPath% -o129 -m%%m > NUL
  :: Supprime le support du système de fichier
  IF EXIST %B2Dfolder%%%m.bkf DEL %B2Dfolder%%%m.bkf
 )

:END
ENDLOCAL

 
Note: Il vaut mieux programmer le script depuis les tâches planifiées Windows. Ne les lancez pas depuis les commandes de pré-traitement de Backup Exec, ca ne fonctionnera pas. Seules un nombre limité d’opérations bemcmd sont supportées dans les scripts de pré-traitement


One response so far

Une Réponse à “Supprimer les fichiers B2D sous Backup Exec”

  1. daveon 25 Sep 2012 at 4:13

    Sur Backup Exec 2012, les sauvegardes sur disque ne sont plus affectées à des jeux de sauvegarde sur lesquels sont définis les périodes de rétention. Ces périodes sont maintenant directement définies dans les travaux.
    http://www.symantec.com/business/support/index?page=content&id=DOC5216

    De plus, BEMCMD a été remplacé par BEMCLI qui fait appel à Powershell. Le module BEMCLI n’offre aucune fonction pour gérer les jeux de sauvegarde sur disque.
    Vous pouvez voter pour en faire la demande ici
    http://www.symantec.com/connect/ideas/bemcli-should-support-backup-set-information

    Pour ces 2 raisons, la suppression des fichiers B2D ne peut se faire qu’à la main sur Backup Exec 2012

Comments RSS

Leave a Reply