Full Linux system backup with #Bareos on #Fedora Linux

By | March 13, 2017

As the home environment becomes more complicated the need for an integrated whole solution for the entire environment was necessary.
I already have an automatic backup setup using Barracuda Yosemite Server Backup, but this is only for one server (nas1) where OwnCloud is residing. The daily backup job in fact does a backup only for the OwnCloud files. All the other resources from nas1 and all the other servers and computers are left in the dark.
While searching for an GPL solution similar to the expensive Yosemite Server Backup Unlimited I stumbled over Bareos.
Because nas1 is already setup as a Directory for Barracuda Yosemite Server Backup , nas2 will be setup as the Bareos Directory. nas1 will just be a client of the main directory from nas2.

STEP 1: Install the bareos main and contrib repo files. There is no FC22 release yet so I used the compatible release for FC 21 or FC20

Find your favorite distribution binaries at:
Bareos latest release
Bareos contrib latest release

STEP 2: After copying the proper repo files to /etc/yum.repos.d install the packages:

[root@nas2 ~]# dnf install bareos* bareos-contrib* bareos-webui* bareos-bat bareos-storage-tape

The above will install:
– bareos = main binaries for bareos
– bareos-contrib = contrib bareos binaries
– bareos-webui = the web based bareos Admin Tool (more like a monitoring tool)
– bareos-bat = the QT bareos Admin Tool
– bareos-storage-tape = support for tape drives

STEP 3: Finish installation of bareos by setting up the database resources. Follow installation chapter from the official manual. The following is the except from the manual for my case :

MySQL

Make sure, that root has direct access to the local MySQL server. Check if the command mysql connects to the database without defining the password. This is the default on RedHat and SUSE distributions. On other systems (Debian, Ubuntu), create the file ~/.my.cnf with your authentication informations:

[client]
host=localhost
user=root
password=YourPasswordForAccessingMysqlAsRoot

Configuration 2.6: MySQL credentials file .my.cnf

It is recommended, to secure the Bareos database connection with a password. See Catalog Maintenance – MySQL about how to archieve this. For testing, using a password-less MySQL connection is probable okay. Setup the Bareos database tables by following commands:

/usr/lib/bareos/scripts/create_bareos_database
/usr/lib/bareos/scripts/make_bareos_tables
/usr/lib/bareos/scripts/grant_bareos_privileges

Commands 2.7: Setup Bareos catalog with MySQL

As some Bareos updates require a database schema update, therefore the file /root/.my.cnf might also be useful in the future.

STEP 4: Modify the configuration file for Bareos Directory service /etc/bareos/bareos-dir.conf

Director { # define myself
Name = nas2-dir
QueryFile = “/usr/lib/bareos/scripts/query.sql”
Maximum Concurrent Jobs = 10
Password = “Ah1dy61SszPWg78IKwwBg7kloxxJus2vMTQzDXNb4cRr” # Console password
Messages = Daemon
Auditing = yes

# remove comment in next line to load dynamic backends from specified directory
# Backend Directory = /usr/lib64/bareos/backends

# remove comment from “Plugin Directory” to load plugins from specified directory.
# if “Plugin Names” is defined, only the specified plugins will be loaded,
# otherwise all director plugins (*-dir.so) from the “Plugin Directory”.
#
# Plugin Directory = /usr/lib64/bareos/plugins
# Plugin Names = “”
}

# Default job

JobDefs {
Name = “DefaultJob”
Type = Backup
Level = Incremental
Client = nas2-fd
FileSet = “SelfTest” # selftest fileset (#13)
Schedule = “WeeklyCycle”
Storage = File
Messages = Standard
Pool = Incremental
Priority = 10
Write Bootstrap = “/media/storage/bareos/%c.bsr”
Full Backup Pool = Full # write Full Backups into “Full” Pool (#05)
Differential Backup Pool = Differential # write Diff Backups into “Differential” Pool (#08)
Incremental Backup Pool = Incremental # write Incr Backups into “Incremental” Pool (#11)
}

# nas2 OS Backup Job Definition

JobDefs {
Name = “nas2-OS-BackupJob”
Type = Backup
Level = Incremental
Client = nas2-fd
FileSet = “Linux All” (#13)
Schedule = “nas2-WeeklyCycle”
Storage = Tape
Messages = Standard
Pool = nas2-Incremental
Priority = 10
Write Bootstrap = “/media/storage/bareos/%nas2-c.bsr”
Full Backup Pool = nas2-Full # write Full Backups into “Full” Pool (#05)
Differential Backup Pool = nas2-Differential # write Diff Backups into “Differential” Pool (#08)
Incremental Backup Pool = nas2-Incremental # write Incr Backups into “Incremental” Pool (#11)
}

# nas1 OS Backup Job Definition

JobDefs {
Name = “nas1-OS-BackupJob”
Type = Backup
Level = Incremental
Client = nas1-fd
FileSet = “Linux All” (#13)
Schedule = “nas1-WeeklyCycle”
Storage = Tape
Messages = Standard
Pool = nas1-Incremental
Priority = 10
Write Bootstrap = “/media/storage/bareos/%nas1-c.bsr”
Full Backup Pool = nas1-Full # write Full Backups into “Full” Pool (#05)
Differential Backup Pool = nas1-Differential # write Diff Backups into “Differential” Pool (#08)
Incremental Backup Pool = nas1-Incremental # write Incr Backups into “Incremental” Pool (#11)
}

#
# Define the main nightly save backup job
# By default, this job will back up to disk in /var/lib/bareos/storage
#Job {
# Name = “BackupClient1”
# JobDefs = “DefaultJob”
#}

# Backup the catalog database (after the nightly save)
#
Job {
Name = “BackupCatalog”
JobDefs = “DefaultJob”
Level = Full
FileSet=”Catalog”
Schedule = “WeeklyCycleAfterBackup”

# This creates an ASCII copy of the catalog
# Arguments to make_catalog_backup.pl are:
# make_catalog_backup.pl
RunBeforeJob = “/usr/lib/bareos/scripts/make_catalog_backup.pl MyCatalog”

# This deletes the copy of the catalog
RunAfterJob = “/usr/lib/bareos/scripts/delete_catalog_backup”

# This sends the bootstrap via mail for disaster recovery.
# Should be sent to another system, please change recipient accordingly
Write Bootstrap = “|/usr/bin/bsmtp -h localhost -f \”\(Bareos\) \” -s \”Bootstrap for Job %j\” root@localhost” # (#01)
Priority = 11 # run after main backup
}

#
# Standard Restore template, to be changed by Console program
# Only one such job is needed for all Jobs/Clients/Storage …
#
Job {
Name = “RestoreFiles”
Type = Restore
Client=nas2-fd
FileSet = “Linux All”
Storage = File
Pool = Incremental
Messages = Standard
Where = /tmp/bareos-restores
}

# Define the main nightly save backup job
# By default, this job will back up to tape
Job {
Name = “nas2-Backup”
JobDefs = “nas2-OS-BackupJob”
}

Job {
Name = “nas1-Backup”
JobDefs = “nas1-OS-BackupJob”
}

#
# Standard Restore template, to be changed by Console program
# Only one such job is needed for all Jobs/Clients/Storage …
#
Job {
Name = “nas2-Restore”
Type = Restore
Client=nas2-fd
FileSet = “Linux All”
Storage = Tape
Pool = Incremental
Messages = Standard
Where = /media/storage/bareos-restores
}

Job {
Name = “nas1-Restore”
Type = Restore
Client=nas1-fd
FileSet = “Linux All”
Storage = Tape
Pool = Incremental
Messages = Standard
Where = /media/storage/bareos-restores
}

FileSet {
Name = “Windows All Drives”
Enable VSS = yes
Include {
Options {
Signature = MD5
Drive Type = fixed
IgnoreCase = yes
WildFile = “[A-Z]:/pagefile.sys”
WildDir = “[A-Z]:/RECYCLER”
WildDir = “[A-Z]:/$RECYCLE.BIN”
WildDir = “[A-Z]:/System Volume Information”
Exclude = yes
}
File = /
}
}

FileSet {
Name = “Linux All”
Include {
Options {
Signature = MD5 # calculate md5 checksum per file
One FS = No # change into other filessytems
FS Type = ext2 # filesystems of given types will be backed up
FS Type = ext3 # others will be ignored
FS Type = ext4
FS Type = xfs
FS Type = reiserfs
FS Type = jfs
FS Type = btrfs
}
File = /
}
# Things that usually have to be excluded
# You have to exclude /var/lib/bareos/storage
# on your bareos server
Exclude {
File = /var/lib/bareos
File = /var/lib/bareos/storage
File = /proc
File = /tmp
File = /.journal
File = /.fsck
File = /media/storage
}

}

# fileset just to backup some files for selftest
FileSet {
Name = “SelfTest”
Include {
Options {
Signature = MD5 # calculate md5 checksum per file
}
File = “/usr/sbin”
}
}

Schedule {
Name = “WeeklyCycle”
Run = Full 1st sat at 21:00 # (#04)
Run = Differential 2nd-5th sat at 21:00 # (#07)
Run = Incremental mon-fri at 21:00 # (#10)
}

# This schedule does the catalog. It starts after the WeeklyCycle
Schedule {
Name = “WeeklyCycleAfterBackup”
Run = Full mon-fri at 21:10
}

# Schedule for nas2 OS backup.
Schedule {
Name = “nas2-WeeklyCycle”
Run = Full 1st sat at 21:00 # (#04)
Run = Differential 2nd-5th sat at 21:00 # (#07)
#Run = Incremental mon-fri at 21:00 # (#10)
}

# Schedule for nas1 OS backup.
Schedule {
Name = “nas1-WeeklyCycle”
Run = Full 1st sat at 22:00 # (#04)
Run = Differential 2nd-5th sat at 22:00 # (#07)
#Run = Incremental mon-fri at 22:00 # (#10)
}

# This is the backup of the catalog
FileSet {
Name = “Catalog”
Include {
Options {
signature = MD5
}
File = “/var/lib/bareos/bareos.sql” # database dump
File = “/etc/bareos” # configuration
}
}

# Client (File Services) to backup
Client {
Name = nas2-fd
Address = nas2
Password = “1P7zIPEtWV2r19IdMLau8WcsBhkwmKh2IwsUQBhs7ezM” # password for FileDaemon
File Retention = 30 days # 30 days
Job Retention = 6 months # six months
AutoPrune = no # Prune expired Jobs/Files
}

Client {
Name = nas1-fd
Address = nas1
Password = “1P7zIPEtWV2r19IdMLau8WcsBhkwmKh2IwsUQBhs7ezM” # password for FileDaemon
File Retention = 30 days # 30 days
Job Retention = 6 months # six months
AutoPrune = no # Prune expired Jobs/Files
}

#
# Definition of file storage device
#
Storage {
Name = File
# Do not use “localhost” here
Address = nas2 # N.B. Use a fully qualified name here
Password = “eiUV8j4IEvb8sLhGbaDdDjycq25RGcjyGteDrLYMxdpw”
Device = FileStorage
Media Type = File
}

#
# Definition of tape storage device
#
Storage {
Name = Tape
Address = nas2 # N.B. Use a fully qualified name here
Password = “eiUV8j4IEvb8sLhGbaDdDjycq25RGcjyGteDrLYMxdpw”
Device = “HP ULTRIUM 3000”
Media Type = lto
}

#
# Generic catalog service
#
Catalog {
Name = MyCatalog
# Uncomment the following lines if you want the dbi driver
# dbdriver = “dbi:postgresql”; dbaddress = 127.0.0.1; dbport =
#dbdriver = “postgresql”
dbdriver = “mysql”
dbname = “bareos”
dbuser = “bareos”
dbpassword = “”
}

#
# Reasonable message delivery — send most everything to email address and to the console
#
Messages {
Name = Standard
mailcommand = “/usr/bin/bsmtp -h localhost -f \”\(Bareos\) \<%r\>\” -s \”Bareos: %t %e of %c %l\” %r”
operatorcommand = “/usr/bin/bsmtp -h localhost -f \”\(Bareos\) \<%r\>\” -s \”Bareos: Intervention needed for %j\” %r”
mail = root@localhost = all, !skipped, !audit # (#02)
operator = root@localhost = mount # (#03)
console = all, !skipped, !saved, !audit
append = “/var/log/bareos/bareos.log” = all, !skipped, !audit
catalog = all, !audit
}

#
# Message delivery for daemon messages (no job).
#
Messages {
Name = Daemon
mailcommand = “/usr/bin/bsmtp -h localhost -f \”\(Bareos\) \<%r\>\” -s \”Bareos daemon message\” %r”
mail = root@localhost = all, !skipped, !audit # (#02)
console = all, !skipped, !saved, !audit
append = “/var/log/bareos/bareos.log” = all, !skipped, !audit
append = “/var/log/bareos/bareos-audit.log” = audit
}

#
# Full Pool definition
#
Pool {
Name = Full
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 365 days # How long should the Full Backups be kept? (#06)
Maximum Volume Bytes = 50G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “Full-” # Volumes will be labeled “Full-
}

#
# Differential Pool definition
#
Pool {
Name = Differential
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 90 days # How long should the Differential Backups be kept? (#09)
Maximum Volume Bytes = 10G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “Differential-” # Volumes will be labeled “Differential-
}

#
# Incremental Pool definition
#
Pool {
Name = Incremental
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 30 days # How long should the Incremental Backups be kept? (#12)
Maximum Volume Bytes = 1G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “Incremental-” # Volumes will be labeled “Incremental-
}

#
# Scratch pool definition
#
Pool {
Name = Scratch
Pool Type = Backup
}

#
# nas2-Full Pool definition
#
Pool {
Name = nas2-Full
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 365 days # How long should the Full Backups be kept? (#06)
#Maximum Volume Bytes = 50G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “nas2-Full-” # Volumes will be labeled “Full-
}

#
# Differential Pool definition
#
Pool {
Name = nas2-Differential
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 90 days # How long should the Differential Backups be kept? (#09)
#Maximum Volume Bytes = 10G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “nas2-Differential-” # Volumes will be labeled “Differential-
}

#
# Incremental Pool definition
#
Pool {
Name = nas2-Incremental
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 30 days # How long should the Incremental Backups be kept? (#12)
#Maximum Volume Bytes = 1G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “nas2-Incremental-” # Volumes will be labeled “Incremental-
}

#
# nas1-Full Pool definition
#
Pool {
Name = nas1-Full
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 365 days # How long should the Full Backups be kept? (#06)
#Maximum Volume Bytes = 50G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “nas1-Full-” # Volumes will be labeled “Full-
}

#
# Differential Pool definition
#
Pool {
Name = nas1-Differential
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 90 days # How long should the Differential Backups be kept? (#09)
#Maximum Volume Bytes = 10G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “nas1-Differential-” # Volumes will be labeled “Differential-
}

#
# Incremental Pool definition
#
Pool {
Name = nas1-Incremental
Pool Type = Backup
Recycle = yes # Bareos can automatically recycle Volumes
AutoPrune = yes # Prune expired volumes
Volume Retention = 30 days # How long should the Incremental Backups be kept? (#12)
#Maximum Volume Bytes = 1G # Limit Volume size to something reasonable
Maximum Volumes = 100 # Limit number of Volumes in Pool
Label Format = “nas2-Incremental-” # Volumes will be labeled “Incremental-
}

#
# Restricted console used by tray-monitor to get the status of the director
#
Console {
Name = nas2-mon
Password = “XolCAZUGgAcE3gi+/LGfILcKB2RGqz5tTUt+JhG0ybVZ”
CommandACL = status, .status
JobACL = *all*
}
@/etc/bareos/bareos-dir.d/bareos-webui.conf

Note that besides some default definitions I:
– added a JobDefs nas2-OS-BackupJob
– added a JobDefs nas1-OS-BackupJob
– added a backup job nas2-Backup
– added a backup job nas1-Backup
– added a restore job nas2-Restore
– added a restore job nas1-Restore
– changed the FileSet Linux All with more excludes (/media/storage)
– added a scheduler nas2-WeeklyCycle
– added a scheduler nas1-WeeklyCycle
– declared nas2-fd and nas1-fd clients
– added a Tape storage
– added three pools: nas2-Full, nas2-Differential and nas2-Incremental
– added three pools: nas1-Full, nas1-Differential and nas1-Incremental

STEP 5: Modify the configuration file for bareos Storage Service /etc/bareos/bareos-sd.conf

#
# Default Bareos Storage Daemon Configuration file
#
# For Bareos release 14.2.2 (12 December 2014) — redhat Fedora release 20 (Heisenbug)
#
# You may need to change the name of your tape drive
# on the “Archive Device” directive in the Device
# resource. If you change the Name and/or the
# “Media Type” in the Device resource, please ensure
# that dird.conf has corresponding changes.
#

Storage { # definition of myself
Name = nas2-sd
Maximum Concurrent Jobs = 20

# remove comment from “Plugin Directory” to load plugins from specified directory.
# if “Plugin Names” is defined, only the specified plugins will be loaded,
# otherwise all storage plugins (*-sd.so) from the “Plugin Directory”.
#
# Plugin Directory = /usr/lib64/bareos/plugins
# Plugin Names = “”
}

#
# List Directors who are permitted to contact Storage daemon
#
Director {
Name = nas2-dir
Password = “eiUV8j4IEvb8sLhGbaDdDjycq25RGcjyGteDrLYMxdpw”
}

#
# Restricted Director, used by tray-monitor to get the
# status of the storage daemon
#
Director {
Name = nas2-mon
Password = “tzgOA0N3ANcj/BQP4uJMuXbrEcNFQjj5y8/l4E9x”
Monitor = yes
}

#
# Devices supported by this Storage daemon
# To connect, the Director’s bareos-dir.conf must have the same Name and MediaType.
#
Device {
Name = FileStorage
Media Type = File
Archive Device = /var/lib/bareos/storage
LabelMedia = yes; # lets Bareos label unlabeled media
Random Access = yes;
AutomaticMount = yes; # when device opened, read it
RemovableMedia = no;
AlwaysOpen = no;
}

#
# include additional configuration files, if required
#

# eg.
#@/etc/bareos/bareos-sd.d/device-gluster.conf

#
# Send all messages to the Director,
# mount messages also are sent to the email address
#
Messages {
Name = Standard
director = nas2-dir = all
}
@/etc/bareos/bareos-sd.d/device-tape-with-autoloader.conf

STEP 6: Modify the additional tape configuration file for bareos Storage service /etc/bareos/bareos-sd.d/device-tape-with-autoloader.conf

#
# Preparations:
#
# include this configuration file in bareos-sd.conf by
# @/etc/bareos/bareos-sd.d/device-tape-with-autoloader.conf
#

# on Linux use “lsscsi –generic”
# to get a list of your SCSI devices.
# However, normaly you should access your devices by-id
# (eg. /dev/tape/by-id/scsi-350011d00018a5f03-nst),
# because the short device names like /dev/nst1
# might change on reboot.

Device {
Name = “HP ULTRIUM 3000”
DeviceType = tape

# default:0, only required if the autoloader have multiple drives.
DriveIndex = 0

# if only one drive is available, this is normally /dev/nst0.
# However, it is advised to access it via id (/dev/tape/by-id/…).
#ArchiveDevice = /dev/nst0
ArchiveDevice = /dev/tape/by-id/scsi-3500110a00162e13e-nst

# arbitrary string that descripes the the storage media.
# Bareos uses this to determine, which device can be handle what media.
MediaType = lto

# enable “Check Label” if tapes with ANSI/IBM labels
# should be preserved
#Check Label = yes
LabelMedia = yes
AutoChanger = no # default: no
AutomaticMount = yes # default: no
MaximumFileSize = 10GB # default: 1000000000 (1GB)
}

STEP 7: Modify the configuration file for bareos File service on nas2. This is in fact the client service on nas2.

#
# Default Bareos File Daemon Configuration file
#
# For Bareos release 14.2.2 (12 December 2014) — redhat Fedora release 20 (Heisenbug)
#
# There is not much to change here except perhaps the
# File daemon Name to
#

#
# List Directors who are permitted to contact this File daemon
#
Director {
Name = nas2-dir
Password = “1P7zIPEtWV2r19IdMLau8WcsBhkwmKh2IwsUQBhs7ezM”
}

#
# Restricted Director, used by tray-monitor to get the
# status of the file daemon
#
Director {
Name = nas2-mon
Password = “PLOum1Cd8Tir6n7GrauX0KXMm2uRtojUWHy/D+ABVwlo”
Monitor = yes
}

#
# “Global” File daemon configuration specifications
#
FileDaemon { # this is me
Name = nas2-fd
Maximum Concurrent Jobs = 20

# remove comment from “Plugin Directory” to load plugins from specified directory.
# if “Plugin Names” is defined, only the specified plugins will be loaded,
# otherwise all storage plugins (*-fd.so) from the “Plugin Directory”.
#
# Plugin Directory = /usr/lib64/bareos/plugins
# Plugin Names = “”

# if compatible is set to yes, we are compatible with bacula
# if you want to use new bareos features, please set
# compatible = no
}

# Send all messages except skipped files back to Director
Messages {
Name = Standard
director = nas2-dir = all, !skipped, !restored
}

STEP 8: Modify the configuration file for bareos File service on nas1. This is in fact the client service on nas1. The only change is to add to the file an entry for nas2 directory.

#
# Default Bareos File Daemon Configuration file
#
# For Bareos release 14.2.2 (12 December 2014) — redhat Fedora release 20 (Heisenbug)
#
# There is not much to change here except perhaps the
# File daemon Name to
#

#
# List Directors who are permitted to contact this File daemon
#
Director {
Name = nas1-dir
Password = “bkzZHOuDX2Pp6KXGtFs5obqC+D6O/1oGmiPQgjOtabzq”
}

Director {
Name = nas2-dir
Password = “1P7zIPEtWV2r19IdMLau8WcsBhkwmKh2IwsUQBhs7ezM”
}

#
# Restricted Director, used by tray-monitor to get the
# status of the file daemon
#
Director {
Name = nas1-mon
Password = “+Y2ViHABGOFibQ35Dam4Q3/AzS6JcVd8vPdRcoQW/SJa”
Monitor = yes
}

#
# “Global” File daemon configuration specifications
#
FileDaemon { # this is me
Name = nas1-fd
Maximum Concurrent Jobs = 20

# remove comment from “Plugin Directory” to load plugins from specified directory.
# if “Plugin Names” is defined, only the specified plugins will be loaded,
# otherwise all storage plugins (*-fd.so) from the “Plugin Directory”.
#
# Plugin Directory = /usr/lib64/bareos/plugins
# Plugin Names = “”

# if compatible is set to yes, we are compatible with bacula
# if you want to use new bareos features, please set
# compatible = no
}

# Send all messages except skipped files back to Director
Messages {
Name = Standard
director = nas1-dir = all, !skipped, !restored
}

STEP 9: Setup bareos webui by following the installation manual


STEP 10:
Configure bareos bat QT based admin tool by modifying /etc/bareos/bat.conf

#
# Bareos Administration Tool (bat) configuration file
#

Director {
Name = nas2-dir
DIRport = 9101
address = nas2
Password = “Ah1dy61SszPWg78IKwwBg7kloxxJus2vMTQzDXNb4cRr”
}

STEP 11: Configure bareos bconsole console based admin tool by modifying /etc/bareos/bconsole.conf

#
# Bareos User Agent (or Console) Configuration File
#

Director {
Name = nas2-dir
DIRport = 9101
address = nas2
Password = “Ah1dy61SszPWg78IKwwBg7kloxxJus2vMTQzDXNb4cRr”
}

STEP 12: On the nas2 (bacula directory server and also a client) open in the firewall the TCP ports 9101,9102,9103

STEP 13: On the nas1 (bacula client) open in the firewall the TCP port 9102

STEP 14: On nas2 start all the bareos services

service bareos-dir start
service bareos-sd start
service bareos-fd start

STEP 15: On nas1 start the bareos client file service

service bareos-fd start

STEP 16: On nas2 as root user start bat or bconsole to check the settings and administer the environment

3 thoughts on “Full Linux system backup with #Bareos on #Fedora Linux

  1. tiotobing

    Hi,
    I want to ask how to do a full backup with Bareos on a VM instance (CentOS) and make the backup result become .qcow2

    Reply
  2. Pingback: Blog Links: Server Backup with open source tools – blog.voina.org

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.