Backup
From Wiki@Commgate
LAN Backup / Recovery
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.
Back to top
Installation
If you did not select this module to be included during the installation process, you must first install the module.
Back to top
Supported Media
CommGate'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 - CommGate 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. File:Backup-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.
Back to top
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.).
Back to top
Backup Client
Kicks off a wizard that will take you through the backup of a client on the LAN.
Back to top
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.
Back to top
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.
Back to top
Device Controls
Used if you need to mount/unmount or eject removable media.
Back to top
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.
File:Backup-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.
Back to top
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.
Back to top
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.
Back to top
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.
Back to top
Password
This is the director's password that is used to authenticate to a client or storage device.
Back to top
Operator e-mail
This address receives notifications for required interactivity - for example, replacing a removal media drive or labeling a tape.
Back to top
Admin e-mail
This address receives all notifications relating to the general 'health' of the system.
Back to top
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'.
Back to top
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.
Back to top
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.
Back to top
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.
Back to top
Port
The port the file daemon listens on. By default, port 9102.
Back to top
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.
Back to top
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.
Back to top
Port
The port the file daemon listens on. By default, port 9103.
Back to top
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.
File:Backup-ss bacula client.png
The screenshot above shows one client (the default server) with a new client about to be created (MP3-Collection-fd).
Back to top
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.
Back to top
Editing a Client Resource
File:Backup-ss bacula client edit.png
Back to top
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.
Back to top
Address
The client's address. See the Director's Address for recommended entries.
Back to top
Port
The port the client file daemon listens on. By default, port 9102.
Back to top
Password
This is the client's password that the director daemon uses to authenticate.
Back to top
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.
Back to top
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.
Back to top
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.
Back to top
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.
File:Backup-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.
File:Backup-ss bacula version.png
Back to top
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.
File:Backup-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".
File:Backup-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:
Back to top
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 CommGate 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 CommGate .
File:Backup-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
Back to top
Mac OSX
TODO
Back to top
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).
Back to top
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).
Back to top
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.
File:Backup-ss bacula schedule.png
Back to top
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.
File:Backup-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).
Back to top
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.
File:Backup-ss bacula fileset edit.png
Back to top
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.
Back to top
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).
Back to top
Compression
File:Backup-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.
Back to top
Signature
File:Backup-icon-bacula-signature.png Compute and store an MD5 or SHA1 signature with each file. Users are strongly advised to use MD5 or SHA1.
Back to top
IgnoreCase
File:Backup-icon-bacula-case.png When set to "Ignore", all regular expressions and wildcards will ignore differences based on upper and lower case.
Back to top
Exclude
File:Backup-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.
Back to top
Wild
File:Backup-icon-bacula-wild.png A wild-card string to match files or directories.
Back to top
Wildfile
File:Backup-icon-bacula-wild-file.png A wild-card string to match files only.
Back to top
Wilddir
File:Backup-icon-bacula-wild-dir.png A wild-card string to match directories only.
Back to top
Regex
File:Backup-icon-bacula-regex.png A regular expression string to match files or directories.
Back to top
Regexfile
File:Backup-icon-bacula-regex-file.png A regular expression string to match files only.
Back to top
Regexdir
File:Backup-icon-bacula-regex-dir.png A regular expression string to match directories only.
Back to top
Database Fileset
The CommGate 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.
File:Backup-ss bacula fileset db.png
Back to top
Name
The Fileset name.
Back to top
Compression
See above.
Back to top
Signature
See above.
Back to top
Type
The SQL engine. Currently, MySQL and PostgreSQL are supported.
Back to top
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.
Back to top
Database Name
The name of the database
Back to top
Username
A username that has rights to access this database. Leave blank if there is full access to any user.
Back to top
Password
The database password. Leave blank if no password is associated with the database.
Back to top
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, CommGate 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.
Back to top
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.
File:Backup-ss bacula job.png
Back to top
Editing a Job Resource
A typical job edit form looks like the screen capture below.
File:Backup-ss bacula job edit.png
The following directives are supported by the Webconfig UI for the Bacula module:
Back to top
Name
A unique name for the job.
Back to top
Type
The job type. Valid options are:
Back to top
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.
Back to top
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.
Back to top
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.
Back to top
Admin
Runs an administrative (normally database related) job. See the Bacula manual for more information.
Back to top
Level
The level. Valid options are:
Back to top
Full
Includes all files defined with the associated Fileset, regardless of whether or not they have changed.
Back to top
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.
Back to top
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.
Back to top
Client
A valid client resource.
Back to top
File Set
A valid file set resource.
Back to top
Schedule
A valid schedule resource.
Back to top
Storage Device
A valid storage device resource.
Back to top
Pool
A valid pool resource.
Back to top
Priority
Permits prioritization of jobs to determine which jobs run first. The higher the integer, the lower the job priority.
Back to top
Create Bootstrap (BSR)
Creates a bootstrap (BSR) file associated with the job, permitting restore without a catalog.
Back to top
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.
Back to top
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.
Back to top
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.
File:Backup-ss bacula pools.png
Back to top
Editing a Pool Resource
The following directives are supported by the Webconfig UI for the Bacula module:
Back to top
Name
A unique name for the pool.
Back to top
Type
The pool type. Currently, only backup pools can be configured.
Back to top
Recycle
Specifies the default for recycling Purged Volumes. If a Volume is recycled, all previous data written to that Volume will be overwritten.
Back to top
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.
Back to top
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.
Back to top
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.
Back to top
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 CommGate 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.
Back to top
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.
File:Backup-ss bacula storage.png
Back to top
Editing a Device Resource
A typical edit configuration form is shown below.
File:Backup-ss bacula device edit.png
The following directives are supported by the Webconfig UI for the Bacula module:
Back to top
Name
A unique name for the storage device.
Back to top
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.
Back to top
Password
This is the storage daemons's password that the director will pass to a client for authentication to the storage device.
Back to top
Device or Mountpoint
File
Add the full directory path where you would like Bacula to save backup images of your filesets.
Back to top
Iomega REV HDD
Enter in the mount point you created using the "Mount" action (see here). For example, "/mnt/REV".
Back to top
DDS/DLT
Enter the device location. For example, "/dev/nst0".
Back to top
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.
Back to top
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".
Back to top
Auto Mount
Set this directive to "Yes" to permit the Bacula daemon to examine the storage media and search for a Bacula labeled volume.
Back to top
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.).
Back to top
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.
Back to top
Maximum Volume Size
Sets a physical limit to the amount of data written to a device media.
Back to top
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:
- Catalog recovery by bootstrap file (BSR)
- Catalog recovery using locally stored image
- 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).
File:Backup-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.
Back to top
Using a bootstrap file to re-create your catalog
- Ensure the backup medium containing the latest catalog data is in your storage device
- Click on the "Restore Catalog" link
- Select the "I want to use a bootstrap (BSR) file..." option
- 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.
- Click on the "Browse" link and select the file you saved in the prior step
- Click on the "Continue" link
- A web dialog will be displayed asking you to confirm or cancel
- 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.
Back to top
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.).
Back to top
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.
File:Backup-ss bacula device ctrl.png
Back to top
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.
Back to top
Unmount
Unmounts (or umounts) a device.
Back to top
Unmount and Eject
Same as Unmount, except that the tape or removable media is ejected.
Back to top
Eject
Ejects removable media from the device.
Back to top
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.
Back to top
Rewind
Issues a rewind command. Only applicable for tapes.
Back to top
Report
The report page provides a graphical display of job history.
File:Backup-ss bacula report.png
Back to top
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.
File:Backup-ss bacula virtual console.png
Back to top
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.
Back to top
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 CommGate server), users can use the graphical user inteface provided by the Bacula client that is available for Linux, Mac and Windows platforms.
Back to top
Recovering from Total Data Loss (aka: Disaster Recovery)
In the event you lose all data on your CommGate 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 CommGate server on your new (or repaired) server. Download the latest CommGate 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 CommGate Gateway Service network using the I am re-installing an existing system option.
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:
- Upload the original Bacula configuration files
- Restore the Bacula file/directory database image
- 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:
- bconsole.conf
- bacula-dir.conf
- bacula-fd.conf
- bacula-sd.conf
File:Backup-ss bacula save config.png
Click on the General Configuration link. You will see four sections:
- Global Settings
- Director Daemon
- File Daemon
- 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.
File:Backup-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'.
File:Backup-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.
Back to top
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:
- BSR File
- 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.
File:Backup-ss bacula restore.png
Back to top
Client
The client to which the files should be restored. This should match the client where the files were backed up from.
Back to top
File Set
The file set that describes the files and directories to be restored.
Back to top
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.
Back to top
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).
Back to top
Troubleshooting
Logs
Have a look in the system logs if you are having problems. The bacula daemons log to /var/log/bacula.
Back to top
Windows Firewall
Windows XP Personal firewall will block attempts made by the CommGate 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.
Back to top
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
