Управление репликацией
Для управления репликацией в домене «Эллес» с помощью утилиты samba-tool используется группа подкоманд drs.
Получение информации о состоянии репликации на контроллере домена
Для получения информации о состоянии входящей и исходящей репликации для контроллера в домене «Эллес» используется следующий формат вызова:
samba-tool drs showrepl [<DC>] [options]
Вывод подкоманды содержит информацию о текущем состоянии репликации данных каталога в рамках существующих репликационных соединений между контроллером домена, для которого выполняется подкоманда, и другими контроллерами домена, являющимися его партнерами по репликации.
Если подкоманда вызывается без дополнительных аргументов, она возвращает информацию для локального контроллера домена. Если в качестве аргумента передается имя хоста, DNS-имя или IP-адрес контроллера домена, информация выводится для него.
При использовании стандартного формата (по умолчанию или при вызове с опцией --classic) информация в выводе группируется в четырех разделах:
-
заголовок с данными агента службы каталогов (DSA), для которого выполняется запрос;
-
раздел
INBOUND NEIGHBORS— статус репликации данных на контроллер домена, для которого выполняется подкоманда, с других контроллеров; -
раздел
OUTBOUND NEIGHBORS— статус репликации данных с контроллера домена, для которого выполняется подкоманда, на другие контроллеры; -
раздел
KCC CONNECTION OBJECTS— подробная информация о репликационных соединениях с партнерами по репликации контроллера домена, для которого выполняется подкоманда.
Соединения отображаются в разделах INBOUND NEIGHBORS и OUTBOUND NEIGHBORS. В каждом из них должны содержаться следующие пункты (и, возможно, другие в зависимости от конфигурации леса):
CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech DC=ForestDnsZones,DC=elles,DC=inno,DC=tech DC=elles,DC=inno,DC=tech DC=DomainDnsZones,DC=elles,DC=inno,DC=tech CN=Configuration,DC=elles,DC=inno,DC=tech
В разделе INBOUND NEIGHBORS в строке Last attempt должны отображаться актуальные дата и время, идентичные тем, которые указаны в строке Last success (дата и время последней успешной попытки репликации). При этом должно быть нулевое количество последовательных неуспешных попыток репликации: 0 consecutive failure(s).
Если в разделе INBOUND NEIGHBORS присутствуют следующие записи, необходимо подождать некоторое время, пока будет установлено соответствующее соединение:
Last attempt @ NTTIME(0) was successful … Last success @ NTTIME(0)
Параметры
Параметры вызова:
-
--json— вывод информации о текущем состоянии репликации в формате JSON; -
--summary— вывод краткой информации о неработоспособных входящих и исходящих репликационных соединениях (выводит только ошибочные соединения, при отсутствии ошибок выводит "[ALL GOOD]"); -
--pull-summary— вывод краткой информации только о неработоспособных входящих репликационных соединениях (выводит только ошибочные inbound-соединения, при отсутствии ошибок выводит "[ALL GOOD]"); -
--notify-summary— вывод краткой информации только о неработоспособных исходящих репликационных соединениях (выводит только ошибочные outbound-соединения, при отсутствии ошибок выводит "[ALL GOOD]"); -
--classic— вывод информации о текущем состоянии репликации в стандартном формате (используется по умолчанию); -
-v|--verbose— вывод детальной информации (не влияет на формат вывода в режиме--classic).
Примеры
Пример получения информации о состоянии входящей и исходящей репликации в стандартном формате:
samba-tool drs showrepl Site1\DC01 DSA Options: 0x00000001 DSA object GUID: e3205f7a-fcd7-4a1a-a28a-5079456a315b DSA invocationId: 5930028d-6e7c-490d-8c49-155cb284607f ISTG: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech ==== INBOUND NEIGHBORS ==== CN=Configuration,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 SYNC_ON_STARTUP DO_SCHEDULED_SYNCS Last attempt @ Thu Aug 6 17:19:41 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:41 2026 MSK DC=DomainDnsZones,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 SYNC_ON_STARTUP DO_SCHEDULED_SYNCS Last attempt @ Thu Aug 6 17:19:56 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:56 2026 MSK DC=ForestDnsZones,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 SYNC_ON_STARTUP DO_SCHEDULED_SYNCS Last attempt @ Thu Aug 6 17:19:56 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:56 2026 MSK DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 SYNC_ON_STARTUP DO_SCHEDULED_SYNCS Last attempt @ Thu Aug 6 17:20:11 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:20:11 2026 MSK CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 SYNC_ON_STARTUP DO_SCHEDULED_SYNCS Last attempt @ Thu Aug 6 17:19:06 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:06 2026 MSK ==== OUTBOUND NEIGHBORS ==== CN=Configuration,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 Last attempt @ Thu Aug 6 17:19:57 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:57 2026 MSK DC=DomainDnsZones,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 Last attempt @ Thu Aug 6 17:19:57 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:57 2026 MSK DC=ForestDnsZones,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 Last attempt @ Thu Aug 6 17:19:57 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:57 2026 MSK DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 Last attempt @ Thu Aug 6 17:21:17 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:21:17 2026 MSK CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 Last attempt @ Thu Aug 6 17:19:51 2026 MSK was successful 0 consecutive failure(s). Last success @ Thu Aug 6 17:19:51 2026 MSK ==== KCC CONNECTION OBJECTS ==== Connection -- Connection name: 1a595ea6-ad85-4f1e-aa3c-e4fd1fd94c73 Enabled : TRUE Server DNS name : dc02.elles.inno.tech Server DN name : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech TransportType: RPC Options: 0x00000001 NTDSCONN_OPT_IS_GENERATED ReplicatesNC: CN=Configuration,DC=elles,DC=inno,DC=tech Reason: 0x00000002 NTDSCONN_KCC_RING_TOPOLOGY ReplicatesNC: CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech Reason: 0x00000002 NTDSCONN_KCC_RING_TOPOLOGY ReplicatesNC: DC=DomainDnsZones,DC=elles,DC=inno,DC=tech Reason: 0x00000002 NTDSCONN_KCC_RING_TOPOLOGY ReplicatesNC: DC=ForestDnsZones,DC=elles,DC=inno,DC=tech Reason: 0x00000002 NTDSCONN_KCC_RING_TOPOLOGY ReplicatesNC: DC=elles,DC=inno,DC=tech Reason: 0x00000002 NTDSCONN_KCC_RING_TOPOLOGY
Пример вывода информации о состоянии репликации в формате JSON (приводятся только некоторые фрагменты для демонстрации формата):
samba-tool drs showrepl --json
{
"dsa": {
"options": 1,
"objectGUID": "e3205f7a-fcd7-4a1a-a28a-5079456a315b",
"invocationId": "5930028d-6e7c-490d-8c49-155cb284607f"
},
"repsFrom": [
...
{
"NC dn": "CN=Configuration,DC=elles,DC=inno,DC=tech",
"DSA objectGUID": "557f86f5-2e65-4a26-8aa9-178ecb302fc5",
"last attempt time": "Thu Aug 6 17:19:41 2026 MSK",
"last attempt state": [
0,
"WERR_OK"
],
"last attempt message": "was successful",
"consecutive failures": 0,
"last success": "Thu Aug 6 17:19:41 2026 MSK",
"NTDS DN": "CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech",
"is deleted": false,
"replica flags": 96,
"DSA": "Site1\\DC02"
},
...
],
"repsTo": [
{
"NC dn": "CN=Configuration,DC=elles,DC=inno,DC=tech",
"DSA objectGUID": "557f86f5-2e65-4a26-8aa9-178ecb302fc5",
"last attempt time": "Thu Aug 6 17:19:57 2026 MSK",
"last attempt state": [
0,
"WERR_OK"
],
"last attempt message": "was successful",
"consecutive failures": 0,
"last success": "Thu Aug 6 17:19:57 2026 MSK",
"NTDS DN": "CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech",
"is deleted": false,
"replica flags": 7,
"DSA": "Site1\\DC02"
},
...
],
"NTDSConnections": [
{
"name": "1a595ea6-ad85-4f1e-aa3c-e4fd1fd94c73",
"remote DN": "CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech",
"options": 1,
"enabled": true,
"dns name": "dc02.elles.inno.tech",
"replicates NC": [
[
"CN=Configuration,DC=elles,DC=inno,DC=tech",
2
],
[
"CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech",
2
],
[
"DC=DomainDnsZones,DC=elles,DC=inno,DC=tech",
2
],
[
"DC=ForestDnsZones,DC=elles,DC=inno,DC=tech",
2
],
[
"DC=elles,DC=inno,DC=tech",
2
]
]
}
],
"istg": "CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech"
}
Пример вывода краткой информации о неработоспособных репликационных соединениях:
samba-tool drs showrepl --summary There are failing connections Failing outbound connections: DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 Last attempt @ Thu Aug 6 17:26:59 2026 MSK failed, result 1225 (WERR_CONNECTION_REFUSED) 8 consecutive failure(s). Last success @ Thu Aug 6 17:24:13 2026 MSK Failing inbound connection: CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 SYNC_ON_STARTUP DO_SCHEDULED_SYNCS Last attempt @ Thu Aug 6 17:26:46 2026 MSK failed, result 1225 (WERR_CONNECTION_REFUSED) 1 consecutive failure(s). Last success @ Thu Aug 6 17:19:06 2026 MSK
Пример вывода при отсутствии ошибок:
samba-tool drs showrepl --summary [ALL GOOD]
Пример вывода только для inbound-соединений:
samba-tool drs showrepl --pull-summary There are failing connections Failing inbound connection: CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 SYNC_ON_STARTUP DO_SCHEDULED_SYNCS Last attempt @ Thu Aug 6 17:26:46 2026 MSK failed, result 1225 (WERR_CONNECTION_REFUSED) 1 consecutive failure(s). Last success @ Thu Aug 6 17:19:06 2026 MSK
Пример вывода только для outbound-соединений:
samba-tool drs showrepl --notify-summary There are failing connections Failing outbound connections: DC=elles,DC=inno,DC=tech Site1\DC02 via RPC DSA object GUID: 557f86f5-2e65-4a26-8aa9-178ecb302fc5 Last attempt @ Thu Aug 6 17:27:30 2026 MSK failed, result 1225 (WERR_CONNECTION_REFUSED) 10 consecutive failure(s). Last success @ Thu Aug 6 17:24:13 2026 MSK
Запуск сервиса построения топологии репликации (KCC)
Для запуска сервиса построения топологии репликации (Knowledge Consistency Checker, KCC) на локальном или удаленном контроллере домена «Эллес» используется следующий формат вызова:
samba-tool drs kcc [<DC>] [options]
Подкоманда позволяет обновить информацию о соединениях с другими контроллерами домена в рамках соглашений о репликации.
Если подкоманда вызывается без дополнительных аргументов, она выполняется на локальном контроллере домена. Если в качестве аргумента передается имя хоста, DNS-имя или IP-адрес контроллера домена, сервис KCC вызывается для него.
Подкоманду samba-tool drs kcc следует использовать, когда необходимо принудительно перестроить топологию соединений для репликации на локальном или удаленном контроллере домена в штатном режиме эксплуатации. Она использует RPC-протокол для вызова логики перестроения из скрипта samba_kcc. Таким образом, для полноценной работы ей требуется запущенная служба inno-samba.
Для обновления информации о соединениях на неработоспособном контроллере домена, на котором не удается запустить службу inno-samba, может использоваться непосредственно скрипт samba_kcc (см. подробнее об особенностях работы скрипта в разделе
«Репликация данных каталога»).
|
Подкоманда должна вызываться от имени пользователя с правами администратора домена. Если вход в систему выполнен с учетными данными такого пользователя и для него существует действующий билет Kerberos, полученный при входе или с помощью команды Если работа ведется от имени пользователя, не обладающего требуемыми правами, необходимо явно указать имя пользователя с правами администратора домена в ключе |
Выполнение репликации
Для выполнения репликации разделов каталога между двумя контроллерами домена «Эллес» используется следующий формат вызова:
samba-tool drs replicate <destinationDC> <sourceDC> <NC> [options]
Подкоманда выполняет репликацию указанного раздела каталога (<NC>) на указанный контроллер-приемник (<destinationDC>) с указанного контроллера-источника (<sourceDC>).
| Если при вызове подкоманды указываются контроллеры домена, между которыми отсутствует соглашение о репликации, данные реплицируются, однако соглашение не создается. |
По умолчанию подкоманда реплицирует только операции над объектами, которые не выполнялись на контроллере-приемнике. К таким операциям относятся:
-
создание новых объектов каталога;
-
изменение объектов каталога;
-
удаление объектов каталога.
Для повторной синхронизации данных по всем объектам в разделе каталога при запуске подкоманды используйте параметр --full-sync.
Параметры
Параметры вызова:
-
--add-ref— использоватьADD_REFдля добавления кrepsToна источнике; -
--sync-forced— использоватьSYNC_FORCEDдля принудительного выполнения входящей репликации; -
--sync-all— использоватьSYNC_ALLдля выполнения репликации со всех контроллеров; -
--full-sync— выполнить повторную синхронизацию данных по всем объектам; -
--local— загрузить изменения напрямую в локальную базу данных (контроллер-приемник игнорируется); -
--local-online— загрузить изменения в локальную базу данных (контроллер-приемник игнорируется) так, как это происходит в рамках стандартной процедуры репликации; -
--async-op— использовать для репликацииASYNC_OP; -
--single-object— реплицировать только данные по указанному объекту вместо репликации всего раздела каталога (используется только вместе с параметром--local).
Примеры
Пример выполнения репликации всех разделов каталога AD между контроллерами DC01 и DC02:
samba-tool drs replicate DC02 DC01 dc=elles,dc=inno,dc=tech Replicate from DC01 to DC02 was successful. samba-tool drs replicate DC02 DC01 DC=ForestDnsZones,DC=elles,DC=inno,DC=tech Replicate from DC01 to DC02 was successful. samba-tool drs replicate DC02 DC01 CN=Configuration,DC=elles,DC=inno,DC=tech Replicate from DC01 to DC02 was successful. samba-tool drs replicate DC02 DC01 DC=DomainDnsZones,DC=elles,DC=inno,DC=tech Replicate from DC01 to DC02 was successful. samba-tool drs replicate DC02 DC01 CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech Replicate from DC01 to DC02 was successful.
Управление флагами агента службы каталогов (DSA)
Для запроса или изменения флагов объекта NTDS Settings на контроллере домена «Эллес» используется следующий формат вызова:
samba-tool drs options [<DC>] [options]
Подкоманда позволяет просмотреть или изменить (при использовании параметра --dsa-option) флаги объекта NTDS Settings на контроллере домена.
Если подкоманда вызывается без дополнительных аргументов, она выполняется для локального контроллера домена. Если в качестве аргумента передается имя хоста, DNS-имя или IP-адрес контроллера домена, информация выводится для него.
Параметры
Параметры вызова:
-
--dsa-option={|-}IS_GC | {|-}DISABLE_INBOUND_REPL | {|-}DISABLE_OUTBOUND_REPL | {|-}DISABLE_NTDSCONN_XLATE— флаг DSA, который требуется снять/установить:-
IS_GC— включение/отключение роли сервера глобального каталога (GC); -
DISABLE_INBOUND_REPL— включение/отключение входящей репликации; -
DISABLE_OUTBOUND_REPL— включение/отключение исходящей репликации; -
DISABLE_NTDSCONN_XLATE— включение/отключение трансляции соединений KCC.
-
Изменение флагов DSA требует прав администратора домена. При отсутствии необходимых прав возникает ошибка ERR_INSUFFICIENT_ACCESS_RIGHTS.
|
Примеры
Пример запроса флагов DSA для локального контроллера домена:
samba-tool drs options Current DSA options: IS_GC
Пример установки флага DSA для локального контроллера домена:
samba-tool drs options --dsa-option=+DISABLE_INBOUND_REPL Current DSA options: IS_GC New DSA options: IS_GC, DISABLE_INBOUND_REPL
Пример снятия флага DSA для локального контроллера домена:
samba-tool drs options --dsa-option=-DISABLE_INBOUND_REPL Current DSA options: IS_GC, DISABLE_INBOUND_REPL New DSA options: IS_GC
Выполнение первоначальной репликации без присоединения к домену
Для выполнения первоначальной репликации без присоединения сервера к домену «Эллес» используется следующий формат вызова:
samba-tool drs clone-dc-database <dnsdomain> [options]
Подкоманда позволяет эмулировать процесс репликации для указанного домена (<dnsdomain>) без присоединения к нему и внесения каких-либо изменений. Может использоваться для целей тестирования и отладки.
Параметры
Параметры вызова:
-
--server=SERVER— полное доменное имя или IP-адрес контроллера домена AD для присоединения; -
--targetdir=TARGETDIR— каталог для сохранения данных, получаемых при присоединении;Параметр --targetdirобязателен. Без него подкоманда завершится с ошибкой. -
-q|--quiet— тихий режим (отключает вывод диагностических сообщений во время работы подкоманды); -
--include-secrets— также реплицировать секретные данные домена; -
--backend-store=BACKENDSTORE— тип базы данных каталога; возможные значения:tdb | mdb; значение по умолчанию —tdb; -
--backend-store-size=SIZE— максимальный размер файлов базы данных каталога; поддерживается только для баз данных LMDB (--backend-store=mdb); значение по умолчанию — 8 ГБ.
Получение информации о задержках при репликации
Для получения информации о задержках при репликации в домене «Эллес» используется следующий формат вызова:
samba-tool drs uptodateness [options]
Подкоманда выводит максимальное и медианное значения задержки при репликации, а также количество неудачных попыток репликации на уровне домена и для каждого раздела каталога в отдельности.
Параметры
Параметры вызова:
-
-H URL|--URL=URL— URI LDAP-сервера; может содержать указание на протокол, имя хоста и номер порта; -
-p PARTITION|--partition=PARTITION— раздел каталога, для которого требуется вывести значения задержки при репликации; -
--json— вывод данных в формате JSON; -
--maximum— вывод только максимальных значений задержки при репликации; -
--median— вывод только медианных значений задержки при репликации; -
--full— вывод полных данных о задержках при репликации.При использовании параметра --fullвыводятся полные данные о расстояниях между DSA для каждого NC, включая все узлы и ребра графа репликации. В этом случае вывод всегда в формате JSON.
Примеры
Пример получения информации о задержках при репликации:
samba-tool drs uptodateness DOMAIN maximum: 207 median: 18.0 failure: 10 CONFIGURATION maximum: 468 median: 29.0 failure: 10 SCHEMA maximum: 318 median: 27.0 failure: 10 DNSDOMAIN maximum: 56 median: 3.0 failure: 10 DNSFOREST maximum: 378 median: 36.0 failure: 10
Получение информации о поддерживаемых расширениях DRS
Для получения информации о расширениях протокола Directory Replication Service (DRS) Remote Protocol, поддерживаемых контроллером в домене «Эллес», используется следующий формат вызова:
samba-tool drs bind [<DC>] [options]
Подкоманда выводит список расширений в соответствии со спецификацией протокола Directory Replication Service (DRS) Remote Protocol с указанием статуса поддержки (Yes/No) на контроллере домена.
Если подкоманда вызывается без дополнительных аргументов, она выполняется для локального контроллера домена. Если в качестве аргумента передается имя хоста, DNS-имя или IP-адрес контроллера домена, информация выводится для него.
Параметры
Доступны стандартные параметры samba-tool. Дополнительные параметры отсутствуют.
Расширения DRS_EXT_RESERVED_FOR_WIN2K_OR_DOTNET_PART2 и DRS_EXT_RESERVED_FOR_WIN2K_OR_DOTNET_PART3 всегда отображаются как No, так как не поддерживаются в «Эллес».
|
Примеры
Пример получения информации о расширениях протокола Directory Replication Service (DRS) Remote Protocol, поддерживаемых контроллером домена:
samba-tool drs bind Bind to DC01.elles.inno.tech succeeded. Extensions supported: DRSUAPI_SUPPORTED_EXTENSION_BASE : Yes (DRS_EXT_BASE) DRSUAPI_SUPPORTED_EXTENSION_ASYNC_REPLICATION : Yes (DRS_EXT_ASYNCREPL) DRSUAPI_SUPPORTED_EXTENSION_REMOVEAPI : Yes (DRS_EXT_REMOVEAPI) DRSUAPI_SUPPORTED_EXTENSION_MOVEREQ_V2 : Yes (DRS_EXT_MOVEREQ_V2) DRSUAPI_SUPPORTED_EXTENSION_GETCHG_COMPRESS : Yes (DRS_EXT_GETCHG_DEFLATE) DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V1 : Yes (DRS_EXT_DCINFO_V1) DRSUAPI_SUPPORTED_EXTENSION_RESTORE_USN_OPTIMIZATION : Yes (DRS_EXT_RESTORE_USN_OPTIMIZATION) DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY : No (DRS_EXT_ADDENTRY) DRSUAPI_SUPPORTED_EXTENSION_KCC_EXECUTE : Yes (DRS_EXT_KCC_EXECUTE) DRSUAPI_SUPPORTED_EXTENSION_ADDENTRY_V2 : Yes (DRS_EXT_ADDENTRY_V2) DRSUAPI_SUPPORTED_EXTENSION_LINKED_VALUE_REPLICATION : Yes (DRS_EXT_LINKED_VALUE_REPLICATION) DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V2 : Yes (DRS_EXT_DCINFO_V2) DRSUAPI_SUPPORTED_EXTENSION_INSTANCE_TYPE_NOT_REQ_ON_MOD : Yes (DRS_EXT_INSTANCE_TYPE_NOT_REQ_ON_MOD) DRSUAPI_SUPPORTED_EXTENSION_CRYPTO_BIND : Yes (DRS_EXT_CRYPTO_BIND) DRSUAPI_SUPPORTED_EXTENSION_GET_REPL_INFO : Yes (DRS_EXT_GET_REPL_INFO) DRSUAPI_SUPPORTED_EXTENSION_STRONG_ENCRYPTION : Yes (DRS_EXT_STRONG_ENCRYPTION) DRSUAPI_SUPPORTED_EXTENSION_DCINFO_V01 : Yes (DRS_EXT_DCINFO_VFFFFFFFF) DRSUAPI_SUPPORTED_EXTENSION_TRANSITIVE_MEMBERSHIP : Yes (DRS_EXT_TRANSITIVE_MEMBERSHIP) DRSUAPI_SUPPORTED_EXTENSION_ADD_SID_HISTORY : Yes (DRS_EXT_ADD_SID_HISTORY) DRSUAPI_SUPPORTED_EXTENSION_POST_BETA3 : Yes (DRS_EXT_POST_BETA3) DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V5 : Yes (DRS_EXT_GETCHGREQ_V5) DRSUAPI_SUPPORTED_EXTENSION_GET_MEMBERSHIPS2 : Yes (DRS_EXT_GETMEMBERSHIPS2) DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V6 : Yes (DRS_EXT_GETCHGREQ_V6) DRSUAPI_SUPPORTED_EXTENSION_NONDOMAIN_NCS : Yes (DRS_EXT_NONDOMAIN_NCS) DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V8 : Yes (DRS_EXT_GETCHGREQ_V8) DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V5 : Yes (DRS_EXT_GETCHGREPLY_V5) DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V6 : Yes (DRS_EXT_GETCHGREPLY_V6) DRSUAPI_SUPPORTED_EXTENSION_ADDENTRYREPLY_V3 : Yes (DRS_EXT_WHISTLER_BETA3) DRSUAPI_SUPPORTED_EXTENSION_GETCHGREPLY_V7 : Yes (DRS_EXT_WHISTLER_BETA3) DRSUAPI_SUPPORTED_EXTENSION_VERIFY_OBJECT : Yes (DRS_EXT_WHISTLER_BETA3) DRSUAPI_SUPPORTED_EXTENSION_XPRESS_COMPRESS : Yes (DRS_EXT_W2K3_DEFLATE) DRSUAPI_SUPPORTED_EXTENSION_GETCHGREQ_V10 : Yes (DRS_EXT_GETCHGREQ_V10) DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART2 : No (DRS_EXT_RESERVED_FOR_WIN2K_OR_DOTNET_PART2) DRSUAPI_SUPPORTED_EXTENSION_RESERVED_PART3 : No (DRS_EXT_RESERVED_FOR_WIN2K_OR_DOTNET_PART3)
Синхронизация контроллера домена со всеми партнерами по репликации (syncall)
Для синхронизации данных каталога на контроллере домена со всеми его партнерами по репликации используется следующий формат вызова:
samba-tool drs syncall [<DSA>] [<NC>] [options]
По умолчанию без дополнительных аргументов и параметров подкоманда запускает на локальном контроллере домена процесс запроса данных конфигурационного раздела каталога (CN=Configuration,DC=domain,DC=name) с других контроллеров домена, являющихся его партнерами по репликации (режим pull), в пределах текущего сайта.
Подкоманда ожидает следующие необязательные аргументы:
-
имя хоста, DNS-имя или IP-адрес контроллера домена, для которого необходимо выполнить синхронизацию данных каталога в рамках операции (
<DSA>); -
DN-имя раздела каталога, который должен быть синхронизирован в рамках операции (
<NC>).
Результаты работы подкоманды направляются в стандартный поток вывода. По умолчанию для идентификации партнеров по репликации в выводе используются DNS-записи с глобальными уникальными идентификаторами (GUID) агентов службы каталогов (DSA).
Параметры
Параметры вызова:
-
-a|--sync-all— синхронизация всех разделов каталога, доступных на локальном или указанном контроллере домена; -
-b|--abort— принудительная остановка синхронизации при недоступности любого из партнеров по репликации; -
-D|--dn— использование в выводе DN-имен объектовNTDS Settingsсерверов, представляющих партнеров по репликации в рамках сайта; -
-e|--all-sites— синхронизация данных с контроллерами домена во всех сайтах; -
-p|--push— выполнение синхронизации в режиме push с локального или указанного контроллера домена на контроллеры домена, являющиеся его партнерами по репликации; -
-i|--iterate— бесконечное повторение синхронизации данных каталога в соответствии с переданными параметрами;При запуске в этом режиме итерации синхронизации в выводе нумеруются по порядку.
Чтобы прервать процесс синхронизации, введите в терминале Q и нажмите Enter или используйте стандартное сочетание клавиш Ctrl+C. -
-I|--showrepl— вывод для каждого партнера по репликации блока атрибутов, аналогичного выводу подкомандыshowrepl, вместо синхронизации;При использовании
-Iвыводится информация о репликационных партнерах для каждого контроллера в формате, аналогичномshowrepl, включаяDSA object GUID,invocationIdи флаги DSA. -
-j|--adjacent— синхронизация данных только с партнерами, являющимися непосредственными соседями локального или указанного контроллера домена в соответствии с топологией репликации; -
-z|--pause— приостановка операции после завершения синхронизации с каждым партнером по репликации с запросом подтверждения от пользователя;Чтобы прервать процесс синхронизации, введите в терминале любую другую команду, в том числе пустую, и нажмите Enter. Для перехода к синхронизации со следующим партнером по репликации нажмите любую другую кнопку.
-
-n|--no-sync— синхронизация без фактического выполнения репликации;При запуске в этом режиме блоки пар партнеров по репликации в выводе предваряются строкой: "Replication suppressed by user request".
-
-S|--no-ping— отказ от предварительной проверки доступности партнера по репликации;По умолчанию перед синхронизацией выполняется проверка доступности хостов всех участвующих в ней агентов DSA. Если какой-либо из хостов недоступен, в начале вывода подкоманды появляется сообщение об ошибке и соответствующий агент DSA исключается из маршрута репликации.
При использовании данного параметра проверка не выполняется, что может уменьшить общее время синхронизации. Однако в этом случае при недоступности любого агента DSA соответствующая ошибка будет выводиться в каждом блоке сообщений о синхронизации разделов каталога и повторяться несколько раз в отчете в конце вывода. -
-q|--quiet— отключение вывода сообщений о ходе выполнения операции, кроме сообщений об ошибках.
Примеры
Пример запуска синхронизации на локальном контроллере домена без указания дополнительных аргументов и параметров, кроме параметров авторизации:
samba-tool drs syncall
Syncing partition: CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: 0ba4f92e-b2c6-4323-975d-59ea1a04503b._msdcs.elles.inno.tech
To : a3fbc4e8-c217-4711-9173-dee9fbca9e46._msdcs.elles.inno.tech
The following replication completed successfully:
From: 350efbad-9994-418d-94bd-f67ebc2f093a._msdcs.elles.inno.tech
To : a3fbc4e8-c217-4711-9173-dee9fbca9e46._msdcs.elles.inno.tech
В примере:
-
выполняется синхронизация в режиме pull только данных конфигурационного раздела каталога;
-
в синхронизации участвуют партнеры по репликации в текущем сайте;
-
в выводе указываются DNS-записи с глобальными уникальными идентификаторами (GUID) агентов DSA.
Пример запуска синхронизации конфигурационного раздела каталога на указанном контроллере домена для всех сайтов:
samba-tool drs syncall -eD DC01
Syncing partition: CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC03,CN=Servers,CN=Site2,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC04,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
В примере:
-
выполняется синхронизация в режиме pull только данных конфигурационного раздела каталога;
-
в синхронизации участвуют партнеры по репликации во всех сайтах;
-
в выводе указываются DN-имена объектов
NTDS Settingsучаствующих в синхронизации агентов DSA.
Пример запуска синхронизации данных определенного раздела каталога на указанном контроллере домена:
samba-tool drs syncall -D DC01 CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech
Syncing partition: CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC04,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
В примере:
-
выполняется синхронизация в режиме pull только данных указанного в аргументах раздела каталога;
-
в синхронизации участвуют партнеры по репликации в том же сайте, в котором находится указанный контроллер домена;
-
в выводе указываются DN-имена объектов
NTDS Settingsучаствующих в синхронизации агентов DSA.
Пример запуска синхронизации всех разделов каталога, доступных на указанном контроллере домена, в режиме push для текущего сайта:
samba-tool drs syncall -apD DC01
Syncing all NC's held on dc01.
Error contacting server CN=NTDS Settings,CN=DC04,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech: drsException: DRS connection to dc04.subdom.elles.inno.tech failed: (3221225653, '{Device Timeout} The specified I/O operation on %hs was not completed before the time-out period expired.')
Syncing partition: CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
Syncing partition: DC=DomainDnsZones,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
Syncing partition: DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
Syncing partition: DC=subdom,DC=elles,DC=inno,DC=tech
*** Error: CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech -> CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
*** drsException: DsReplicaSync failed (8453, 'WERR_DS_DRA_ACCESS_DENIED')
Syncing partition: DC=ForestDnsZones,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
Syncing partition: CN=Schema,CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
syncall reported the following errors:
drsException: DsReplicaSync failed (8453, 'WERR_DS_DRA_ACCESS_DENIED')
From: CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
В примере:
-
выполняется синхронизация в режиме push данных всех разделов каталога;
-
в синхронизации участвуют партнеры по репликации в том же сайте, в котором находится указанный контроллер домена;
-
в выводе указываются DN-имена объектов
NTDS Settingsучаствующих в синхронизации агентов DSA; -
в конце приводится отчет об ошибках, возникших в процессе синхронизации.
Пример прерывания синхронизации при возникновении первой ошибки:
samba-tool drs syncall -aepDb DC01
Syncing all NC's held on dc01.
Syncing partition: DC=DomainDnsZones,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC03,CN=Servers,CN=Site2,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
Syncing partition: DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC01,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
The following replication completed successfully:
From: CN=NTDS Settings,CN=DC02,CN=Servers,CN=Site1,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
To : CN=NTDS Settings,CN=DC03,CN=Servers,CN=Site2,CN=Sites,CN=Configuration,DC=elles,DC=inno,DC=tech
Syncing partition: DC=ForestDnsZones,DC=elles,DC=inno,DC=tech
ERROR: drsException: DsReplicaSync failed (8453, 'WERR_DS_DRA_ACCESS_DENIED')
В примере:
-
выполняется синхронизация в режиме push данных всех разделов каталога;
-
в синхронизации участвуют партнеры по репликации во всех сайтах;
-
в выводе указываются DN-имена объектов
NTDS Settingsучаствующих в синхронизации агентов DSA; -
синхронизация принудительно завершается при возникновении ошибки, текст которой включается в вывод.
Пример получения вывода подкоманды showrepl для участвующих в синхронизации контроллеров домена:
samba-tool drs syncall -aeDI DC01
Syncing all NC's held on dc01.
Syncing partition: DC=DomainDnsZones,DC=elles,DC=inno,DC=tech
Site1\DC02
DSA object GUID: 350efbad-9994-418d-94bd-f67ebc2f093a
DSA invocationID: 5d6827b5-7383-4e63-a95c-bfceb2a27bab
DSA Options: IS_GC
Site1\DC03 via RPC
DSA object GUID: 7737e10c-03aa-40fe-9fd8-f3c9b3cf598d
Last attempt @ Mon Jan 27 18:56:06 2025 MSK was successful
0 consecutive failure(s)
Last success @ Mon Jan 27 18:56:06 2025 MSK
Site1\DC01
DSA object GUID: 62430164-702b-4673-b09a-50e1c3416d14
DSA invocationID: 62430164-702b-4673-b09a-50e1c3416d14
DSA Options: IS_GC
Site1\DC02 via RPC
DSA object GUID: 350efbad-9994-418d-94bd-f67ebc2f093a
Last attempt @ Mon Jan 27 18:47:58 2025 MSK was successful
0 consecutive failure(s)
Last success @ Mon Jan 27 18:47:58 2025 MSK
...
В примере:
-
выполняется синхронизация в режиме pull данных всех разделов каталога;
-
в синхронизации участвуют партнеры по репликации во всех сайтах;
-
в выводе для каждого участника операции синхронизации указываются:
-
имя сайта и NetBIOS-имя хоста контроллера домена;
-
глобальный уникальный идентификатор агента DSA;
-
значение
invocationIDагента DSA; -
установленные флаги агента DSA (
IS_GC,DISABLE_INBOUND_REPL,DISABLE_OUTBOUND_REPL,DISABLE_NTDSCONN_XLATE); -
информация о статусе репликации.
-
Получение сводной информации о состоянии репликации на контроллере домена (replsummary)
Для получения сводной информации о состоянии репликации данных каталога (в режиме pull) на контроллере домена используется следующий формат вызова:
samba-tool drs replsummary [<DSA>] [options]
В качестве обязательного аргумента ожидается NetBIOS-имя, DNS-имя или IP-адрес хоста контроллера домена, для которого необходимо получить информацию (<DSA>).
По умолчанию без дополнительных параметров подкоманда возвращает в стандартный поток вывода таблицу со следующими столбцами:
-
Source DSA/Destination DSA— NetBIOS-имя контроллера домена, являющегося источником репликационных данных / NetBIOS-имя целевого контроллера домена; -
largest delta— наибольший (среди реплицируемых разделов каталога) промежуток времени с момента последней успешной попытки репликации до момента запроса информации в формате Д.ЧЧ:ММ:СС (если промежуток более 60 дней, вместо фактического значения выводится>60 days); -
fails/total— количество неуспешных попыток репликации / общее количество попыток; -
%%— процент неуспешных попыток репликации к общему количеству попыток; -
error— текст ошибки при неуспешной попытке репликации в формате "failed, result X (WERR_XXX)", где X — код ошибки Windows, а WERR_XXX — соответствующая константа.
Данные в таблице могут фильтроваться и сортироваться с помощью дополнительных параметров. По умолчанию выводится информация как для контроллеров домена, являющихся источниками репликационных данных для указанного контроллера, так и для указанного контроллера домена с сортировкой по именам хостов.
Параметры
Параметры вызова:
-
--bysrc— вывод сводной информации о статусе репликации для всех контроллеров домена, которые являются источником репликационных данных для контроллера, указанного при вызове подкоманды (используется по умолчанию); -
--bydest— вывод сводной информации о статусе репликации для контроллера домена, указанного при вызове подкоманды (используется по умолчанию); -
--errorsonly— вывод сводной информации о статусе репликации только для контроллеров домена, в рамках взаимодействия с которыми зафиксировано ненулевое количество ошибок (не используется по умолчанию); -
--sort=KEYTOSORTBY— сортировка списка результатов в выводе по указанному столбцу (по умолчанию список сортируется по именам хостов в столбцеSource DSA/Destination DSA):-
delta— сортировка списка по наибольшему (среди реплицируемых разделов каталога) промежутку времени с момента последней успешной репликации до момента запроса информации для каждого контроллера домена; -
error— сортировка списка по последнему результату (коду ошибки), блокирующему репликацию для каждого контроллера домена;Использование этой опции сортировки помогает определить общую проблему, затрагивающую несколько контроллеров домена.
-
failures— сортировка списка по количеству неуспешных попыток репликации для каждого контроллера домена; -
percent— сортировка списка по проценту неуспешных попыток репликации от общего количества попыток.Значение рассчитывается по формуле: количество неуспешных попыток репликации / общее количество попыток * 100.
Использование этой опции помогает выявить партнеров по репликации, в рамках взаимодействия с которыми возникает наибольшее количество ошибок, и тем самым эффективно приоритизировать работы по устранению проблем репликации.
-
Примеры
Пример запроса сводной информации о состоянии репликации на контроллере домена с сортировкой по столбцу largest delta:
samba-tool drs replsummary dc06.elles.inno.tech --sort=delta Source DSA largest delta fails/total %% error DC04 14m:23s 0 / 3 0 DC05 14m:22s 0 / 3 0 DC03 04m:25s 0 / 3 0 DC02 03m:13s 0 / 3 0 DC01 01m:09s 0 / 3 0 Destination DSA largest delta fails/total %% error DC06 14m:23s 0 / 15 0
В примере:
-
запрашивается сводная информация о состоянии репликации (в режиме pull) всех разделов каталога для контроллера домена с NetBIOS-именем DC06;
-
по умолчанию выводится информация как для контроллеров домена, являющихся источниками репликационных данных для указанного контроллера, так и для указанного контроллера домена;
-
список результатов в выводе сортируется по значениям в столбце
largest delta— от наибольшего к наименьшему.
Пример запроса информации только о контроллерах домена с ненулевым количеством ошибок репликации с сортировкой по столбцу largest delta:
samba-tool drs replsummary dc01.elles.inno.tech --errorsonly --sort=delta Source DSA largest delta fails/total %% error DC03 24m:53s 3 / 3 100 failed, result 1256 (WERR_HOST_DOWN) DC02 24m:52s 3 / 3 100 failed, result 1256 (WERR_HOST_DOWN) Destination DSA largest delta fails/total %% error DC01 24m:53s 6 / 6 100 failed, result 1256 (WERR_HOST_DOWN)
В примере:
-
запрашивается сводная информация о состоянии репликации (в режиме pull) всех разделов каталога для контроллера домена с NetBIOS-именем DC06;
-
выводятся информация для контроллеров домена с ненулевым количеством ошибок репликации;
-
в столбце
errorприводится информация об ошибке; -
список результатов в выводе сортируется по значениям в столбце
largest delta— от наибольшего к наименьшему.
Обновлено: