Downgrading an Active Directory DC

Revision as of 02:00, 4 July 2019 by Garming (talk | contribs)

In general, there are two ways to upgrade or downgrade Samba AD DC. The first way is to replace the packages or binaries 'in-place', which may require additional steps to operate correctly. The second way is to join (or re-join) a new domain controller and optionally demoting any unused controllers.

Reliability of the two methods

For the join method, this is intended to always work as newer versions should return more consistent results via replication and so the older version is more permissive. In practice, this method may be trickier due to needing orchestration, DNS record conflicts, naming and other topology related artifacts. It may take some additional time to stabilize across the network.

The 'in-place' method is described on the Updating Samba page as a standard method of updating. While updates tend to have code within the Samba daemon to auto-update underlying formats and discrepancies, or rely on the Samba AD DC database check tool, downgrades of certain versions may require additional tools to run (described on this page).

Downgrade compatibility (4.7 - 4.11)

The following details apply only to in-place downgrades. downgradedatabase and undoguididx refer to scripts in source4/scripting/bin/samba-{downgradedatabase|undoguididx}.

Within a particular major Samba version, downgrades of point releases should be available. There are two versions where major database format changes have occurred, Samba 4.11 and Samba 4.8. sambadowngradedatabase should function the same as sambaundoguididx (the script was renamed and reworked), but is not available in prior versions.

Post-downgrade

to \ from 4.11 4.10 4.9 4.8 4.7
4.11 -
4.10 downgradedatabase -
4.9 downgradedatabase - -
4.8 downgradedatabase - - -
4.7 downgradedatabase undoguididx undoguididx undoguididx -