====== Data Protector Sync Cookbook ====== [[https://en.wikipedia.org/wiki/HP_Data_Protector|Data Protector]] is a HP enterprise backup solution and is available for Windows, UNIX and Linux. ===== The omnirpt command ===== The following instructions use onmirpt to extract the media via a tab delimetered CSV file. Using the powershell code omnireport -report media -detail 1 | Where-Object { $_ -match "^[A-Z0-9]{6,}" -and $_ -notmatch "Disk" } | ForEach-Object { $_ -replace "`t", "," } | Out-File "C:\DPReports\tapetrack_media.csv" -Encoding UTF8 or linux omnireport -report media -detail 1 \ | grep -E '^[A-Z0-9]{6,}' \ | grep -v -i 'disk' \ | sed 's/\t/,/g' \ > tapetrack_media.csv The file can be converted to a comma delimitered file and used directly for input into the Sync process, skipping the need to run TMSS10CSV2Fixed The onmirpt command is available on systems with the Data Protector User Interface component installed. The ''omnirpt'' command generates various reports about the Data Protector environment omnirpt -report media_list -tab > var\dataprotector.csv ==== Example omnirpt output ==== #List of Media #Cell Manager: gazillabyte.tapetrack.co #Creation Date: 9/13/2018 2:00:12 PM # Headers # Medium ID label location Status Protection Used [MB] Total [MB] Last Used Pool Type 3f04a59e:3866b9c6:1990:0004 [000005L7] 000005L7 LIB_1244 Good 9/19/2018 8:23:04 AM 267575.25 4113512.00 9/17/2018 6:48.22 AM LIB Daily LTO-Ultrium 3f04a59e:3b5b80ee:lc84:0003 [000006L7] 000006L7 Good 7/14/2018 6:53:04 AM 342875.46 4000000.00 7/11/2018 5:28.33 AM LIB Daily LTO-Ultrium 3f04a59e:398c833e:14a8:0004 [000007L7] 000007L7 LIB_1244 Good 9/16/2018 2:52:24 AM 112875.21 4000000.00 9/12/2018 6:28.45 AM LIB Daily LTO-Ultrium 3f04a59e:3914el91:lce8:0005 [000008L7] 000008L7 LIB_1244 Good 9/21/2018 7:44:04 AM 264452.33 4000000.00 9/17/2018 7:43.29 AM LIB Daily LTO-Ultrium 3f04a59e:39353595:14e4:0003 [000009L7] 000009L7 Good 9/11/2018 7:53:04 AM 245675.45 4000000.00 9/4/2018 7:15.22 AM LIB Daily LTO-Ultrium 3f04a59e:3817c945:lba8:0003 [000010L7] 000010L7 Good 9/19/2018 8:57:04 AM 100575.25 4000000.00 9/11/2018 6:32.04 AM LIB Daily LTO-Ultrium 3f04a59e:38311894:laee:0004 [000011L7] 000011L7 LIB_1244 Good 8/19/2018 4:33:34 AM 200335.26 4000000.00 8/12/2018 3:28.41 AM LIB Daily LTO-Ultrium 3f04a59e:383c719c:1440:0001 [000012L7] 000012L7 LIB_1244 Good 8/17/2018 8:53:04 AM 260000.04 4000000.00 8/11/2018 4:55.52 AM LIB Daily LTO-Ultrium 3f04a59e:383117eb:laee:0003 [000013L7] 000013L7 Good 6/30/2018 5:55:54 AM 108075.25 4000000.00 6/15/2018 6:02.44 AM LIB Daily LTO-Ultrium 3f04a59e:383c3e6e:0ba4:0001 [000014L7] 000014L7 LIB_1244 Good 8/29/2018 8:53:04 AM 000455.44 4000000.00 8/17/2018 8:08.32 AM LIB Daily LTO-Ultrium ==== Converting omnirpt tab file to Fixed length file ==== Output from omnirpt, while tab delimitered, can produce offset columns depending on string lengths. To ensure the column offsets are consistent the output is passed through [[cli:tmss10csv2fixed|TMSS10CSV2Fixed]]. Run [[cli:tmss10csv2fixed|TMSS10CSV2Fixed]] directing the file ''dataprotector.csv'' through ''stdin'' to get a starting point for columns and offset values, adjust the offsets to match the data you wish to import, omitting data from irrelevant columns with the offset 0 0. TMSSDELIMETER=TAB TMSS10CSV2Fixed < dataprotector.csv System: TapeTrack Report Description: CSV Statistics Production Time: Monday, October 01, 2018 - 13:46:07 (AUS Eastern Standard Time) Report Width: 120 bytes Seq. Min. Max. Heading Value ----- ----- ----- ---------------------------------------------------------------------------------------------------- 0 11 27 # Medium ID 1 5 19 label 2 0 8 location 3 4 28 Status 4 9 20 Protection 5 9 10 Used [MB] 6 10 20 Total [MB] 7 9 20 Last Used 8 4 11 Pool 9 4 11 Type ----- ----- ----- ---------------------------------------------------------------------------------------------------- Suggested Usage: tmss10csv2fixed 0 27 28 19 48 8 57 28 86 20 107 10 118 20 139 20 160 11 172 11 Changing the offset values to pick up Volume-ID (column 2, offset 30 length 8), location (column 3, offset 48, length 8) and description (column 9, offset 160, length 12). TMSS10CSV2Fixed 0 0 0 8 17 8 0 0 0 0 0 0 0 0 0 0 35 12 0 0 < dataprotector.csv > dataprotectorFixed.txt Sample output with selected columns Label Location Pool 000005L7 LIB_1244 LIB Daily 000006L7 LIB Daily 000007L7 LIB_1244 LIB Daily 000008L7 LIB_1244 LIB Daily 000009L7 LIB Daily 000010L7 LIB Daily 000011L7 LIB_1244 LIB Daily 000012L7 LIB_1244 LIB Daily 000013L7 LIB Daily 000014L7 LIB_1244 LIB Daily ===== Synchronization ===== You will need to install the [[cli:sync_suite|TapeTrack Sync software]] to complete these instructions. Synchronization with TapeTrack is performed by calling the [[cli:TMSS10Sync|TMSS10Sync]] command line program, along with: - The fixed width text file produced by pre-processing the onmirpt output. - Command line arguments that instruct the program how to process volumes. - A synchronization definition file that instructs the program how to interpret the omnirpt output. ==== Example Command Line Arguments ==== TMSS10Sync -d dp.ttidef -a -S batch:-password@server < dataprotectorFixed.txt Where: * ''-d'' is the path to the Synchronization Definition File. * ''-a'' tells the program to add new tape volumes if they are encountered. * ''-S'' tells the program what [[cli:server_argument|Server]] to connect to. * ''dataprotectorFixed.txt'' is the ''omnirpt'' output that has been pre-processed through the [[cli:tmss10csv2fixed|TMSS10CSV2Fixed]] program ==== Example Synchronization Definition ==== # # Set the Customer and Media as literal values as they never change # SetLiteral(CUSTOMER, "ACME"); SetLiteral(MEDIA, "LTO"); # # Get the Volume-ID # Extract(VOLUME, 1, 8, 0); # # Get the Repository from a translated location Name # Extract(REPOSITORY, 17, 10, 0); RemoveSpaces(REPOSITORY); AddTranslation(REPOSITORY, "*Lib*", "LIBR"); AddTranslation(REPOSITORY, "*", "OFFS); # # Set the Description to the Pool Name # Extract(DESCRIPTION, 35, 40, 0); RemoveSpaces(DESCRIPTION); # <- :cookbook:commvault|Commvault Sync Cookbook ^ :cookbook:introduction|Cookbook ^ :cookbook:netbackup|NetBackup Sync Cookbook-> {{tag> cookbook}}