none
DPM 2010 - Force DPM to erase tapes without stopping the protection group. RRS feed

  • Question

  • I'm running DPM 2010 with a Dell PowerVault 122T autoloader that has an Ultrium LT0-1 drive. For some apparent reason DPM filled all 7 tapes in the autoloader with data ranging from about 10MB to 70MB, marked them all as belonging to a group, and now refuses to allow me to mark them as free or erase them without stopping my protection group and deleting my data.

    Stopping the protection group, removing replica data, and so forth is not an acceptable solution. I need to know if there's a way to force DPM to erase tapes without stopping the group. I've already tried marking them as "free" with a powershell script I found but this isn't working and I basically have 7 worthless tapes in my autoloader, as DPM won't append data or overwrite anything that's on them. My retention range is set to 1 week for tapes.

    So, how do you force DPM to erase tapes without having to delete the entire backup job and associated replica data? I've got a rather large amount of data replicating off onto my Clariion storage array and I can't delete all that data, reconfigure a new backup job, and wait several hours for replication to take place again. As it stands now, it looks like I'm going to have to take all the tapes out and reformat them in another LTO tape drive. 

    /rant @ Microsoft DPM Developers: I'm not sure where you learned how to plan for and write code for tape management, but being able to perform tape operations like erasing, formatting, naming, and appending data to them independent of disk based replication is one of the most fundamental features of any backup product. I'm speechless as to how you managed to overlook something so obvious. 

    • Moved by MarcReynolds Thursday, October 21, 2010 11:52 AM (From:Data Protection Manager)
    Wednesday, October 20, 2010 11:59 PM

Answers

All replies

  • You can use the following power shell script to expire all RP on a given tape, then mark it free.

       http://blogs.technet.com/dpm/archive/2007/09/04/cli-script-force-mark-tape-as-free.aspx

    If you have a standalone tape drive - get the script from this post:

        http://social.technet.microsoft.com/Forums/en-US/dpmtapebackuprecovery/thread/ab431377-665e-44e3-956d-e74a71000d77


    Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.
    Thursday, October 21, 2010 1:45 AM
    Moderator
  • I appreciate the response but as I've already stated, the "Mark tape as free" script doesn't work. Even after marking the tape as free, DPM still refuses to use it. I need a way to force DPM to erase the tape without stopping the protection group or affecting the already massive amount of replicated data I have. How do you force DPM to erase tapes without stopping a protection group? If this option isn't available, how long until we see a fix for this rather glaring oversight in functionality?
    Thursday, October 21, 2010 5:42 AM
  • Hi,

    If the tape shows free, then the power shell did it's job and expired all the data sets.  DPM can overwrite any tape marked a "free", "free (contains data)", or expired.  If it shows unrecognized, try to Identify unknown tape. If that does not work, try setting the short erase key and try erasing it through the DPM console, once that completes dpm should for sure re-use it.

     

    Short Erase
    http://technet.microsoft.com/en-us/library/ff634195.aspx

    When a user erases a tape, by default, DPM will do a long erase on that tape.  DPM 2100 has introduced the ability to do a short erase now.  Simply navigate to the following registry location and add the DWORD key with the default vale:

    HKLM\Software\Microsoft\Microsoft Data Protection Manager\Agent
    REG_DWORD:UseShortErase:0x0

    Setting to 0(zero) will cause DPM to use a short erase.  In order to set it back to using the long erase, simply delete the key.
     


    Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.
    Thursday, October 21, 2010 2:43 PM
    Moderator
  • The tape doesn't show free in the DPM console, even after running the script. I guess that's kinda my point here. I've pretty much resigned myself to doing tape erasures over the weekend on another machine using Backup Exec. 

    Ultimately I think I'll probably just keep DPM around exclusively for Hyper-V backups of my cluster and redeploy Backup Exec 12 for everything else until we see some serious tape management capabilities (and better use of replica storage, to boot.)

    Thursday, October 21, 2010 10:07 PM
  • Ok, we need the details surrounding the output of the mark tape as free script.  Does it error out when it's ran against a slot or does it shows it completed ? 

    Can you copy the output of the powershell script and paste it in this therad. Once we get the script to work you will be golden.

     

    FYI - Why do you need to free the tape, is the retention range too long for the data sets on that tape ?  Are you low on tapes ?


    Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.
    Thursday, October 21, 2010 11:37 PM
    Moderator
  • It's not that I'm low on tapes, per se. It's that DPM decided to fill every available tape in the autoloader with a few megabytes (yes...megabytes) of data and then marked them all as "used". Subsequent tape jobs would error out saying no available tapes are available.

    The script doesn't error out when I run it but the tapes never show as available in the DPM interface. This problem has transformed into something else too. I formatted the tapes DPM wasted using a standalone LTO drive and separate software. I then reinserted those tapes into the autoloader and did a "Detailed Inventory" job from within the DPM console. I have 8 total slots in the autoloader, with the 8th slot being the cleaning cartridge. Only the first three slots in the autoloader are coming up as occupied and even though there are tapes in slots 4 through 7, DPM still insists those slots are empty. I've rebooted the server, power cycled the autoloader, and done everything else I can think of and DPM still refuses to see every tape in the autoloader.

     

    Friday, October 22, 2010 11:56 PM
  •  

    I have exactly the same issue.  I have never been able to erase tapes using DPM 2010 without stopping the protection group first.  DPM is also backing up data onto more than one tape even if loads of space remains on the tape.  It is very annoying and they seemed to have bypassed any sort of tape management when they designed the software.  I agree that Symantec Backup Exec is much better at this and you can erase a tape at anytime with ease.

     

    I have been looking around for a possible resolution for a while but so far haven't found anything.  I will post if I have any luck.

     

     

     

     

    Wednesday, June 8, 2011 3:41 PM
  •  

    The only way I could erase the tape in the end was to revert back to Symantec Backup Exec.  Will it be possible to erase a tape using DPM in the future without stopping the protection group?  Is a patch or service pack due for release that will include this feature?

    Thursday, June 9, 2011 11:35 AM
  • The solution is in this post.

    You can use the following power shell script to expire all RP on a given tape, then mark it free.

       http://blogs.technet.com/dpm/archive/2007/09/04/cli-script-force-mark-tape-as-free.aspx

    If you have a standalone tape drive - get the script from this post:

        http://social.technet.microsoft.com/Forums/en-US/dpmtapebackuprecovery/thread/ab431377-665e-44e3-956d-e74a71000d77

     

    If the tape shows free, then the power shell did it's job and expired all the data sets.  DPM can overwrite any tape marked a "free", "free (contains data)", or expired.  If it shows unrecognized, try to Identify unknown tape. If that does not work, try setting the short erase key and try erasing it through the DPM console, once that completes dpm should for sure re-use it.

     

    Short Erase
    http://technet.microsoft.com/en-us/library/ff634195.aspx

    When a user erases a tape, by default, DPM will do a long erase on that tape.  DPM 2100 has introduced the ability to do a short erase now.  Simply navigate to the following registry location and add the DWORD key with the default vale:

    HKLM\Software\Microsoft\Microsoft Data Protection Manager\Agent
    REG_DWORD:UseShortErase:0x0

    Setting to 0(zero) will cause DPM to use a short erase.  In order to set it back to using the long erase, simply delete the key

     

    Worst case, you can erase any tape using this utility:

    http://cid-b03306b628ab886f.office.live.com/self.aspx/.Public/DPMeraseTape.zip

     


    Regards, Mike J. [MSFT] This posting is provided "AS IS" with no warranties, and confers no rights.
    Thursday, June 9, 2011 2:32 PM
    Moderator
  • I want to also chime in and say this script referenced by Mike DOES NOT allow you to erase tapes. This script does not appear to work. After running (with no error messages) nothing on my DPM server has changed. All tapes still are marked as having data and when I view the contents of the tape the expiration is still a future date - thus I cannot erase them. (I get the MS babysitter message that I need to stop protection of the group first) Love that - I need to stop protection and blow away all data just to erase some data. Awesome! And when you co-locate data and have more than one protection group on a tape, you need to stop protection on them all! Even better. Wow, someone sure forgot their Monday morning cup of Joe when they thought that was a good idea.

    Lets start with this: Can we get an updated script that actually works?!!

    EDIT:

    Figured it out. you have to type "slot-2" as opposed to just 2 (assuming you wanted to free up the tape in slot 2. it would have been helpful is MS had posted some examples so folks like myself and others could have figured this out sooner.

    • Edited by ZackinMA Wednesday, October 12, 2011 5:17 PM
    • Proposed as answer by ZackinMA Wednesday, October 12, 2011 5:18 PM
    Tuesday, October 11, 2011 2:29 PM
  • Hi,

    I am also quite astounded as to how someone could produce a backup solution that doesn't allow the most basic operations and does all that it possibly could do disrupt and complicate things every step of they way.

    I've actually got the force free tape script to function and was overjoyed that I don't have to throw out the DPM licenses, but then I found while marking the tape free, it also deletes all my recovery points, even previous ones. This means I can only restore an entire volume at a time - need lots of temp space + takes much longer than it should if I need just a few files recovered.

    When using an IBM drive, I was able to format the tape with the ntape command line utility before DPM starts its daily operations. Thank god IBM had the sense to include functionality that helps us bypass DPM-s idiotic restrictions.

    When using an HP drive however, I can't find any such utilities. The IBM ntape actually worked with my HP device to set the block size to 65535 (what's up with this by the way, DPM doesn't accept any other block size but isn't able to change it, do it feelings get hurt that the tape "cheated" with another backup software?), but doesn't allow erase or format from the command line.

    So dear Microsoft, is there any possible way to get DPM to actually be useful with a stand-alone HP drive?

    And please don't tell me to get a tape library, if a customer can afford a tape library then they can certainly afford a backup solution that isn't the cheapest ¤%& available. By the way, thanks so much for removing native tape support from Win2008! That's the only reason anyone would need this god-forsaken ....

    Laur Joonsaar

     

    Friday, October 14, 2011 8:12 AM
  • I have to agree. It is unfortunate that Microsoft's developers have spent more time in the lab then the real world. Its clear from their product that they seem to lack vision when it comes to understanding real world uses and needs within their products. 

     

    Friday, October 28, 2011 2:30 PM
  • Thank you for sharing the "slot-x" advice, you are a legend! I've been banging my head as to why I still couldn't mark tapes as free after running the script. It certainly doesn't help that the script doesn't error anything back when you have the slot ID wrong.

    Again, stopping the protection of the group was not something I was looking forward to!!

    Cheers!

    Sunday, July 29, 2012 11:17 PM
  • No problem. Glad to help the community. I figured we here couldn't be the only ones having this issue - and to your point - since the script doesn't error out it is very difficult to determine if you've done anything wrong... 

    Monday, July 30, 2012 7:09 PM
  • Hi,

    I am using the script linked to by Mike which is working fine however I look after a few DPM servers and I would like to receive a confirmation email that the script has run and the tape is Free(contains data).

    I was wondering if there was a way I can report the status of the tape. I notive that you can set the tape as free but I wanted to get the status of the tape so that it can be emailed. Something like:

    Write-Verbose"Setting tape in $($media.Location) as free."
    Set-Tape-Tape$media-Free

    then, for example

    "$TapeStatus = $media.satus"

    $message = New-Object System.Net.Mail.MailMessage
    $message.To.Add($smtpTo)
    $message.From = $smtpFrom
    $message.Subject = $messageSubject
    $message.IsBodyHTML = $true
    $email.body = $Tapestatus
    $smtp = New-Object Net.Mail.SmtpClient($smtpServer)
    $smtp.Send($message)

    I've looked around but can't find anyway of getting the status of the tape whether that be Offsite Ready, Free, Free(contains data) etc. Anyone know a way to do this? It would be very handy to just get a few emails each day to say that the script ran and the tape is Free.

    thanks,

    Monday, August 13, 2012 11:52 PM
  • An easier way may be to just schedule a tape utilization report to run after you run the scheduled script.
    Tuesday, August 14, 2012 6:31 PM
  • Hi Zack,

    That had occurred to me but it's just not the way I want to do it. I can't believe there is no way to get the tape status. I would have thought if you can set the tape status in Powershell you could also get the tape status. I might try posting in another forum or sub-forum.

    many thanks for the suggestion though.

    Rob

    Thursday, August 16, 2012 6:11 AM
  • Try a work around. Do you have a network monitoring product like Whats Up Gold. Rather than having your script directly generate the email - can you have it record an event to the event viewer? Then have your network monitoring capture the events and generate alerts... 

    It's ugly - but it may work. 

    Thursday, August 16, 2012 1:46 PM
  • To free up your tape if you have got single standalone tape drive

    Open DPM powershell as admin and copy/paste. 

    $LIB = Get-DPMLibrary –DPMServerName microsoft.microsoft.com

    $TP1 = Get-Tape -DPMLibrary $LIB
    foreach ($rp in @(Get-RecoveryPoint -Tape $TP1))
    {
    Get-RecoveryPoint -Datasource $rp.Datasource | Out-Null

    Write-Verbose "Removing recovery point created at $($rp.RepresentedPointInTime) for tape."
    Remove-RecoveryPoint -RecoveryPoint $rp -ForceDeletion -Confirm:$false
    }

    Write-Verbose "Setting tape as free."

    Set-Tape -Tape $TP1 -Free



    • Edited by Mo Yusuf Thursday, March 13, 2014 2:17 PM
    Thursday, March 13, 2014 2:16 PM