Bacula 3: bpipe to stream dumps & clones directly to backup

bpipe plugin to stream dumps, VM clones and another data to your hot backup (MySQL, PostgreSQL, Firebird, Xen etc.)
1.0 (1 rating)
Instead of using a simple lifetime average, Udemy calculates a
course's star rating by considering a number of different factors
such as the number of ratings, the age of ratings, and the
likelihood of fraudulent ratings.
20 students enrolled
50% off
Take This Course
  • Lectures 12
  • Length 34 mins
  • Skill Level Intermediate Level
  • Languages English
  • Includes Lifetime access
    30 day money back guarantee!
    Available on iOS and Android
    Certificate of Completion
Wishlisted Wishlist

How taking a course works


Find online courses made by experts from around the world.


Take your courses with you and learn anywhere, anytime.


Learn and practice real-world skills and achieve your goals.

About This Course

Published 8/2015 English

Course Description

*This s the continuation of the course Bacula 1: Open Source Backup Software, available at Udemy"

Using bpipe is the fastest, easiest, most automated and economic way of doing hot backups of specific application such Postgresql, Mysql, Firebird, Oracle databases; Xen and Kvm Virtual Machines export / snapshots; tar packages with several files; and more!

The bpipe plugins automatically creates, writes and reads from a FIFO, and is able to restore information directly to your application. E.g.: restore a database directly from Bacula, without the need to do any further operation. And you can do that with Bacula Community or Enterprise.

Any information that I send though the echo it goes but is not really stored on the FIFO; it is read directly by the Bacula and written into backup volume. You don't use disk space for that.

Training example applications:

  • MySQL
  • PostgreSQL
  • Firebird
  • LDAP
  • XenServer
  • Tar
  • Echo
  • etc.

What are the requirements?

  • Basic Bacula - Bacula 1 Training

What am I going to get from this course?

  • Backup several applications with plugin
  • Automate the restore of several applications
  • Use the plugin to backup other applications
  • Deploy backup routines that don't need to use disk space in the clients machines for application intermediate backup

Who is the target audience?

  • Bacula Users
  • DevOps
  • IT Managers

What you get with this course?

Not for you? No problem.
30 day money back guarantee.

Forever yours.
Lifetime access.

Learn on the go.
Desktop, iOS and Android.

Get rewarded.
Certificate of completion.


Section 1: Introduction

Me, again!

Fetch the written course complimentary material - my Bacula ebook from 

My website:

Bacula full Manual:

Be my friend at Facebook:

Remark 1: If you need professional help with Bacula I'm looking for a permanent job in USA or Europe. Please recommend me. =)

Remark 2: If you need in-company Bacula training or implementation worldwide send a email to



Section 2: bpipe Deploy

Also, make sure your bacula-fd is running with root user. Edit /etc/init.d/bacula-fd and verify the values:

BUSER= root

BGROUP= root

A folder to store FIFO and debugging
Section 3: bpipe examples

Plugin = "bpipe:/mnt/fifo/test.txt:/bin/echo fifo_teste:/usr/bin/tee /tmp/test.txt"


Plugin = "bpipe:/mnt/fifo/test.tar:/bin/tar -cf - /etc:/bin/tar -C /tmp -xvf -"


Plugin = "bpipe:/mnt/fifo/heitorfaria.sql:mysqldump -u root -p123456 --databases heitorfaria:mysql -u root -p123456"

# Plugin = "bpipe:/mnt/fifo/heitorfaria2.sql:mysqldump -u root -p123456 --databases heitorfaria:dd of=/tmp/heitorfaria2.sql" 


Plugin = "bpipe:/mnt/fifo/heitorpg.sql:sudo -u postgres pg_dump --format=c heitorpg:sudo -u postgres pg_restore -d template1 -C"

# Plugin = "bpipe:/mnt/fifo/heitorpg2.sql:sudo -u postgres pg_dump heitorpg:tee /tmp/heitorpg2.sql"


Plugin = "bpipe:/mnt/fifo/heitorpg.sql:gbak -backup heitorfire stdout:gbak -replace stdin heitorfire_2"


Plugin = "bpipe:/mnt/fifo/ldap.ldif:slapcat -l /dev/stdout:/usr/sbin/slapadd -l /dev/stdin"

# Plugin = "bpipe:/mnt/fifo/ldap.ldif:slapcat -l /dev/stdout:dd of=/tmp/ldap_restore.ldif"

REMARK: always stop the LDAP daemon before restoring with the slapadd command.

Another example, specifying domain and configuration file for dump:

Plugin = "bpipe:/tmp/ldap_bkp.ldif:slapcat -f /etc/ldap/slapd.conf -b "dc=ifnmg,dc=edu,dc=br" -l /dev/stdout:tee /tmp/ldap_restore.ldif"

  • Safer method - restore to file:

Plugin = "bpipe:/tmp/vm_name.xva:snapshot=`xe vm-snapshot uuid=vm_uuid new-name-label=vm_name_snps` && xe template-param-set is-a-template=false uuid=$snapshot && xe vm-export vm=$snapshot filename=:dd of=/mnt/vm_name.xva"

  • Restore to Xen Server automatically - import:

Plugin = "bpipe:/tmp/vm_name.xva:snapshot=`xe vm-snapshot uuid=vm_uuid new-name-label=vm_name_snps` && xe template-param-set is-a-template=false uuid=$snapshot && xe vm-export vm=$snapshot filename=:xe vm-import filename=/dev/stdin sr-uuid=xen_storage_uuid"

Remark 1.: in order to fetch storage uuid use, in shell: xe pbd-list

It's advisible to remove generated snapshots during backups.

e.g.: xe vm-uninstall force=true vm=nome_vm_snps

  • ClientRunAfterJob script sample to delete all Xen snapshots since Bacula Job already backuped the VMs:

for i in `xe snapshot-list --minimal | sed -e 's/,/\ /g'` ; do xe snapshot-uninstall force=true uuid=$i ; done

  • A script to dinamically configure Bacula to backup all Xen host running VM:

Section 4: Conclusion
See you!

Students Who Viewed This Course Also Viewed

  • Loading
  • Loading
  • Loading

Instructor Biography

Heitor Medrado De Faria, Bacula Backup Software Book Author and Teacher

"Bacula: Open Source Backup Tool" and "Open Licenses & Fundamental Rights" books author (both in portuguese). Bacula Training instructor at Udemy. Law Graduated. IT Service Manager and Project Management extension degrees. Works on a brazilian governmental company called SERPRO and for Neocode Software (Canada). Bacula brazilian community founder. Has plenty of experience as a server / backup systems administrator (Windows, Linux, Netware, directory services) and as IT / Project manager. ITIL-F, TOEIC (Golden Certificate) and LPIC-III certificated professional.

Ready to start learning?
Take This Course