Как мне устранить ошибки LDIFDE, связанные с тем, что «последний токен начинается с символа« C »» и «в записи изменения-изменения отсутствует терминатор« - »» при попытке связать существующих пользователей с выходящими из групп безопасности (миграция домена)?
Выполняю это:
C:\Users\Administrator\Downloads\ldif_files>ldifde -i -k -f test.ldf -v -j "C:\Users\Administrator\Downloads\ldif_files"
Connecting to "dc1.company.local"
Logging in as current user using SSPI
Importing directory from file "test.ldf"
Loading entries
There is a syntax error in the input file
Failed on line 6. The last token starts with 'C'.
The change-modify entry is missing the terminator '-'.
0 entries modified successfully.
An error has occurred in the program
C:\Users\Administrator\Downloads\ldif_files>
test.ldf это:
dn: CN=PrinterAdmins,OU=GL,OU=Groups,OU=CMPNY,DC=company,DC=local
changetype: modify
add: member
objectClass: top
objectClass: group
member: CN=John Doe,OU=Track-It!,OU=Admins,OU=CMPNY,DC=company,DC=local
Я кропотливо устранял это в течение пары или нескольких часов, но безуспешно. Я пытался...
- Добавление одной ссылки '-' в конце
- Добавление строки '-', за которой следует пустая строка (всего две строки) в конце
- несколько других вещей; потратили много времени на поиск решений в Google и пробовали все, но безуспешно
Подразделения, группа безопасности и пользователь существуют. Да хоть убей, я не могу этого понять. Я успешно импортировал структуру OU из домена oldcompany.com, использовал Notepad ++ для удаления определенного символа пробела / ввода, а также для замены dc = oldcompany, dc = com на dc = company, dc = local, импортировано пользователи, импортировавшие группы безопасности - все успешно .. осталось только импортировать часть членства в каждую группу (привязать пользователей к их группам).
Пожалуйста помоги. :(
Что я делаю / пытаюсь сделать / уже сделал? У меня примерно 700 групп, в которые мне нужно объединить несколько сотен пользователей. Импорт структуры OU, затем пользователей и [пустых] групп был успешным. Осталось только объединить пользователей в их группы. Переход со старого домена "company.com" (с DC 2003 г.) на "company.local" на новом DC 2012 г. Хотите избежать необходимости вручную добавлять пользователей через все 700 групп (потому что у меня есть отчет Excel, в котором указывается член каждой группы / членом какой группы является каждый пользователь).
РЕДАКТИРОВАТЬ: РЕШЕНИЕ!
Вот что мне нужно было сделать, чтобы он заработал:
- Удалите все строки objectClass; в следующий раз мне нужно будет оставить это в параметрах команды для экспорта
- Первая строка файла должна быть пустой строкой, за которой следует строка «dn:» первой группы.
- В предпоследней строке файла должен быть знак -, за которым следует пустая строка (последняя строка файла).
Итак, чтобы импортировать пользователей, группы безопасности и членство в группах с company.com на company.local, мне пришлось сделать вот что:
- Экспорт структуры OU с company.com; на сайте company.com у нас было подразделение «CMPNY» в корне домена, когда вы используете Пользователи и компьютеры Active Directory содержащие все (группы безопасности, пользователей, OU, GPO и т. д.)
- Выполнить ldifde -f экспорт.ldf -s srvADdc1 -t 3268 -d "OU = CMPNY, DC = company, DC = com" -p subtree -r "(objectCategory = organizationUnit)" -l "cn, objectclass, ou" на любой машине, подключенной к старому домену AD company.com; он будет подключаться к srvADdc1 (контроллер домена) для поиска и экспорта из
- Экспорт пользователей с company.com
- Выполнить difde -f экспортПользователи.ldf -s srvADdc1 -t 3268 -d "OU = CMPNY, DC = company, DC = com" -p subtree -r "(& (objectCategory = Person) (objectClass = user))" -l "cn, displayName, visibleName, name, objectCategory , objectClass, sAMAccountName "
- Экспорт групп с сайта company.com БЕЗ участников (как и просто пустые группы безопасности)
- Выполнить ldifde -f exportGroupsEmpty.ldf -s srvADdc1 -t 3268 -d "OU = CMPNY, DC = company, DC = com" -p subtree -r "(& (objectCategory = group) (objectClass = group))" -l "cn, name, sAMAccountName, grouptype, objectclass "
- Экспорт групп с сайта company.com С участниками (содержит минимум информации для определения того, какие объекты пользователей являются членами какой группы)
- Выполнить ldifde -f exportGroupsMembers.ldf -s srvADdc1 -t 3268 -d "OU = CMPNY, DC = company, DC = com" -p subtree -r "(& (ObjectCategory = group) (objectClass = group) (name =) (член =)) "-l" член "
- Импорт остова OU старого домена company.com в новый домен company.local; мы используем другую структуру скелета OU в company.local (без «CMPNY» OU в корневом каталоге), поэтому этот скелет OU, который мы импортируем, используется только для импорта старых данных, и после того, как мы импортируем все, мы можем переименовать / очистить / удалить что угодно, а затем переместить и расположить импортированные объекты в соответствии с нашим новым / другим стандартом структуры скелета OU, который мы решили использовать в нашем новом домене company.local
- Изменить exportOUs.ldf через Notepad ++ (мои личные предпочтения), найдите DC = com и замените все на DC = местный, и сохраните файл
- Выполнить ldifde -i -k -f экспорт.ldf -v -j "C: \"; вы можете изменить путь для значения параметра -j или удалить -j "C: \" полностью - все, что он делает, это записывает любые ошибки в файл
- Импортировать пользователей из company.com в company.local
- Изменить exportUsers.ldf через Notepad ++ найдите DC = com и замените все на DC = местный, и сохраните файл
- Выполнить ldifde -i -k -f экспортПользователи.ldf -v -j "C: \"
- Импортировать пустые оболочки [Security] Group из company.com в company.local
- Изменить exportGroupsEmpty.ldf через Notepad ++ найдите DC = com и замените все на DC = местный, и сохраните файл
- Выполнить ldifde -i -k -f exportGroupsEmpty.ldf -v -j "C: \"
- Импортируйте парное членство между пользователями и группами с company.com на company.local
- открыто exportGroupsMembers.ldf через Блокнот ++
- Очень внимательно изучите содержимое этого файла; обратите внимание, как один элемент разбивается на несколько строк (например, если кто-то решил нажать клавишу ENTER на 1/3 пути по строке) - они обычно должны быть в одной строке, а не переполняться на несколько строк
- Первым делом необходимо исправить проблему переполнения нескольких строк. Сделать это, выберите все символьные данные между двумя строками, которые необходимо удалить, чтобы исправить это (только для одного экземпляра), и `` заменить все '' буквально ничем
- Найдите dc = com и замените все на dc = local
- Замените все пустые строки двумя строками: первая должна быть односимвольной, а вторая - пустой строкой; вы можете сделать это, выбрав это пространство и заменив все на \ r \ n- \ r \ n \ r \ n с расширенным режимом поиска в Notepad ++
- Убедитесь, что первая строка файла - это пустая пустая строка (без пробелов, только пустая строка) перед первой строкой «dn:» (для первой группы).
- Убедитесь, что предпоследняя строка файла - это строка, за которой следует пустая строка (как последняя строка).
- Найдите "changetype: add" и замените все на changetype: изменить \ r \ nadd: member (в основном это меняет 'добавить' на 'изменить' и создает новую строку под этим словом "добавить: член")
- Выполнить ldifde -i -k -f exportGroupsMembers.ldf -v -j "C: \"
Пример exportGroupsMembers.ldf (в первой строке есть пробел - в ней не должно быть пробелов, она должна быть пустой; последняя строка после - тоже должна быть пустой строкой):
dn: CN=ERP_User_Test,OU=GL,OU=Groups,OU=CMPNY,DC=company,DC=local
changetype: modify
add: member
member: CN=Ralph Doe,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=Grace McPhillip,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=Logan Rowley,OU=Track-It!,OU=Admins,OU=CMPNY,DC=company,DC=local
-
dn: CN=FolderSecurity_StockReportsDatabase_C,OU=GL,OU=Groups,OU=CMPNY,DC=company,DC=local
changetype: modify
add: member
member: CN=David Collins,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=Kelly Paris,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=genericSalesUser,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
-
dn: CN=FolderSecurity_StockReportsDatabase_R,OU=GL,OU=Groups,OU=CMPNY,DC=company,DC=local
changetype: modify
add: member
member: CN=Ron Burgandy,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=Jane Doe,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=Bill Gates,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
-
В первую очередь это достигается тем, что при переносе общих сетевых дисков в новую сеть сохраняются разрешения безопасности отдельных папок. Нам не нужно воссоздавать все группы, снова добавлять участников в группы, а затем просматривать более 1000 папок с уникальными разрешениями безопасности (глупо, я знаю).
После всего этого мы можем ..
- Войдите и УДАЛИТЕ все пользовательские объекты, которые навсегда устарели (например, genericITAdmin, genericITModerator и genericITTech administrator, тестовые учетные записи, случайные одноразовые учетные записи и т. Д.), Но сохраните реальные учетные записи людей, которые были деактивированы
- Переименуйте группы безопасности, чтобы стандартизировать соглашения об именах, а затем начните очистку групп безопасности для консолидации, поиска шаблонов, удаления уникальных разрешений безопасности и т. Д.
- Переместите объекты в нашу новую структуру скелета OU и удалите CMPNY OU из корня после того, как мы закончим его прополку, манипулирование, удаление, переименование старых вещей
Благодарю респондентов в следующих темах: - [H] ardForum - ServerFault - TechNet
Основной ресурс, из которого я следил за общим рабочим процессом экспорта и импорта
Дополнительная полезная информация, которую я использовал или повлиял на меня в моем путешествии
Вот как должен выглядеть ваш файл. Я только что протестировал это против LDS в Windows 8, чтобы быть уверенным.
dn: CN=PrinterAdmins,OU=GL,OU=Groups,OU=CMPNY,DC=company,DC=local
changetype: modify
add: member
member: CN=John Doe,OU=Track-It!,OU=Admins,OU=CMPNY,DC=company,DC=local
-
Если у вас нет специальных символов в значениях, тогда подойдет файл ANSI.
Скорее всего, у вас есть, но если у вас нет http://support.microsoft.com/kb/237677 может помочь.
Ваш ответ купил меня ближе к ответу, который я наконец нашел. Я обновлял тысячи групп. Это был мой окончательный ответ .... 'add: member' должно измениться на 'replace: modify' ... все остальное останется таким же, как указано выше ^^^
dn: CN=FolderSecurity_StockReportsDatabase_R,OU=GL,OU=Groups,OU=CMPNY,DC=company,DC=local
changetype: modify
replace: member
member: CN=Ron Burgandy,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=Jane Doe,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
member: CN=Bill Gates,OU=Uncategorized,OU=Users,OU=CMPNY,DC=company,DC=local
-