Modules - LAN Backup and Recovery

Contents

Overview

LAN Backup Information
Description Client/server backup and recovery
Package Name cc-bacula
Configuration Page Software > File Services > LAN Backup/Recovery

Bacula is a network-based backup program. It allows an administrator to backup, recover and verify data on any number of systems on a local area network (and across VPN tunnels), on a variety of operating systems. Bacula supports various storage media devices, including file, tape, removable HDD.

Installation

If you did not select this module to be included during the installation process, you must first install the module.

Supported Media

ClarkConnect's implementation of the Bacula backup/restore software is customized to support a limited selection of hardware.

  • The server's hard disk - obviously not recommended for server backup
  • Iomega REV (35GB and 70GB) with the following interfaces:
    • IDE/ATAPI
    • USB
    • SATA
  • USB Mass Storage Device (USB drives, memory sticks etc.)
  • Another workstation on the LAN
  • DVD (beta)
Warning! 
  Although Bacula natively supports a wide range of tape drives - Point Clark Networks does not provide technical support for devices that are not included in the supported media list above. Please refer to Bacula's professional support services or mailing list for support for alternative storage devices.  
 


Configuration

Bacula's webconfig overview provides links to actions and other reporting or configuration information that might be of interest. A status window displays the latest messages originating from the Bacula Director - the main daemon responsible for orchestrating backups and restores. Image:ss_bacula_overview.png

If you are a novice user and looking to use this module to simply make backups of the server to a supported storage media device, you can do everything you wish with the options listed in the Basic section.

As you become more familiar with the software you will quickly realize the full potential Bacula offers for complete network disaster recovery implementation. The advanced section provides links to some of the features that you will need in setting up new clients, creating new file sets, configuring schedules etc.

The webconfig utility that provides the Graphical User Interface (GUI) is not the only method of interacting with the Bacula daemons. Bacula has its own, shell-based, console which advanced users will find extremely useful for situations where the GUI does not support a specific feature/function of Bacula.

 
  As of version 4.1, this text-based console is accessible via the '''Advanced Configuration''' listing under ''Virtual Console''.  
 


This manual will describe the features and functionality of the webconfig GUI that should provide the majority of users with the ability to backup, validate and restore files from any number of client machines on the local area network. For circumstances where it is necessary to access more advanced features, please refer to the Bacula console (or webconfig's virtual console) and sections of the online Bacula manual.

Basic Configuration

Backup Server

This option will begin a wizard which will take the user through backing up the server to an appropriate device. Although a server backup can be done to the local hard disk, this option provides no disaster recovery and only provides a measure of safety against accidental deletion of files by the user/administration.

In addition to listing any removable devices like USB MSD or Iomega REV RRD's, an option to backup to a Windows desktop on the LAN is possible. Use this option to provide recovery in the event of a hard disk failure or loss of just the server. Similar to the file option, this does not protect against a disaster that the destruction or loss of both the server and client machine on the LAN (ie. fire, theft etc.).

Backup Client

Kicks off a wizard that will take you through the backup of a client on the LAN.

Restore Server

Begin a wizard that will restore a full backup to the server provided you have the bootstrap file (BSR) and physical media containing the volume where the backup was stored to.

Restore Client

To restore a client on the LAN that has been backed up to the server, use the WX-Console (for Windows) or B-Console (for Linux/Unix) user interface to restore.

Device Controls

Used if you need to mount/unmount or eject removable media.

Auto-Detect (Storage) Hardware

Use the auto hardware detection link to view possible physical media recognized by the Linux kernel that can be used as a storage medium.

Image:Ss_bacula_auto_configure.png

Some devices like the Iomega REV drive will automatically be added and configured as a storage device. In this case, Update will be displayed under the Action column should an admin wish to make custom changes.

If a device needs user-intervention to configure the properties of the device properly, the device will be displayed in the list with Add under the Action column. Click on the Add link to add this medium and then configure it.

Hard disks 
  You do not need to add your main hard disk as a storage device, even though it will be listed in the auto-discovery process. Use the "File" type instead.  
 


Advanced Configuration

Global Settings

Enable the "Email on Edit" setting to automatically e-mail a set of your current Bacula configuration files to the admin contact (see "Director Daemon Settings" section below).

The configuration files can be saved to the backup medium just as any other file. However, having these files to start with greatly simplifies the recovery process should the files be lost in a hard drive failure or other incident. Having the latest configuration files avoids a sort of 'chicken and the egg' scenario.

Use the "Email all files" link to send all current configuration files immediately. You should make sure the mailserver setting is set correctly in the section below prior to attempting to mail out a set of files.

Director Daemon Settings

The director is the main Bacula daemon that directs all operations. It acts as the 'go-between' between a client resource and the storage device.

Name

The director's name. We recommend adhering to the Bacula's convention of using the system name appended with "-dir". This directive should not require changing after the intial set-up.

Address

The director's address. This should be changed to a fully qualified domain name or IP address. It should not be left as the default setting 'localhost' as client machines will fail on backup. Examples of an address or FQDN include:

  • 192.168.1.1
  • gateway.lan
  • mydomain.com (preferred)

Port

The port the director daemon listens on. By default, port 9101.

Password

This is the director's password that is used to authenticate to a client or storage device.

Operator e-mail

This address receives notifications for required interactivity - for example, replacing a removal media drive or labeling a tape.

Admin e-mail

This address receives all notifications relating to the general 'health' of the system.

Mailserver Address

If you do not run an SMTP server on the machine you have installed the Bacula director on, you will need to specify the mail server address in this field (for example, your ISP's mailserver). If you are running an SMTP locally, leave the default setting, 'localhost'.

Database Password

Bacula uses a MySql backend to track and manage files and directories that are backed up or restored. This field will change the password used to access this database.

File Daemon Settings

The file daemon is responsible for providing files to the director or receiving files from the director during a backup or recovery, respectively. The file daemon is platform-dependent and needs to be installed, configured and running on each client to be included in the backup/recovery process.

Name

The file daemon's name. We recommend adhering to the Bacula's convention of using the system name appended with "-fd". This directive should not require changing after the intial set-up.

Port

The port the file daemon listens on. By default, port 9102.

Storage Daemon Settings

The storage daemon is responsible for providing files to the director or receiving files from the director during a recovery or backup, respectively.

Name

The storage daemon's name. We recommend adhering to the Bacula's convention of using the system name appended with "-sd". This directive should not require changing after the intial set-up.

Port

The port the file daemon listens on. By default, port 9103.

Creating and Editing Clients

Click on the "Configure Clients" link from the main menu to display and access the edit/add links for clients. A client is simply another computer on your network that you wish to have 'backed-up' to your storage device.

Image:ss_bacula_client.png

The screenshot above shows one client (the default server) with a new client about to be created (MP3-Collection-fd).

Adding a Client Resource

Select a client nickname (ie. MP3-Collection-fd) and click on the "Add" link. You will be taken directly to the "Edit Client" form to complete the remaining information that is required.</p>

The next section describes each of the fields of the client resource exposed via the GUI.

Editing a Client Resource

Image:ss_bacula_client_edit.png

Name

The client's name. We recommend adhering to the Bacula's convention of using the system name appended with "-fd". This directive should not require changing after the intial set-up.

Address

The client's address. See the Director's Address for recommended entries.

Port

The port the client file daemon listens on. By default, port 9102.

Password

This is the client's password that the director daemon uses to authenticate.

File Retention

Defines the length of time that Bacula will keep File records in the Catalog database. When this time period expires, and if AutoPrune is set to yes Bacula will prune (remove) File records that are older than the specified File Retention period. Note, this affects only records in the catalog database. It does not effect your archive backups.

Job Retention

Defines the length of time that Bacula will keep Job records in the Catalog database. When this time period expires, and if AutoPrune is set to yes Bacula will prune (remove) Job records that are older than the specified File Retention period.

Auto Prune

If auto prune is set to "Yes" (default), Bacula will prune the files and jobs from the catalog according to the retention times (see above). If disabled, your catalog will continue to grow in size on each backup, since older data will not be removed (pruned).

After you add a client, you will need to download the Bacula Client specific for the Operating System (OS) running on the machine. For example, if you are running Windows(TM) XP, you will need to go to SourceForge and install the Win32 for the appropriate version.

 
  Note: To determine the version installed on your system, use "rpm -qi cc-bacula".  
 


Installing and Configuring the Client Software (File Daemon)

The backup/recovery module allows you to backup multiple client machines on the LAN, across VPN tunnels or over the Internet, although this latter method is highly discouraged as data traffic is not encrypted during backup/restore. The director daemon requires a file daemon to be installed and configured properly on each machine to be backed. The remainder of this section will go through the installation and configuration of a Windows XP, Linux (Mandrake) and Mac OSX install.

Before Installing Client Software

Before you begin to download and install the client software, you'll need to determine what version you need. If you are familiar with command line Linux, you can query the RPM using the "-qi" options. An alternative and simple method is to get your local backup server running, and click on the "Current Status" link.

Image:Ss_bacula_menu_current_status.png

Once the page updates with the current status information, look to the second line to get the version information.

Image:Ss_bacula_version.png

Windows XP

Now that we know which version we are looking for (in the case of the above example, version 1.36.2), we need to find the appropriate client download. Bacula is an Open Source Software package developed and maintained on the SourceForge listing - http://sourceforge.net/index.php. A simpler way of searching for the correct packages might be to go directly to the Bacula Home Page and look for the "Current Files" link. This link will take you to the exact location - Bacula on SourceForge.net.

Scroll down to the Windows section (Win32), ensure you are looking at your version list (1.36.2 in our example), and click on the "Download winbacula-1.36.2.exe" link to start the download.

Image:ss_bacula_sourceforge_download.png

Depending on where you have your broswer set to save downloads, find the file and run the executable by double clicking on the icon. Confirm the first few steps of the install wizard and pause when you are asked to select an install location. You can choose to install in any directory you wish, however, for the purposes of this manual, we are going to assume you create a new directory so that the location appears as "C:\Program Files\Bacula".

Image:ss_bacula_client_exe_path.png

As you continue on through the installation, two configuration files will be displayed. You will need to edit them according to the information you provided during the setup of the director and client - specifically:

bacula-fd

Director {

 Name =  Director's Name
 Password =  Client's Password

}

FileDaemon {

 Name =  Client's Name
 FDport = 9102
 WorkingDirectory = "C:\\Program Files\\Bacula\\working"
 Pid Directory = "C:\\Program Files\\Bacula\\working"

}

 
  Note: WorkingDirectory and Pid Directory may differ from above, depending on the "Destination Folder" selected during install (see above).  
 

Messages {

 Name = Standard
 director =  Director's Address = all, !skipped

}

bconsole

Director {

 Name =  Director's Name
 DIRport = 9101 (by default  Director's Port)
 address =  Director's Address
 Password =  Director's Password

}

wx-console

Director {

 Name =  Director's Name
 DIRport = 9101 (by default  Director's Port)
 address =  Director's Address
 Password =  Director's Password

}


Linux (Mandrake)

Once you have determined the Bacula version installed on your ClarkConnect server (see above), you'll need to download the client packages for your Linux distribution. In this example, we will be installing/configuring the client on Mandrake 10.1 Community Edition. You only need the bacula-client package...not the full install, since the director and storage daemons will be running on ClarkConnect.

Image:ss-bacula-mandrake-client.png

Having downloaded the RPM, install it on your system (as root).

rpm -ivh bacula-client-1.36.1-3.i586.mdk101.rpm
Preparing... ########################################### [100%]
1:bacula-client ########################################### [100%]

Bacula will install the relevant configuration files in the /etc/bacula directory. You will need to edit the same two files listed in the Windows configuration section above, namely:

  • bacula-fd.conf
  • bconsole.conf

To start the client daemon, type:

/etc/rc.d/init.d/bacula-fd start

Mac OSX

TODO

Creating and Editing Schedules

Scheduling jobs allows backups to be performed automatically without human intervention, provided the storage device is available to be written to. You can create as many schedule definitions as you wish. Once created, the schedule is available to be associated with a job, which will then be run automatically at the specified time(s).

Adding a Schedule

To add a schedule, enter a unique schedule name and click 'Add'. A schedule default template will be created and the edit schedule form will be displayed (see Editing a schedule).

Editing a Schedule

Each schedule definition can have an unlimited number of 'events' associated with it. An event is a combination of a backup level (Full, Incremental or Differential), a schedule definition (Every Saturday, Monday through Friday etc.) and a time.

Image:Ss_bacula_schedule.png

Creating and Editing Filesets

A fileset instructs the Bacula director what directories and files to backup and which ones to leave alone. Generally speaking, you will probably have at least one unique fileset for each client machine. However, a fileset can be used in any job, for any client backup.

This module ships with two default filesets

  • Catalog
  • Config

which are protected.

The Catalog fileset can not be edited nor deleted and is responsible for creating a database image of the Bacula catalog and backing up the resultant file.

The Config filset can be edited but can not be deleted. It is responsible for saving important configuration files for the software and services than run on your server. It is recommended that you keep the default file/directory entries and add to this list in the event you add a package with custom edits to a configuration file.

Image:ss_bacula_filesets.png

The fileset list in the screen capture above shows the two default entries in addition to three uniquely named additions, one of which, the user has protected against deletion (the "Home" fileset).

Adding a Fileset Resource

Choose a unique name for your fileset that describes the sort of directories/files are reflected. For example, you might name a fileset WinXP-MyDocs for any Windows XP machine on the LAN where you wish to backup the owner's "MyDocuments" contents. You will be taken directly to the "Edit Fileset" form to complete the remaining information that is required.

The "Database" checkbox defines whether a backup represents a set of files/directories (off) or the data contained within a database (on). MySQL and PostgreSQL are currently supported.

The next section describes how to edit a fileset in order to achieve the desired backup results.

Image:ss_bacula_fileset_edit.png

Editing a Fileset Resource

Filesets structures are extraordinarily flexible in defining directories and files to be backed up, however, this diversity comes at a cost: complexity. In the current webconfig User Interface, only a fraction of the power of fileset building is exposed. Greater functionality/features will be added in future releases.

 
  Advanced users should read the Bacula chapter dedicated to creating fileset resources and may wish to consider editing via CLI to achieve the desired results.  
 

The Bacula webconfig UI has two 'modes' to edit filesets - Regular and Database.

Regular Fileset

The regular fileset mode allows you to add include and exclude statements in order to define which files you wish to back up and those you do not wish to backup. Any number of include statements are allowed within a fileset definition, but only one exclude. Each include statement can have unique options that work together to describe the files you wish to have backed up. The table below describes the directives supported bia the User Interface (UI).

Compression Image:icon-bacula-compression.png

Use software compression (GZIP). If you are backup up to a device that supports hardware compression, you are advised not to enable software compression.

Signature Image:icon-bacula-signature.png

Compute and store an MD5 or SHA1 signature with each file. Users are strongly advised to use MD5 or SHA1.

IgnoreCase Image:icon-bacula-case.png

When set to "Ignore", all regular expressions and wildcards will ignore differences based on upper and lower case.

Exclude Image:icon-bacula-options.png

When set to 'Include', all wild-cards and regular expression matches will include files and directories to be backed up. If the 'Exclude' option is set, matching files and directories will not be selected.

Wild Image:icon-bacula-wild.png

A wild-card string to match files or directories.

WildfileImage:icon-bacula-wild-file.png

A wild-card string to match files only.

Wilddir Image:icon-bacula-wild-dir.png

A wild-card string to match directories only.

Regex Image:icon-bacula-regex.png

A regular expression string to match files or directories.

Regexfile Image:icon-bacula-regex-file.png

A regular expression string to match files only.

Regexdir Image:icon-bacula-regex-dir.png

A regular expression string to match directories only.

Database Fileset

The ClarkConnect LAN backup and recovery module allows you to backup two of the most popular open-source database engines available:

  • MySQL
  • PostgreSQL

Backing up data stored in an SQL database must be done by 'dumping' the contents of the database to file first. Backing up the files directly would result in data corruption as the content is dynamically being updated.

This module simplifies database backup by providing a separate interface when the database is enabled. This flag can only be enabled during the creation of a fileset (see "Adding a Fileset" section above). A typical database backup configuration form is shown below.

Image:Ss_bacula_fileset_db.png

Name

The Fileset name.

Compression

See above.

Signature

See above.

Type

The SQL engine. Currently, MySQL and PostgreSQL are supported.

Hostname

The IP address or hostname where the server is located. A database does not have to be running on the localhost in order to be backed up.

Database Name

The name of the database

Username

A username that has rights to access this database. Leave blank if there is full access to any user.

Password

The database password. Leave blank if no password is associated with the database.

Port

The port the SQL service is listening on. The default ports for the two supported engines are listed below.

  • MySQL - 3306
  • PostgresSQL - 5432

Creating and Editing Jobs

Jobs are collections of other resources (ie. a client, a fileset, a storage device etc.) that work tie together to backup (or restore) your data. Jobs can be scheduled to run automatically, removing the need for human intervention (except if you have removable storage device media, of course).

By default, ClarkConnect contains two jobs pre-defined

  • BackupCatalog - backs up an image of the Bacula MySQL database
  • Restore - a restore template

The restore template is unique in that Bacula only uses a single restore job which is then modified at run-time for specific recovery operations. This uniqueness is described in more detail in the "Type" section below.

Adding a Job Resource

Choose a unique name for your job that describes the action. You will be taken directly to the "Edit Job" form to complete the remaining information that is required.

Image:Ss_bacula_job.png

Editing a Job Resource

A typical job edit form looks like the screen capture below.

Image:Ss_bacula_job_edit.png

The following directives are supported by the Webconfig UI for the Bacula module:

Name

A unique name for the job.

Type

The job type. Valid options are:

Backup

Normally, you will have at least one backup for each client machine you backup. You will also have the pre-installed backup for the MySQL catalog.

Restore

The restore type is restricted (via the webconfig UI) to a single job definition. Since a restore template is pre-defined, this option will not be available if you add a job if the restore template still exists.

Verify

Verifies that the information stored in the database (which maps to the actual backup file(s) matches that which resides in the directories at the current time, and reports differences, as evident.

Admin

Runs an administrative (normally database related) job. See the Bacula manual for more information.

Level

The level. Valid options are:

Full

Includes all files defined with the associated Fileset, regardless of whether or not they have changed.

Differential

Includes all files since the last successful full backup. In practice this means that a full restore requires just the last Full and the last Differential backup.

Incremental

Includes all files since the last successful backup (either Full or Incremental) . As a result, a full restore requires the last Full backup and all successive Incrementals.

Client

A valid client resource.

File Set

A valid file set resource.

Schedule

A valid schedule resource.

Storage Device

A valid storage device resource.

Pool

A valid pool resource.

Priority

Permits prioritization of jobs to determine which jobs run first. The higher the integer, the lower the job priority.

Create Bootstrap (BSR)

Creates a bootstrap (BSR) file associated with the job, permitting restore without a catalog.

Send Admin BSR via E-mail

Send the BSR file to the value in the administration email. Useful in cases where the Bacula database is lost, damaged, corrupt, stolen or otherwise rendered useless, but the backup image exists on the storage daemon or removable media. Sending this file to a Gmail account or other web-based email service provides another option in the event of data loss.

Creating and Editing Pools

Pools are collections of volumes where your data is stored. Many installs will use a single (Default) pool. Or, you may wish to create and specify a unique pool for each client or job.

Adding a Pool Resource

Choose a unique name for your pool that describes the client or job. You will be taken directly to the "Edit Pool" form to complete the remaining information that is required.

Image:Ss_bacula_pools.png

Editing a Pool Resource

The following directives are supported by the Webconfig UI for the Bacula module:

Name

A unique name for the pool.

Type

The pool type. Currently, only backup pools can be configured.

Recycle

Specifies the default for recycling Purged Volumes. If a Volume is recycled, all previous data written to that Volume will be overwritten.

Auto Prune

If AutoPrune is set to yes, Bacula will automatically apply the Volume Retention period (see below) when a new Volume is needed and no appendable Volumes exist in the Pool. Volume pruning causes expired Jobs (older than the Volume Retention period) to be deleted from the Catalog and permits possible recycling of the Volume.

Volume Retention

Defines the length of time job records associated with the Volume will be kept. When this time period expires, and if AutoPrune is set to yes, Bacula will prune (remove) job records that are older than the specified Volume Retention period.

Accept any Volume

The directives determines whether any volume will be accepted by the Bacula director to write to during a backup. If it is no only the first writable volume in the Pool will be accepted for writing backup data.

Label Format

If the Label Media directive in the storage resource is set to 'Yes', the label format directive must be set and will automatically label the media during a backup with the specified format. For example, a value of "File-", the following volumes will be created:

  • File-0001
  • File-0002
  • File-0003
  • ...

You can also use variable expansion. For example, all jobs running on Monday with "Weekly-${WeekDay}" would result in:

  • Weekly-Monday0001
  • Weekly-Monday0002
  • Weekly-Monday0003
  • ...

Creating and Editing Storage Devices

The Bacula Server/LAN backup and recovery module has two defined storage device resources in the configuration files on a default installation:

  • File
  • Iomega REV removable HDD

The "File" device represents the local hard drive of the server Bacula is installed on. This is an easy and efficient means to back up data located on machines on the Local Area Network. You can even backup the server with this configuration, however, it is highly recommended that this file image be synced to a desktop, or better still, burnt to CD/DVD or copied over the Internet (scp tool) to a system outside the LAN.

The Iomega REV drive is an ideal backup storage media device for small businesses. The REV is a hard disk drive offering greater storage capacity over CD-ROM and DVD formats. In addition, the drive medium is removable, allowing unlimited storage capacity by adding drive units and having the advantage of being able to move backup data off site in the event of disaster, theft or other event that would result in loss of the storage medium. It is also fast - over 8 times faster than a tape backup solution.

The backup and recovery module supports and has been tested using the ATAPI model Iomega REV drive. USB, Firewire, Serial ATA and SCSI can be used, however, manual configuration may be required through direct editing of the Bacula configuration files. If you have a choice, the ATAPI (IDE) model is your best bet. For information on aquiring REV hardware, see the Related Links section below.

The module supports the creation of multiple backup definitions so you are not limited the defaults above. Additional file resources can be specified, and these do not necessarily have to be on the LAN. A file resource could be specificed that resides on another network. With the proper firewall rules and configuration, a satellite office could backup data to the company headquarters, or vice versa.

Warning! 
  If you are considering backing up data across a public network (ie. the Internet), it is important to weigh in on the following fact - Bacula does not currently support data encryption at the time of storage, so any traffic crossing a public network cannot be considered secure.  
 

Besides supporting direct to file and the Iomega REV drive, the native Bacula module supports all kinds of tape solutions and tape storage auto-changers. Keep in mind, however, that although the Bacula project supports these devices, the ClarkConnect backup module may not interface with these devices properly. Direct editing of the configuration may be required in addition to using the Bacula text-based UI (bconsole) to backup to tape-based drives. For a list of supported tape drives, see the Bacula hardware support list.

Adding a Device Resource

Choose a unique name for your storage resource that describes the device. You will be taken directly to the "Edit Device" form to complete the remaining information that is required. Image:Ss_bacula_storage.png

Editing a Device Resource

A typical edit configuration form is shown below.

Image:Ss_bacula_device_edit.png

The following directives are supported by the Webconfig UI for the Bacula module:

Name

A unique name for the storage device.

Address

The address where the storage device resides on the network. This field can be a valid IP (internal or external), FQDN or "localhost".

Warning about "localhost" 
  Although entering "localhost" correctly describes the location of the storage daemon if running in parallel (ie. the same server) with the director daemon, it is ambiguous (and will cause backups to fail) for machines on the Local Area Network. An IP address (ie. 192.168.1.1) or a FQDN should be used.  
 


Port

The port the storage daemons listens on. By default, 9103.

Password

This is the storage daemons's password that the director will pass to a client for authentication to the storage device.

Device or Mountpoint

File

Add the full directory path where you would like Bacula to save backup images of your filesets.

Iomega REV HDD

Enter in the mount point you created using the "Mount" action (see here). For example, "/mnt/REV".

DDS/DLT

Enter the device location. For example, "/dev/nst0".

Media Type

A generic descriptor of the type of storage device. Valid selections include:

  • File - a local filesystem (HDD, USB memory stick etc.)
  • Iomega REV - see here
  • DDS - Digital Data Storage device (DDS-1 [2GB], DDS-2 [4GB], DDS-3 [12GB], DDS-4 [20GB])
  • DLT - Digital Linear Tape, a magnetic tape storage device

Label Media

If enabled (set to "yes), the device will automatically label blank media. In other words, it will create the backup file to write to without user intervention. For information on how to set the Pool resource label format, click here.

 
  If enabled, you must enter a value for the media label format in the Pool Resource.  
 

If disabled (set to "no"), you will have to manually label media as required. For information on labeling media using the "Device Actions" feature, click here.

Random Access

Devices that have linear access to storage medium (ie. a tape moving across a static head), set to "No". Otherwise, set to "Yes".

Auto Mount

Set this directive to "Yes" to permit the Bacula daemon to examine the storage media and search for a Bacula labeled volume.

Removable Media

Set this directive to "Yes" if the storage device uses media that can be removed from the server (ie. a REV HDD, DAT, USB memory etc.).

Always Open

It is recommended that you set the "Always Open" directive to "Yes", making the storage media always available to Bacula. This allows scheduled backups to be run without user intervention. If set to "No", tape media will be rewound at the end of each backup.

Maximum Volume Size

Sets a physical limit to the amount of data written to a device media.

Restoring Your Catalog

Your catalog (contained in a protected MySQL database) is the central index of your backup. Think of your catalog as being the equivalent of a catalog in a libary. Without an up-to-date catalog, recovering your files in the event of a hardware failure or disaster becomes much more difficult. You may have all the data (books) on a backup storage device, but finding a single file without a catalog is a time-consuming operation.

As a result of the catalog's importance, the webconfig utility was designed to give you three common methods of recovering your catalog in the event it destroyed or corrupted:

  1. Catalog recovery by bootstrap file (BSR)
  2. Catalog recovery using locally stored image
  3. Catalog recovery by uploading an image

You will be given the option to choose which method you wish to use from the "Restore Catalog" menu (see screenshot below).

Image:Ss_bacula_restore_catalog.png

A MySQL catalog can become large over time - very large. Depending on the number of clients and files you backup on a regular basis, it is not uncommon to have a catalog that is in excess of 10-20MB in size. As such, method #1 above is the preferred method - backing the data in the catalog database on a regular basis to whatever storage device you are using. The only difference during recovery, is that you will use a bootstrap file (BSR) instead of using the catalog - a necessity since you don't have the catalog.

Using a bootstrap file to re-create your catalog

  1. Ensure the backup medium containing the latest catalog data is in your storage device
  2. Click on the "Restore Catalog" link
  3. Select the "I want to use a bootstrap (BSR) file..." option
  4. You should have the latest BSR file for the catalog that was e-mailed to the administration user. Retrieve it and save it to your local hard disk.
  5. Click on the "Browse" link and select the file you saved in the prior step
  6. Click on the "Continue" link
  7. A web dialog will be displayed asking you to confirm or cancel
  8. Click "Continue". The database import may take several seconds (or minutes if very large) to complete.

Restoring from a local database image

Select the "I want to use a catalog image stored locally..." option and enter the filename including absolute path of the database image. Click on "Continue". Confirm your intention to initialize the database using the data you have in the image.

Uploading/restoring a database image

Due to the file size limitations of uploading files combined with the large file size inherent to the Bacula catalog database image, this option is limited in use. It is a convenience for those who have a catalog image mailed to an account (ie. Gmail). However, for any catalog that is larger than 2MB, you would be advised to use an alternative file transfer method (SCP, FTP, WinSCP etc.).

Device Controls

Some devices require actions like ejecting a tape or removable HDD. You can perform these actions through the webconfig utility using the drop-down list of supported actions in the "Device Controls" page.

Image:ss_bacula_device_ctrl.png

Mount

Mounts a filesystem at a specified mount point.

For IDE and SCSI Iomega REV drives, the device location will be auto-discovered - only a mount point needs to be specified.

For tape systems, this action will call an internal Bacula mount that ensures the device is available for Bacula to read/write.

Unmount

Unmounts (or umounts) a device.

Unmount and Eject

Same as Unmount, except that the tape or removable media is ejected.

Eject

Ejects removable media from the device.

Label

Bacula uses labels in order to create volumes that are then associated through the use of pools. This may sound complicated at first, but it is really not. For more information, see the Bacula online manual concerning Pools, Volumes and Labels.

Rewind

Issues a rewind command. Only applicable for tapes.

Report

The report page provides a graphical display of job history.

Image:ss_bacula_report.png

Virtual Console

The virtual console gives the administrator the ability to run Bacula commands via the webconfig GUI rather than the Bacula console. The use of AJAX makes this interface seamlessly bridge the divide between Bacula's console and the PHP webconfig form. Use of this feature should be done with caution and only by those having a solid understanding of the Bacula console commands.

Image:Ss_bacula_virtual_console.png

Performing a Backup

Under most circumstances, backups will be performed automatically by the Bacula scheduler (provided you have created scheduled backup jobs). However, on occasion or by personal preference, users may wish to manually initiate a backup job.

A backup job must be defined as a resource in order to initiate a manual backup. If you have not done so already, you will need to define resources needed by a job definition (ie. FileSet, Pool, StorageDevice etc.), and define a job.

Performing a Recovery

Recovering Individual Files

Recovering individual files from a specified date is not currently available through the webconfig User Interface. This functionality is available via the Bacula “bconsole” CLI interface and follow procedures documentation provided on the Bacula.org site. Alternatively, if the recovered file(s) reside on a client machine (not the ClarkConnect server), users can use the graphical user inteface provided by the Bacula client that is available for Linux, Mac and Windows platforms.

Recovering from Total Data Loss (aka: Disaster Recovery)

In the event you lose all data on your ClarkConnect server (through hard drive failure, damage, theft etc.) and provided you have data that was backed up to either removable media or to another machine, you will be able to fully restore your system to the state of the last full or differential/incremental backup.

The first step in restoring your server is to install the ClarkConnect OS on your new (or repaired) server. Download the latest ClarkConnect ISO matching your previous platform. It is advised (but not required) to stay with your current version until the server is restored to its original state. Register your server to the ClarkConnect Gateway Service network using the I am re-installing an existing system option. For more information on system registration, click here.

Once registered, install the Bacula backup/restore module using the webconfig User Interface (UI) on port 81 or via command line:

Apt-get update Apt-get install cc-bacula

Having installed the Bacula module, use the UI and navigate to the LAN Backup/Restore page that will be found under the Software heading. From here, you have three steps to a full restore:

  1. Upload the original Bacula configuration files
  2. Restore the Bacula file/directory database image
  3. Perform a full data restore

Uploading Bacula’s Config Files

Although you can include your Bacula’s configuration files in a FileSet to be backed up, this presents another ‘chicken and the egg’ scenario, since the original configuration files are required to perform a restore. The UI presents a simple and reliable way to always have available the latest configuration files by emailing these files as attachments through the General Configuration page. Locate the most recent configuration files and save them to your local computer’s drive.

There are four (4) configuration files that will be required:

  1. bconsole.conf
  2. bacula-dir.conf
  3. bacula-fd.conf
  4. bacula-sd.conf

Image:Ss_bacula_save_config.png

Click on the General Configuration link. You will see four sections:

  1. Global Settings
  2. Director Daemon
  3. File Daemon
  4. Storage Daemon

Click on the Upload Config Files link under the Director Daemon section. You will see a file upload entry form similar to the screen shot below.

Image:Ss_bacula_upload_config.png

Click on the browse link next to the bconsole.conf file. Locate the bconsole.conf file on your local computer, and select ‘Ok’.

Image:Ss_bacula_upload_selected_config.png

Repeat the procedure for the bacula-dir.conf file.

Once you have both files defined in the corresponding input boxes, click Upload now.

Repeat similar procedures as described above for the File Daemon (bacula-fd.conf) and Storage Daemon (bacula-sd.conf) sections.

Having uploaded your original configuration files for the Bacula module, are now ready to start the Bacula services. Return to the main Bacula menu and click on the Configure Daemons link. Select Start all services. All four bacula services (director, file, storage and the MySQL server) should now be running. Return to the main menu.

Restoring the Bacula Database Image

Your next task is to restore the Bacaul database image. This operation simplifies the final action of recovering data. Your Bacula database can be restored in one of two ways:

  1. BSR File
  2. Database dump

Follow the instructions provided here for the preferred method. The method you choose will depend on which method you had planned on using. For example, if your configuration was set to email the BSR file of the database image upon creation, this will likely be the method you use. Alternatively, if you have been saving a raw database image to another machine (or even emailing this image to an account), you can upload this image through the Bacula module UI.


Catalog Size 
  A Bacula database image (or dump file) can grow to a substantial size. Users are cautioned that emailing this file to an account may not be practical or possible.  
 


Restoring Data

Now that your configuration files and database image are restored, simply select and run restores on any jobs containing filesets that require restoring on the local server. From the Bacula UI main menu, select Restore. Since your configuration and database have been successfully restored, you can select the Standard Restore form, completing the fields as required.

Image:Ss_bacula_restore.png

Client

The client to which the files should be restored. This should match the client where the files were backed up from.

File Set

The file set that describes the files and directories to be restored.

Replace Policy

Allows the user to control whether newer files replace older ones or not. This is only applicable when the Location parameter (below) is left blank.

Location

Specifies the location where Bacula should restore the files to. Set this field to a blank (null) entry if you wish to restore files to their original location (caution, make sure your Replace Policy is properly set).

Troubleshooting

Logs

Have a look in the system logs if you are having problems. The bacula daemons log to /var/log/bacula.

Windows Firewall

Windows XP Personal firewall will block attempts made by the ClarkConnect server to backup a Windows desktop on the LAN. Open port 9102 on the Windows firewall by going to Start --> Security Center --> Windows Firewall and clicking on the 'Exceptions' tab. Add port 9102 and click Update.

Backup to client on the LAN

This option, available under the Basic settings, allows you to backup the server to a Windows shared directory on the Local Area Network (LAN). The following steps will assist you in configuring this option.

  • Go to Windows Start --> My Computer
  • Click on Shared Documents
  • Select File --> New --> Folder
  • Enter a folder name
  • Right click on folder and select Properties
  • Click on the Sharing tab
  • Enable the Share this folder on the network checkbox
  • Enter a share name...for example 'SharedDoc'
  • Enable the Allow network users to change my files
  • Click on OK

If you have Windows firewall enabled, you will need to open a port (189).

  • Go to Windows Start --> Control Panel
  • Click on Network and Internet Connections
  • Click on Windows Firewall
  • Click on the Exceptions tab
  • Click on Add Port
  • Enter Server Backup in the Name field
  • Enter 389 in the Port number field
  • Select TCP
  • Click on OK

In order to test whether you can mount the Windows share, login as root and type:

smbmount '//IP/NAME' MP -o 'username=USER,password=PASS'

where:

  • IP = IP address of Windows desktop
  • NAME = your share name, as defined in the steps above
  • MP = mount point on CC (i.e. /var/bacula/mnt/SueLaptop)
  • USER = Windows username
  • PASS = Windows password

Links

Retrieved from "http://wiki.clarkconnect.com/docs/Modules_-_LAN_Backup_and_Recovery"

This page has been accessed 23,159 times. This page was last modified on 10 March 2008, at 19:37.