Product SiteDocumentation Site

3.3.3. Сопоставление встроенных идентификаторов пользователей и групп

По умолчанию контроллер домена Samba сохраняет идентификаторы пользователей и групп в атрибутах xidNumber в idmap.ldb. Из-за особенностей работы idmap.ldb нельзя гарантировать, что каждый контроллер домена будет использовать один и тот же идентификатор для данного пользователя или группы.
Ниже описана процедура синхронизации idmap.ldb с контроллера домена, на котором установлена роль FSMO Эмулятор PDC (см. Роли FSMO), со всеми остальными контроллерами домена. Для достижения наилучших результатов следует регулярно синхронизировать idmap.ldb.
На контроллере домена, имеющего роль FSMO Эмулятор PDC:
  1. Установить пакет ldb-tools, если он еще не установлен:
    # apt-get install ldb-tools
    
  2. Создать резервную копию файла /var/lib/samba/private/idmap.ldb:
    # rm -f /var/lib/samba/private/idmap.ldb.bak
    # tdbbackup -s .bak /var/lib/samba/private/idmap.ldb
    
  3. Создать ежедневное задание cron:
    #Создание резервной копии idmap.ldb
    0 3 * * * rm -f /var/lib/samba/private/idmap.ldb.bak && tdbbackup -s .bak /var/lib/samba/private/idmap.ldb >/dev/null 2>&1
    
На контроллерах домена, которые не выполняют роль эмулятора PDC:
  1. Скопировать файл резервной копии, созданный на DC с ролью Эмулятор PDC (в примере dc1), в каталог /var/lib/samba/private/ с удалением суффикса .bak (заменить существующий файл):
    # rsync -a dc1:/var/lib/samba/private/idmap.ldb.bak /var/lib/samba/private/idmap.ldb
    
  2. Запустить очистку кеша:
    # net cache flush
    
  3. Проверить разрешения ACL SysVol и при необходимости сбросить их:
    # if ! samba-tool ntacl sysvolcheck; then samba-tool ntacl sysvolreset; fi
    
  4. Если всё прошло успешно, создать ежедневное задание cron:
    #Синхронизация idmap.ldb
    15 4 * * * rsync -a  dc1:/var/lib/samba/private/idmap.ldb.bak  /var/lib/samba/private/idmap.ldb && net cache flush && if ! samba-tool ntacl sysvolcheck; then samba-tool ntacl sysvolreset; fi >/dev/null 2>&1