Evaluation of Bru-Professional

We are in the information age. Information is a commodity, a necessity, and probably one of the most important facets of your business. Nowadays, information is protected religiously; it is protected from corruption, theft, and the competition. Some companies rely so heavily on information and trade secrets that if they were ever lost or compromised, they could quite possibly go under very fast.

In light of this, the last number of years have shown an explosion of methods for protecting and retaining your information. Security is an important aspect to keep intruders from seeing what they shouldn’t be seeing, and the evolution of firewalls, IDS (Intrusion Detection Systems), and other means of protection has become big business.

But so has hardware and software for backing up information. As much as hardware or software manufacturers would like you to believe that their product is stable and reliable, we have all succumbed to accidental deletion or hardware failure resulting in lost data. In those hopefully rare cases, if your information means anything to you, you can easily restore from a backup because you had a contingency plan.

Now, don’t get me wrong. I am in no way implying that backups are for business professionals alone. Backups are equally important for the home user who has anything of value to retain. Whether it is copies of your resume or other important documents you have written, or save data for your favourite game, if you have a computer you have something worth protecting and retaining in the unfortunate event that something, software or hardware, decides to go south on you and take your information with it. It is my opinion that everyone needs a means of backing up data, regardless of how expensive or inexpensive that means might be.

Introducing Bru-Pro

One product with amazing capabilities and flexibility is BRU Professional; more commonly known as Bru-Pro. Bru-Pro is a client/server network backup system that allows you to backup the machine it is installed on, and remote machines that have the BRU-Pro client software installed on them.

Produced by Enhanced Software Technologies, Inc., BRU-Pro is available for Linux, FreeBSD, and Solaris for the server software. It is also available for a variety of client operating systems including Linux, every version of Windows, Solaris, FreeBSD and BSDi, SCO UnixWare, and more. This means you can have a tape server running any Linux distribution and use it to backup your Linux servers, Windows clients, and FreeBSD routers (or any other combination you could possibly imagine). Because of it’s wide range of support for different operating systems, BRU-Pro makes an excellent choice as a backup server.

It is also extremely reliable. I have been using the Personal Edition BRU (which, incidentally, is available with many popular Linux distributions if you buy the commercial boxed set) for many months and it has proven to be comprehensive and reliable. Unfortunately, with my large network and sole tape drive, I had to get very creative to backup data from my other machines. Installing BRU-Pro solved this problem very easily and has made backups a snap.

The minimum system requirements for BRU-Pro is a 266MHz Pentium II with 64MB of RAM and a minimum of 50MB of drive space available for the server. The server I installed BRU-Pro on is an AMD Athlon 750 with 384MB of RAM and plenty of free space running Linux Mandrake 7.2. Overkill for a simple tape server, but this system provides a number of other services to my network as well. You do not need X installed on the system if you do not want, as long as you have another X server you can display to via ssh forwarding as you will need to use the GUI client to configure your server.

Finally, you will need a tape drive. BRU-Pro does not backup to other mediums such as hard drives, ZIP or LS-120 disks, writable CD’s, or floppies. It is strictly used with tape drives or tape libraries and as such is useless to anyone without the right hardware. I highly recommend using a SCSI tape drive or library as they out-perform any floppy-based or parallel port-based tape devices.

Installing BRU-Pro Server

BRU-Pro is easy to install. It comes with a CD that contains both the various client and server software, so all you need to do is insert the CD into your CD-ROM and mount it as root.

Before you go any further, however, you will need to create a system user called “brupro” for BRU-Pro to work properly. You can do this using a system-administration tool like linuxconf, or you can use the useradd command like this:

useradd -d /home/brupro -m -r -s /bin/bash brupro

This creates a system user called brupro with a home directory of /home/brupro and with a login shell of /bin/bash. Once you have done this, you are ready to install BRU-Pro.

Mount the CD-ROM and change to the mount point to run the install.sh program:

mount /mnt/cdrom
cd /mnt/cdrom

This will take you through the BRU-Pro installation. You will be asked for your license information and for a number of defaults that are very self-explanatory. Once you are finished with the installation, you will need to configure your system to automatically start the BRU-Pro server upon bootup. If your system uses SysV-style scripts, you will be able to use the installed tserv script installed in /etc/rc.d/init.d to start the server, the same as you would for any other service you are running. To enable the server, use chkconfig to turn it on:

chkconfig --level 345 tserv on
chkconfig --list tserv

Double-check to make sure that tserv is set to start in runlevels 3, 4, and 5. If you do not use SysV style scripts, you can use the /opt/brupro/bin/tserv.sh script to start and stop the server. It takes the arguments “start” or “stop” respectively, the same as the initscript /etc/rc.d/init.d/tserv does.

Finally, BRU-Pro uses a special MySQL server to store information. If you already run MySQL, don’t worry. The MySQL that comes with BRU-Pro does not interfere with your existing MySQL server at all. The BRU-Pro supplied MySQL server listens to port 6660 while normal MySQL servers listen to post 3306, so there is absolutely no conflict at all.

You will need to configure MySQL, however, to setup access control for it. To do this, execute the following commands:

cd /opt/brupro/mysql/bin
./mysqladmin -u root -p password secret
./mysqladmin -u root -h tapeserver.mydomain.com

The first mysqladmin command sets the new password for the root user, in this case it will be “secret”. The second command sets host access rights. In this case, only the host tapeserver.mydomain.com will be able to access the database. Change this to the hostname that belongs to the machine you have installed BRU-Pro on.

When BRU-Pro installed, it also modified the PATH settings in your /etc/profile file to include /opt/brupro/bin in the PATH, which is where the main GUI configuration/administration program xbrup is installed. In order to have your PATH updated so you can run xbrup, you must re-source the file by using:

. /etc/profile

Configuring BRU-Pro Server

The next step is to fire up xbrup, the GUI control center for BRU-Pro. At the command line type:


to start the control center. If you are using ssh to connect to the server via remote, you can forward the display to your local desktop by issuing on your computer:

xhost +tapeserver.mydomain.com

assuming that tapeserver.mydomain.com is the host name of the remote computer. Then after establishing an ssh session, as root, type the following to have the client open on your local desktop:

export DISPLAY=
. /etc/profile

This assumes that the IP address of your local system is By exporting the $DISPLAY variable as you are telling the system to use the X server on your local system. Next, source /etc/profile to setup the $PATH settings, and then run xbrup on the remote system.

You will be asked to enter the administrator password you assigned when installing BRU-Pro. After typing this in, you will get the main BRU-Pro screen. From here you can start a backup, restore a backup from tape, verify that a backup is good, configure BRU-Pro, refresh cached data, or exit the control center.

The first thing to do is to click on the Configure button. This will open up two new windows. The left-hand window contains a tree view of the different configuration options: Jobs, Schedules, Groups, Devices, and Destinations. The right-hand window is an expanded view of whatever configuration option you select.

Under the Jobs section you can view previously saved jobs. This will give you a quick glance at saved jobs on the system. Jobs are backup classifications. For instance, you might define a daily job to backup all the /home directories on one machine. You may also define a weekly job to backup the entire file system on all client machines. This is not, however, where you define new jobs. You only get to view saved jobs here and the only manipulation you can do is to delete them. You can also view a history of completed jobs and see if any jobs are currently running and their current status.

The Schedules configuration section is where you can modify saved jobs that are set to be repeated based on a certain schedule. Here you can define when certain jobs are to be run, how to repeat them, the backup scope (full or incremental), and whether to overwrite data on the current tape or append data to the current tape.

The Groups configuration option is where you define client machines and users that are able to use the tape drive or library. If you look in the Default group, you will see the host name of the local machine defined, and the default user brupro. You can add or delete new users who will have access to BRU-Pro and define what access privileges they have. For instance, the brupro user is defined as the Tape Administrator which is the highest access level granted. You can also define Group Administrator, Machine Administrator, and End User groups.

The Group Administrator has the second highest level of access and can control any machines or processes assigned to a certain workgroup. So if you define a new user as a Group Administrator, he or she will be able to control all machines and scheduled jobs for the work group they are assigned to, which is the Default group by default.

The Machine Administrator only has access to the machine he or she is assigned to. So if you define a Machine Administrator for one client machine, they can only modify information for that sole client machine and no other systems or jobs that affect the rest of the group.

Finally, the End User is the lowest access level in BRU-Pro. The End User only has access to files that he or she has access to on the client system. For instance, if the client machine is a Linux machine, they will only have access to those files in their home directory and other files on the system that they have access to.

You can have as many groups as you like. Depending on your number of client licenses, you may wish to group some servers into one group, some client systems in another work group, and so forth to keep them separate from each other. This allows you to fine-tune the level of control you have over users being able to access data on your tapes.

Finally, there is the Client Scan option which allows you to configure client systems, which we will take a look at in a moment.

The Devices configuration option allows you to detect new devices on the system and configure them. You can also configure any defined tape libraries and drives.

The Destinations configuration option allows you to configure devices that are to be used in backups. This lets you define permissions and the owner of the device.

For instance, on my system is a SCSI Seagate STT20000N tape drive, which uses 20GB tapes. Under Devices/Tape Drives, the Seagate shows up and displays information on the tape drive; the vendor, model, version, and device node, which in my case is /dev/nst0. Under Destinations, the tape drive shows up as “Standalone Seagate 1” which was the name given it automatically during installation because it is a single tape drive and not a tape library device.

And that’s all there is to configure. During installation the hardware should have been properly configured, so the only thing you should have to configure are you client machines, optionally a few users, and any automatic jobs you wish to run.

Adding BRU-Pro Clients

Adding a BRU-Pro client is simple. On my Windows ME system, I just inserted the CD-ROM and clicked on setup.exe from the Windows Explorer drive view. This started the installation and all the information I was asked for was the host name of the tape server, and the host name of the Windows client machine. Just make sure you have TCP port 6602 open to allow communication between the client and server and you’ve got it made. Go back to xbrup on the server and click on Client Scan in the Groups configuration section and give it the IP address of your Client. Once this is complete, the client system will appear in the Default group and you should assign a user for the machine which should probably correspond to the primary user of the client machine. And that’s all there is to it! The configuration for the Linux, FreeBSD, and other *NIX clients is just as simple.

Creating the First Backup

In xbrup, click on the Backup button and you will be brought to a screen asking for the device to backup to and whether or not you want to load a previously saved job. Here you can also define the files to backup by using an easy tree navigation view of the server and all defined client system directory trees. Simply click on the folder next to the directory you wish to backup to have it included in the file selection.

Under the options you can tell BRU-Pro to verify every archive after backup and also tell it to email a completion report to a specific user.

Once you have selected the files you wish to backup, you can click on the Save/Schedule button at the bottom of the screen to save the selection as a job and also schedule the backup to repeat at times that you define. Once you have done this, if you choose to, you can exit BRU-Pro and allow it to execute the backups when you define, or click the Run button to have it perform the backup immediately.


BRU-Pro is perhaps one of the easiest to use and easiest to configure client/server backup programs I have ever had the pleasure of using. It’s not cheap, but it does an amazing job of simplifying what used to be a very difficult process under Linux and other UNIX systems. And it beats the heck out of using tar for your backups!

If BRU-Pro sounds like overkill for you, but you still want a reliable backup program, take a look at the BRU personal version. It is as reliable and feature-rich as the Professional version, but will only work for the one machine it is installed on. If you don’t need network backup capabilities, the personal version may be better suited for you. Whichever version you choose, rest assured that you are using a mature and reliable product to protect your important information.