On 07/15/2022 5:42 pm, Larry Rosenman wrote:
On my 14-current system with bacula13-{client,server}, bacula-dir is
crashing when I try to run one of my jobs:

<10>1 2022-07-15T17:36:29.513796-05:00 borg.lerctr.org bacula-dir
36370 - - stack overflow detected; terminated
<6>1 2022-07-15T17:36:29.627505-05:00 borg.lerctr.org kernel - - - pid
36370 (bacula-dir), jid 0, uid 910: exited on signal 6

bacula-dir.conf:
❯ cat /usr/local/etc/bacula/bacula-dir.conf
# Default Bacula Director Configuration file
#
#  The only thing that MUST be changed is to add one or more
#   file or directory names in the Include directive of the
#   FileSet resource.
#
#  For Bacula release 2.1.12 (04 June 2007) -- freebsd 7.0-CURRENT
#
#  You might also want to change the default email address
#   from root to your address.  See the "mail" and "operator"
#   directives in the Messages resource.
#

Director {                            # define myself
  Name = borg-dir
  #DIRport = 9101                # where we listen for UA connections
  DirAddresses = {ipv6 = { addr = borg-home.lerctr.org }
                  ipv4 = {addr = 192.168.200.4 }
                  ipv4 = {addr = 127.0.0.1 }
                  ipv6 = {addr = ::1 }
  }
  QueryFile = "/usr/local/share/bacula/query.sql"
  WorkingDirectory = "/var/db/bacula"
  PidDirectory = "/var/run"
  Maximum Concurrent Jobs = 6
  Password = "wN3ln+1EvhspyAT9FQEU+BQK9n6K21CcYAMulaY7fJwH"         #
Console password
  Messages = Daemon
  Heartbeat Interval = 360
}

JobDefs {
  Name = "DefaultJob"
  Type = Backup
  Level = Incremental
  Client = borg-fd
  FileSet = "Full Set"
  Schedule = "WeeklyCycle"
  Storage = File
  Messages = Standard
  Pool = Default
  Accurate = yes
  Priority = 10
}
JobDefs {
  Name = "DefaultJob-home"
  Type = Backup
  Level = Incremental
  Client = borg-fd
  FileSet = "Full Set"
  Schedule = "WeeklyCycle"
  Storage = File-Home
  Messages = Standard
  Pool = Default
  Accurate = yes
  Priority = 10
}


#
# Define the main nightly save backup job
#   By default, this job will back up to disk in /tmp
Job {
  Name = "borg"
  JobDefs = "DefaultJob"
  FileSet = "Full Set ZFS"
  Write Bootstrap = "/var/db/bacula/borg.bsr"
}
Job {
  Name = "r610"
  JobDefs = "DefaultJob-home"
  Client = r610-fd
  FileSet = "Full Set ZFS"
  Write Bootstrap = "/var/db/bacula/r610.bsr"
}
Job {
  Name = "ntpserver"
  JobDefs = "DefaultJob-home"
  Client = ntp-server-fd
  FileSet = "Full Set"
  Write Bootstrap = "/var/db/bacula/ntp.bsr"
}

Job {
  Name = "thebighonker"
  Client = thebighonker-fd
  JobDefs = "DefaultJob"
  FileSet = "Full Set ZFS"
  Write Bootstrap = "/var/db/bacula/thebighonker.bsr"
}

Job {
  Name = "oldtbh"
  Client = oldtbh.lerctr.org-fd
  JobDefs = "DefaultJob"
  FileSet = "Full Set ZFS"
  Write Bootstrap = "/var/db/bacula/oldtbh.bsr"
}
# 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
RunBeforeJob = "/usr/local/share/bacula/make_catalog_backup bacula bacula"
  # This deletes the copy of the catalog
  RunAfterJob  = "/usr/local/share/bacula/delete_catalog_backup"
  Write Bootstrap = "/var/db/bacula/BackupCatalog.bsr"
  Priority = 11                   # run after main backup
  RunScript {
       RunsWhen=After
       RunsOnClient=No
       #Console = "purge volume action=truncate allpools storage=File"
       Console = "prune expired volume yes"
       Console = "truncate allpools Storage=File"
  }
}

#
# 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=borg-fd
  FileSet="Full Set"
  Storage = File
  Pool = Default
  Messages = Standard
  Where = /tmp/bacula-restores
}


# List of files to be backed up
FileSet {
  Name = "Full Set"
  Include {
    Options {
      signature    = MD5
      compression  = GZIP
      accurate     = oipnugsmcd3M
      verify       = ipnugsmcd3
      noatime      = yes
      aclsupport   = yes
      xattrsupport = yes
      OneFS        = no
      fstype = ext4
      fstype = ext2
      fstype = vfat
      fstype = msdos
      fstype = umsdos
      fstype = zfs
      fstype = hfs
      fstype = xfs
      fstype = ufs
    }
#
#  Put your list of files here, preceded by 'File =', one per line
#    or include an external list with:
#
#    File = <file-name
#
    File = /
    #File = /usr
  }

#
# If you backup the root directory, the following two excluded
#   files can be useful
#
  Exclude {
    File = /proc
    File = /tmp
    File = /dev
    File = /.journal
    File = /.fsck
    File = /Volumes
  }
}

# List of files to be backed up
FileSet {
  Name = "Full Set ZFS"
  Include {
    Options {
      signature    = MD5
      compression  = GZIP
      accurate     = oipnugsmcd3M
      verify       = ipnugsmcd3
      noatime      = yes
      aclsupport   = yes
      xattrsupport = yes
      OneFS        = no
      fstype = zfs
      fstype = ufs
    }
#
#  Put your list of files here, preceded by 'File =', one per line
#    or include an external list with:
#
#    File = <file-name
#
#  Note: / backs up everything on the root partition.
#    if you have other partitons such as /usr or /home
#    you will probably want to add them too.
#
#  By default this is defined to point to the Bacula build
#    directory to give a reasonable FileSet to backup to
#    disk storage during initial testing.
#
    File = /
#    File = /root
#    File = /usr
#    File = /usr/src
#    File = /usr/home
#    File = /usr/local
#    File = /usr/obj
#    File = /usr/ports
#    File = /usr/ports/distfiles
#    File = /usr/ports/packages
#    File = /var
#    File = /var/crash
#    File = /var/db
#    File = /var/db/boinc
#    File = /var/db/pkg
#    File = /var/log
#    File = /var/mail
#    File = /vault/backup/TBH
#    File = /home
#    File = /home/ler
#    File = /home/abe
#    File = /home/rduggan
#    File = /tmp
 }

#
# If you backup the root directory, the following two excluded
#   files can be useful
#
  Exclude {
    File = /proc
    File = /tmp
    File = /dev
    File = /nfs
    File = /vault/backup/BACULA
    File = /vault/backup/TBH
    File = /var/tmp
    File = /var/empty
    File = /var/run
    File = /.journal
    File = /.fsck
    File = /TimeMachine
    File = /compat/linux/proc
    File = /var/cache/ccache
    File = /var/db/postgres/data11
  }
}
#
# When to do the backups, full backup on first sunday of the month,
#  differential (i.e. incremental since full) every other sunday,
#  and incremental backups other days
Schedule {
  Name = "WeeklyCycle"
  Run = Full 1st sun at 23:05
  Run = Differential 2nd-5th sun at 23:05
  Run = Incremental mon-sat at 23:05
}

# This schedule does the catalog. It starts after the WeeklyCycle
Schedule {
  Name = "WeeklyCycleAfterBackup"
  Run = Full sun-sat at 23:10
}

# This is the backup of the catalog
FileSet {
  Name = "Catalog"
  Include {
    Options {
      signature = SHA512
    }
    File = /var/db/bacula/bacula.sql
  }
}

# Client (File Services) to backup
Client {
  Name = borg-fd
  Address = 127.0.0.1
  FDPort = 9102
  Catalog = MyCatalog
  Password = "pFF0CRDnp7hnrurd57A70ldbFWnzNj0Pb3EkT0BMUvWL"
  File Retention = 4 months            # 30 days
  Job Retention = 6 Months            # six months
  AutoPrune = yes                     # Prune expired Jobs/Files
}
# Client (File Services) to backup
Client {
  Name = r610-fd
  Address = ler-r610.lerctr.org
  FDPort = 9102
  Catalog = MyCatalog
  Password = "pFF0CRDnp7hnrurd57A70ldbFWnzNj0Pb3EkT0BMUvWL"
  File Retention = 4 months            # 30 days
  Job Retention = 6 Months            # six months
  AutoPrune = yes                     # Prune expired Jobs/Files
}
Client {
  Name = ntp-server-fd
  Address = ntp-server.lerctr.org
  FDPort = 9102
  Catalog = MyCatalog
  Password = "bQP9VByZIm6WGAqs9OnRFGPrSe3eNDx_a"
  File Retention = 4 months            # 30 days
  Job Retention = 6 Months            # six months
  AutoPrune = yes                     # Prune expired Jobs/Files
}


#
# Second Client (File Services) to backup
#  You should change Name, Address, and Password before using
#
Client {
  Name = thebighonker-fd
  Address = thebighonker.lerctr.org
  FDPort = 9102
  Catalog = MyCatalog
  Password = "Jo9orlB0ViDPkLtKN7ynGrLBDZYZcjdDn6H73UiuoY1y"         #
password for FileDaemon 2
  File Retention = 4 months            # 30 days
  Job Retention = 6 Months            # six months
  AutoPrune = yes                     # Prune expired Jobs/Files
}
Client {
  Name = oldtbh.lerctr.org-fd
  Address = oldtbh.lerctr.org
  FDPort = 9102
  Catalog = MyCatalog
  Password = "Jo9orlB0ViDPkLtKN7ynGrLBDZYZcjdDn6H73UiuoY1y"         #
password for FileDaemon 2
  File Retention = 4 months            # 30 days
  Job Retention = 6 months            # six months
  AutoPrune = yes                     # Prune expired Jobs/Files
}



# Definition of file storage device
Storage {
  Name = File
# Do not use "localhost" here
  Address = borg.lerctr.org  # N.B. Use a fully qualified name here
  SDPort = 9103
  Password = "yw3YodXSjFvO3XUrgYcW8lYicUL/zgikAnMhum1zBxmL"
  Device = Virtual
  Media Type = File
  Heartbeat Interval = 360
  Maximum Concurrent Jobs = 100
  Autochanger = yes
}
Storage {
  Name = File-Home
# Do not use "localhost" here
  Address = borg-home.lerctr.org  # N.B. Use a fully qualified name here
  SDPort = 9103
  Password = "yw3YodXSjFvO3XUrgYcW8lYicUL/zgikAnMhum1zBxmL"
  Device = Virtual
  Media Type = File
  Heartbeat Interval = 360
  Maximum Concurrent Jobs = 100
  Autochanger = yes
}




# Definition of DDS tape storage device
#Storage {
#  Name = DDS-4
#  Do not use "localhost" here
#  Address = borg                # N.B. Use a fully qualified name here
#  SDPort = 9103
#  Password = "yw3YodXSjFvO3XUrgYcW8lYicUL/zgikAnMhum1zBxmL"
# password for Storage daemon
#  Device = DDS-4                      # must be same as Device in
Storage daemon
#  Media Type = DDS-4                  # must be same as MediaType in
Storage daemon
#  Autochanger = yes                   # enable for autochanger device
#}

# Definition of 8mm tape storage device
#Storage {
#  Name = "8mmDrive"
#  Do not use "localhost" here
#  Address = borg                # N.B. Use a fully qualified name here
#  SDPort = 9103
#  Password = "yw3YodXSjFvO3XUrgYcW8lYicUL/zgikAnMhum1zBxmL"
#  Device = "Exabyte 8mm"
#  MediaType = "8mm"
#}

# Definition of DVD storage device
#Storage {
#  Name = "DVD"
#  Do not use "localhost" here
#  Address = borg                # N.B. Use a fully qualified name here
#  SDPort = 9103
#  Password = "yw3YodXSjFvO3XUrgYcW8lYicUL/zgikAnMhum1zBxmL"
#  Device = "DVD Writer"
#  MediaType = "DVD"
#}


# Generic catalog service
Catalog {
  Name = MyCatalog
  dbname = bacula; user = bacula; password = ""
}

# Reasonable message delivery -- send most everything to email address
#  and to the console
Messages {
  Name = Standard
#
# NOTE! If you send to two email or more email addresses, you will need
#  to replace the %r in the from field (-f part) with a single valid
#  email address in both the mailcommand and the operatorcommand.
# What this does is, it sets the email address that emails would display # in the FROM field, which is by default the same email as they're being
#  sent to.  However, if you send email to more than one address, then
#  you'll have to set the FROM address manually, to a single address.
#  for example, a 'no-re...@mydomain.com', is better since that tends to
#  tell (most) people that its coming from an automated source.

#
  mailcommand = "/usr/local/sbin/bsmtp -h localhost -f \"\(Bacula\)
\<%r\>\" -s \"Bacula: %t %e of %c %l\" %r"
  operatorcommand = "/usr/local/sbin/bsmtp -h localhost -f
\"\(Bacula\) \<%r\>\" -s \"Bacula: Intervention needed for %j\" %r"
  mail = l...@lerctr.org = all, !skipped
  operator = l...@lerctr.org = mount
  console = all, !skipped, !saved
#
# WARNING! the following will create a file that you must cycle from
#          time to time as it will grow indefinitely. However, it will
#          also keep all your messages if they scroll off the console.
#
  append = "/var/db/bacula/log" = all, !skipped
}


#
# Message delivery for daemon messages (no job).
Messages {
  Name = Daemon
  mailcommand = "/usr/local/sbin/bsmtp -h localhost -f \"\(Bacula\)
\<%r\>\" -s \"Bacula daemon message\" %r"
  mail = l...@lerctr.org = all, !skipped
  console = all, !skipped, !saved
  append = "/var/db/bacula/log" = all, !skipped
}




# Default pool definition
Pool {
  Name = Default
  Pool Type = Backup
Recycle = yes # Bacula can automatically recycle Volumes
  AutoPrune = yes                     # Prune expired volumes
  Volume Retention = 0
  LabelFormat="LERCTR-"
  #Use Volume Once = yes
  #Maximum Volume Jobs = 4
  Maximum Volume Bytes=100GB
  Volume Use Duration = 12h
  Action On Purge = Truncate
  Recycle Oldest Volume = no
}


#
# Restricted console used by tray-monitor to get the status of the director
#
Console {
  Name = borg-mon
  Password = "idD2Sjk6LrXoNFZ0x50zuovDdaLDfmztsbMJOAwKWXWd"
  CommandACL = status, .status
}

ler in 🌐 borg in sys/amd64/confπŸ”’ on ξ‚  ler/freebsd-main-changes:main on
☁️  (us-east-1)
❯

I did make some cleanups/additions, but....
I set kern.maxssiz to:
❯ sudo sysctl kern.maxssiz
kern.maxssiz: 68719476736

and have a login_class that points to that same number.

Is this a bug, or do I have some stupid config issue?

I'm trying to run a job against my RPI (debian/bullseye) ntp-server
which is running:
βœ”οΈ0 ❯ sudo dpkg -l bacula\*
Desired=Unknown/Install/Remove/Purge/Hold
| Status=Not/Inst/Conf-files/Unpacked/halF-conf/Half-inst/trig-aWait/Trig-pend
|/ Err?=(none)/Reinst-required (Status,Err: uppercase=bad)
||/ Name                  Version      Architecture Description
+++-=====================-============-============-===========================>
ii bacula-client 9.6.7-3 all network backup service - cl> ii bacula-common 9.6.7-3 armhf network backup service - co> un bacula-common-mysql <none> <none> (no description available) un bacula-common-pgsql <none> <none> (no description available) un bacula-common-sqlite3 <none> <none> (no description available) ii bacula-console 9.6.7-3 armhf network backup service - te> ii bacula-fd 9.6.7-3 armhf network backup service - fi>

ler in ntp-server in ~ as πŸ§™
βœ”οΈ0 ❯
these are the changes I made 11->13:
borg# diff -u bacula-dir.conf /usr/local/etc/bacula/bacula-dir.conf
--- bacula-dir.conf    2022-03-21 23:14:20.000000000 -0500
+++ /usr/local/etc/bacula/bacula-dir.conf 2022-07-15 15:37:02.367561000 -0500
@@ -138,9 +138,14 @@
   Name = "Full Set"
   Include {
     Options {
-      signature = MD5
-      compression = GZIP
-      OneFS = no
+      signature    = MD5
+      compression  = GZIP
+      accurate     = oipnugsmcd3M
+      verify       = ipnugsmcd3
+      noatime      = yes
+      aclsupport   = yes
+      xattrsupport = yes
+      OneFS        = no
       fstype = ext4
       fstype = ext2
       fstype = vfat
@@ -180,9 +185,14 @@
   Name = "Full Set ZFS"
   Include {
     Options {
-      signature = MD5
-      compression = GZIP
-      OneFS = no
+      signature    = MD5
+      compression  = GZIP
+      accurate     = oipnugsmcd3M
+      verify       = ipnugsmcd3
+      noatime      = yes
+      aclsupport   = yes
+      xattrsupport = yes
+      OneFS        = no
       fstype = zfs
       fstype = ufs
     }
@@ -269,7 +279,7 @@
   Name = "Catalog"
   Include {
     Options {
-      signature = MD5
+      signature = SHA512
     }
     File = /var/db/bacula/bacula.sql
   }
borg#

if I undo the above bacula-dir.conf changes it runs.

Ideas what I did to cause it grief?

Dan Langille (FreeBSD port maintainer asked me to come here, as he doesn't have a clue).

Thanks!

--
Larry Rosenman                     http://www.lerctr.org/~ler
Phone: +1 214-642-9640                 E-Mail: l...@lerctr.org
US Mail: 5708 Sabbia Dr, Round Rock, TX 78665-2106


_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to