Adding RDX device to Backup Exec 2012, 2014, and 12.5

May 24th, 2015

Overview: The business was using a tape drive to back up data from various systems using Backup Exec. The tape drive was experiencing problems, so rather than purchasing another tape drive the decision was made to purchase SSD drives.

Purchasing SSD drivers for backup purposes is considered the norm. However, there are a few considerations before moving from a tape drive to a RDX device.

  1. If the organization needs to be SOX (Sarbanes – Oxley) compliant and are currently using a tape drive, the tape drive will need to be in working order for audit purposes since the previous seven years’ worth of backups are on tape.
  2. RDX devices do not provide the data compression of tapes. If the data being backed up to tape was 200 GB with a compression ratio of 2:1 the backup takes 100 GB on tape but will take 200 GB on an RDX device.
  3. The up-front costs of implementing a RDX solution is lower that a tape system, but the SSD disks tend to be 2 to 3 times the price of comparable tapes. Expect to get one year out of the SSD disk before it needs to be replaced, so over a period of time the costs associated with a RDX solution will equal the cost of the tape solution.
  4. Many RDX solutions are USB in nature where tapes drives are generally SCSI, so the backup will be limited by the USB speed. As the SSD disk becomes fragmented, expect the backup to take a longer period of time to complete.

Read the rest of this entry »

Clean up Prophet 21 P21Forms directory on Windows servers using forfiles command

May 12th, 2015


Many applications create files for logging the functionality and errors occurred during operation. There are times the log files are not cleaned up and start to accumulate within a folder on the operating system.  Using the “forfiles” command to reduce the number of files in a directory (folder) for faster indexing (listing) of files in Windows 7, 8 and Windows Server 2008, 2008 R2, 2012, 2012 R2, and 2014.


Running nightly backups of websites to an external USB drive reduces the space on the drive since every backup is being retained for archive purposes. The files are compressed to save space, but accumulate due to no cleanup module. Using the “forfiles” command from the command line, in Task Manager, or within the actual backup script will reduce the number of files within the directories (folders).

Note: Forfiles will only accept single arguments for search criteria, so if the directory (folder) has multiple search criteria, in the nightly backup example there are both .tar and .bak files that need to be removed, so you will need to perform a loop within a batch file.

Note: Be careful with wildcard characters like “*” and “?” since forfiles will bypass the recycle bin.

Note: This is a way to delete files from the command line or a batch file and not a way to bypass other deletion methods. Explorer.exe will consume CPU and memory while running so consider running forfiles during off-hours.

Note: Test forfiles with a non-intrusive command like dir to examine the files selected before running forfiles command section with a dir command.


  1. Open a command prompt by typing cmd in the search or run text boxes in Windows.
  2. At the command line type forfiles /? and press Enter
    1. If you receive the message “forfiles is not recognized as an internal or external command, operable batch file or program” the means the environmental path is not in the path statement on the PC or server.
      1. 64 bit system: C:\Windows\System32\forfiles
      2. Use the full path in the command (recommended for automated tasks) or add the path to the Environmental Variables – Path statement
  3. Let us analyze the following command: “forfiles /P L:\Backups\MyWebsite\ /M *.tar /D -200 /C “cmd /c del @file”
    1. /P is the path directive. In the example the folder is on the L: disk and under the Backups folder.
    2. /M is the search pattern. The search pattern should be as close to finding the files that the command will execute against.
    3. /D is the date for the files that will be acted against by the command. In this example -200 means delete any files with a .tar extension that is over 200 days old.
    4. /C is the actual command. “cmd /c del @file” is what will be executed against any .tar files that are over 200 days old in the L:\Backups\MyWebsite\ folder.
    5. /S **CAUTION** with this flag. This means recursive and will follow into subdirectories within the main directory. This could have undesirable effects and should be tested with a non-final command like “cmd /c dir @file”. Taking the previous command “forfiles /P L:\Backups\ /S /M *.tar /D -200 /C “cmd /c del @file” will delete all TAR files over 200 days old in any folder under L:\Backups.
  4. Logging in forfiles can be accomplished by creating a log file, like forfiles /P L:\Backups\ /S /M *.tar /D -200 /C “cmd /c del @file” >> C:\temp\myfiles.txt

This is a small example of what the forfiles command can do to clean up large number of files on a Windows system.

BackupExec or Backup Exec VSS issue with Windows System Path

November 26th, 2014


Problem: V-79-10000-11226 – VSS Snapshot error. The Microsoft Volume Shadow Copy Service (VSS) snapshot technology selected returned: “Unexpected provider error”. Ensure that all provider services are enabled and can be started. Check the Windows Event Viewer for details.

The following volumes are dependent on resource: “C:” .

Analysis: Since this was a VSS writer issue on a Windows 2008 R2 server, the first thing I ran was “vssadmin list writers” to see what writers were failing. The failing writers were all Windows system writers like the WMI Writer. So I re-registered the writers running a batch script, but you can accomplish the same thing by restarting the server. Read the rest of this entry »

Linux, CentOS, Redhat G++ compiler and rand() / random function

November 18th, 2014

If you are using the G++ compiler in Linux, CentOS, or Redhat there are a couple of steps to adding a random number generator to any project.

  1. Include the precompile library: #include <stdlib.h>
  2. Use the function and add seeding: first_number = rand()%6 +1);

The basic function in C++ for the G++ compiler in Linux looks like this:

#include <iostream>

#include <stdlib.h>

int main()


int first_number = rand()%6 +1;

std::cout << first_number;

return (0);


Starting a console application in Microsoft Visual C++ 2010 Express

November 11th, 2014

Starting a Microsoft Visual C++ Studio Console Application

  1. Open Microsoft Visual C++ 2010 Express
  2. In the menu go to File – New – Project
  3. Click on Visual C++ and highlight Win32 Console Application
  4. Give the new project a name, default directory, and Solution Name
  5. Click OK and another GUI will pop-up
  6. On the Welcome to the Win32 Application Wizard click Next >
  7. On the Application Settings remove the check box from Precompiled Header and check Empty
  8. Click Finish
  9. When the new project opens right click on Source Files
  10. Go to AddNew Item…
  11. When the wizard opens highlight C++ File (.cpp) and give it the name of main.cpp
  12. Click Add
  13. Enter the following in the main.cpp file

          #include <iostream>

           int main()


               return 0;


Place your code after the first curly brace and before the return 0; to get started. Happy coding.


Windows 7 and 8 shutdown batch file to save electricity

November 2nd, 2014

Hi Everyone,

If you are like me you work on your computer or use it to play games in the evening to alleviate stress. However, once you are finished using the computer you forget to turn if off. Now, for many this does not seem to be a problem but consider other aspects of leaving a computer running.

  1. Someone could gain access to a laptop webcam and see that no one is home or spy on people in the room.
  2. If you accidentally get a virus the PC which can turn it into a zombie or join it to a botnet. So while you are away your PC is working in the background.
  3. Some people just never turn the PC or laptop off because he or she feels the power saving options are sufficient.
  4. The amount that all the electronic devices are costing you per month in your electric bill.

Let’s examine the fourth possibility because it happened to me. My average electric bill when my kids were at home was $125 per month. When they left for college the electric bill dropped to $95 per month. When I deployed the shutdown script on my PC the electric bill dropped to $69 per month. Saving over $50 a month (you could save more) on your electric bill seems like a pretty good idea to me.

Read the rest of this entry »

Video for setting up LPD print services for Windows to share a printer on the network

November 1st, 2014

Here is a nice video showing how to set up LPD print services in Windows so you can share a non-networkable printer on the network.


Majority of email being delivered to customer except one or two

October 10th, 2014

This is a very common issue if you are sending email with multiple invoice or statement attachments.

If you are using IIS 6 Smart Host to relay email:

  • Open Internet Information Services (IIS) 6 Manager
  • Expand the default domain
  • Right click on the [SMTP Virtual Server #1] and select properties
  • Click on the messages tab in increase the following:

Limit message size to (KB): default is 2048 so increase it to 20480

Limit session size to (KB): default is 10340 increase it to at least the size of the Limit message size.

  •  Click OK and resend the email.

If you are sending directly to your SMTP provider check with them to see what the message size limits are because many will set that to 2 MB like Google Applications. The reason for the limit is so the SMTP server does not get bogged down trying to scan the email with spam filter and processing large requests.

Hope this helps.

Backup Exec: Buex: Failed – Physical Volume Library Drive not available.Backup Failed, errorCode=-536837876

August 25th, 2014

They have been experiencing electrical storms over the past couple of weeks. When I went into Backup Exec the tape drive was offline. I brought the tape drive back online and ran a tape erase to test and it was successful. Sometime just restarting all the Backup Exec services works just as well.

Disaster Recovery – What is a disaster?

August 14th, 2014

An information technology disaster can be defined as any event or series of events which halt the production capability of any information system.  An organization deletes an Excel spreadsheet being used to keep track of sales or inventory is a disaster. Another organization has a fire in the data center and due to fire suppression techniques the server hardware is damaged is a disaster. Regardless of the physical magnitude, it a system’s production capability is lost the organization has suffered a disaster.

Every organization needs to define information technology disasters within each information technology system in use. Evaluations can take the form of hiring a Systems Analyst or even brainstorming. Identify the systems that if lost, will result in halting production capabilities within the organization. Refrain from passing judgment at this time since the emphasis is on identification and not change.

Read the rest of this entry »