I found something.

Your autochanger does not reference any of the 'drive' devices that should
be under its management.

Additionally, your 'drive' device 'filestorage' is set to 'readonly = yes'.
This is only good if you want to reserve a drive for restores or verify
jobs or something like that. Will not work for backups.

See this example from my synology-based file changer setup, in bacula
15.0.2. I have multiple drive devices under one autochanger. Pretend that
this is a physical tape library, with multiple tape drives. That might help
it make more sense. Devices 'Synology-Local-001' through 005 are read/write
devices. Device Synology-Local-006 is a readonly device, because it is
intended to be used only with restores. This way a drive is always
available for a restore when you want to do one.

At this point, your Storage {} resource from the bacula-dir is very much
like mine from my synology system. I think it's probably good. It should
refer to the autochanger name, not the individual drive devices under the
autochanger.

I can provide a full redacted dump of my configs if that would help.

#SD
Autochanger {
  ChangerCommand = "/dev/null"
  ChangerDevice = "/dev/null"
  Name = "Synology-Local"
  Device = "Synology-Local-001"
  Device = "Synology-Local-002"
  Device = "Synology-Local-003"
  Device = "Synology-Local-004"
  Device = "Synology-Local-005"
  Device = "Synology-Local-006"
}
Device {
  Name = "Synology-Local-001"
  Description = ""
  MediaType = "Synology-Local"
  DeviceType = "File"
  ArchiveDevice = "/mnt/synology/bacula/Synology-Local"
  RemovableMedia = no
  RandomAccess = yes
  AutomaticMount = yes
  LabelMedia = yes
  Autochanger = yes
  ReadOnly = no
  MaximumConcurrentJobs = 5
  DriveIndex = 0
}
Device {
  Name = "Synology-Local-002"
  Description = ""
  MediaType = "Synology-Local"
  DeviceType = "File"
  ArchiveDevice = "/mnt/synology/bacula/Synology-Local"
  RemovableMedia = no
  RandomAccess = yes
  AutomaticMount = yes
  LabelMedia = yes
  Autochanger = yes
  ReadOnly = no
  MaximumConcurrentJobs = 5
  DriveIndex = 1
}
Device {
  Name = "Synology-Local-003"
  Description = ""
  MediaType = "Synology-Local"
  DeviceType = "File"
  ArchiveDevice = "/mnt/synology/bacula/Synology-Local"
  RemovableMedia = no
  RandomAccess = yes
  AutomaticMount = yes
  LabelMedia = yes
  Autochanger = yes
  ReadOnly = no
  MaximumConcurrentJobs = 5
  DriveIndex = 2
}
Device {
  Name = "Synology-Local-004"
  Description = ""
  MediaType = "Synology-Local"
  DeviceType = "File"
  ArchiveDevice = "/mnt/synology/bacula/Synology-Local"
  RemovableMedia = no
  RandomAccess = yes
  AutomaticMount = yes
  LabelMedia = yes
  Autochanger = yes
  ReadOnly = no
  MaximumConcurrentJobs = 5
  DriveIndex = 3
}
Device {
  Name = "Synology-Local-005"
  Description = ""
  MediaType = "Synology-Local"
  DeviceType = "File"
  ArchiveDevice = "/mnt/synology/bacula/Synology-Local"
  RemovableMedia = no
  RandomAccess = yes
  AutomaticMount = yes
  LabelMedia = yes
  Autochanger = yes
  ReadOnly = no
  MaximumConcurrentJobs = 5
  DriveIndex = 4
}
Device {
  Name = "Synology-Local-006"
  Description = ""
  MediaType = "Synology-Local"
  DeviceType = "File"
  ArchiveDevice = "/mnt/synology/bacula/Synology-Local"
  RemovableMedia = no
  RandomAccess = yes
  AutomaticMount = yes
  LabelMedia = yes
  Autochanger = yes
  ReadOnly = yes
  MaximumConcurrentJobs = 5
  DriveIndex = 5
  AutoSelect = no # this drive will not be used by backups so it will
remain available for restores.
}

#dir
Storage {
  Name = "Synology-Local"
  Description = "Synology-Local"
  SdPort = 9103
  Address = "td-bacula"
  Password = "REDACTED"
  Device = "Synology-Local"
  MediaType = "Synology-Local"
  Autochanger = "Synology-Local"
  MaximumConcurrentJobs = 50
}

Regards,
Robert Gerber
402-237-8692
r...@craeon.net


On Mon, Aug 18, 2025 at 12:42 PM Stefan G. Weichinger <li...@xunil.at>
wrote:

> Am 18.08.25 um 19:34 schrieb Rob Gerber:
> > Stefan,
> >
> > Did you restart the SD? bconsole 'reload' only reloads the dir.
> >
> > in shell, try 'sudo systemctl restart bacula-dir.service bacula-
> > sd.service bacula-fd.service;/opt/bacula/bin/bacula status'
> >
> > (you can restart all more simply using 'bacula restart' but this breaks
> > systemctl service monitoring until you reboot, iirc).
>
> Yes, I restarted all the daemons. 3x  ;-)
> > 'file_changer' is the name of your autochanger in the bacula-sd.conf
> file.
> I show again what I have now. It seems I still don't get all the
> concepts, sorry. I think I have that mess for the n-th time.
>
> # dir
>
> Storage {
>    Name = "filestorage"
>    Description = "local storage on tx100:/mnt/tera/bacula"
>    SdPort = 9103
>    Address = "tx100.loc.oops.co.at"
>    Password = "_swXHSgGz6DhqHOxS2PlmbAJks_LY6Gg0"
>    Device = "file_changer"
>    MediaType = "File1"
>    Autochanger = "yes"
>    MaximumConcurrentJobs = 50
> }
>
> # sd
>
> Autochanger {
>    Name = "file_changer"
>    Device = "filestorage"
>    ChangerDevice = "/dev/null"
>    ChangerCommand = "/dev/null"
> }
>
> Device {
>    Name = "filestorage"
>    Description = "local storage on tx100:/mnt/tera/bacula"
>    MediaType = "File1"
>    DeviceType = "File"
>    ArchiveDevice = "/mnt/tera/bacula/file"
>    RemovableMedia = no
>    RandomAccess = yes
>    AutomaticMount = yes
>    LabelMedia = yes
>    Autochanger = yes
>    ReadOnly = yes
>    MaximumConcurrentJobs = 5
>    MaximumSpoolSize = 8000000000
>    MaximumJobSpoolSize = 8000000000
>    DriveIndex = 5
>    VolumeEncryption = "Yes"
> }
>
> Storage {
>    Name = "tx100-sd"
>    WorkingDirectory = "/opt/bacula/working"
>    PidDirectory = "/opt/bacula/working"
>    MaximumConcurrentJobs = 20
>    EncryptionCommand = "/etc/bacula/scripts/key-manager.py getkey"
> }
>
> thank you!
>
>
>
_______________________________________________
Bacula-users mailing list
Bacula-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/bacula-users

Reply via email to