Frequently Asked Questions
How does the Bacula Enterprise LDAP plugin achieve single-object backup and granular restore?
The LDAP plugin runs a single base query from the configured BASEDN and saves every object it finds as a separate item in the Bacula Catalog. Each object is stored under a virtual namespace prefixed with ldap: and represented as a directory tree. At restore time, you navigate that tree in the Bacula console, select the exact object you need, and restore it directly to the live directory without touching anything else.
What configuration parameters are required to connect the plugin to a directory server?
Four parameters are required: the LDAP URI (ldapuri), the bind user Distinguished Name (binddn), the bind password (bindpass), and the base Distinguished Name (basedn). These can be supplied through a dedicated configuration file, ldap.conf for the LDAP plugin and msad.conf for the MSAD plugin, or inline on the Plugin= line in the Fileset definition.
How does Accurate mode detect deleted LDAP objects?
Accurate mode compares the live directory state against the Bacula Catalog at the time of each backup. When an object exists in the Catalog from a previous job but is no longer present in the live directory, the plugin records it as deleted. This catches deletions that occur between scheduled backup runs, which timestamp-based detection would miss.
What replace options are available during an LDAP or AD restore?
Four replace modes are available for this: always, never, ifnewer, and ifolder. Always overwrites the existing object unconditionally. Never skips the object if it already exists. Ifnewer restores only if the backed-up object is more recent than the live one. Ifolder restores only if the backed-up object is older. The mode is selected during the bconsole restore command and can be changed before the job runs.
Can the LDAP plugin back up directories other than Microsoft Active Directory?
Yes. The LDAP plugin works with any directory server that speaks the LDAP protocol, including OpenLDAP, Novell/SUSE eDirectory, and DS389. The MSAD plugin is the one specific to Microsoft Active Directory. For directory servers other than OpenLDAP, the plugin should be tested before use in production.
Why does the MSAD plugin run on Linux while backing up a Windows Active Directory server?
The MSAD plugin installs on a Linux File Daemon and connects to the Active Directory server over the network utilising the LDAP protocol. Nothing is installed on the domain controller itself.
How does the MSAD plugin handle Active Directory tombstone recovery?
When you restore a deleted AD object, the MSAD plugin automatically checks whether a tombstone exists for that object. If one is found, the plugin recovers the object from its tombstone and restores the remaining attributes from the backup. This returns system attributes like SID and objectGUID, which cannot be recovered through other restore methods. Tombstone recovery runs automatically and cannot be disabled.
What Active Directory versions does the MSAD plugin support?
The MSAD plugin supports Microsoft Active Directory from Windows Server 2003 onward, including current and future Windows Server versions.
Can individual user accounts or group objects be restored without rolling back the entire Active Directory?
Yes. The MSAD plugin saves every AD object as its own catalog item. You restore a single user account, group, or organizational unit directly to the live AD server without affecting any other object in the directory. Rolling back the entire directory is no longer required and is not performed.
Can the MSAD plugin restore to a different Active Directory server than the one it backed up from?
Yes. The restore options interface, accessible via option 13 in the bconsole restore command, accepts a different ldapuri and binddn at restore time. This redirects the restore to a different server without changing the original plugin configuration.
What happens if a restored AD object’s userAccountControl attribute cannot be written?
The MSAD plugin checks whether the restore user has permission to write userAccountControl during the restore job. When permission is insufficient, the attribute is restored with default flags, which leaves the account in a disabled state. The plugin records the outcome in the job log so the administrator knows immediately that a permissions fix is needed.
How are full, differential, and incremental backups handled for Active Directory environments?
The MSAD plugin supports all three backup levels. A Full backup captures every object in the directory subtree from the configured BASEDN. An Incremental job captures objects modified since the last backup of any level. A Differential job captures objects modified since the last Full backup. Object modification times are recorded in the Bacula Catalog and used to determine what each subsequent job needs to capture.