Монтирование мгновенных снимков томов, содержащих Active Directory, кажется фокусом. Каким образом можно получить данные Active Directory, хранящиеся в снимках? Разгадка кроется в команде DSAMAIN. Это исполняемый файл, запускающий ADLDS. По сути своей, это автономный сервер LDAP, большая часть кода которого используется совместно с доменными службами Active Directory. Программу DSAMAIN можно использовать для того, чтобы превратить подключенные мгновенные снимки в некое подобие сервера LDAP, доступного только для чтения и содержащего данные Active Directory на момент создания снимка.
Рассмотрим следующую команду:
1 2 |
C:\> dsamain –dbpath c:\$snap_200712032318_volumed$\ntds\dit\ntds.dit -ldapport 10000 |
на подключает файл ntds.dit, лежащий в папке c:\$snap_200712032318_volumed$\ntds\dit, и делает его доступным для любых операций LDAP по протоколу TCP через порт 10000 (можно указать любой другой открытый порт). Программа DSAMAIN открывает порт LDAPS (порт, используемый для операций LDAP с шифрованием SSL) на порте, номер которого отличается от указанного на единицу (в нашем примере это порт 10001), порт GC (порт, используемый для подключения к глобальному каталогу) на порте, отличающемся на две единицы (10002), и порт GCS (подключение к глобальному каталогу с шифрованием SSL) на порте, отличающемся на три единицы (10003).
Для доступа к подключенному дереву каталога через указанный порт можно использовать любую программу LDAP (например, LDP). В Windows Server 2008 компоненты Active Directory «Пользователи и компьютеры», «Сайты и службы» и «Домены и доверие», а также программа ADSIEDIT, изменены таким образом, чтобы их можно было подключать к информационному дереву каталога, смонтированному при помощи программы DSAMAIN. Если щелкнуть правой кнопкой мыши узел самого верхнего уровня в области переходов ADUC и выбрать пункт «Сменить контроллер домена», появится диалоговое окно, показанное на рис. 14. Если в нем ввести имя или IP-адрес того сервера, на котором размещен смонтированный мгновенный снимок, и порт (в нашем примере это localhost:10000), компонент ADUC подключится к смонтированномуснимку, после чего можно выполнить обзор содержимого каталога на момент создания снимка. Впечатляет, не правда ли?
Возможность такого доступа к данным упрощает многие задачи, связанные с восстановлением данных. Например, чтобы восстановить удаленный объект, раньше нужно было выполнить неполномочное восстановление резервной копии на имеющийся контроллер домена, а затем — принудительное восстановление удаленного объекта. Если в той копии, на основании которой вы провели восстановление системы, нужных данных не было, приходилось все начинать с начала. Теперь, благодаря возможности восстановления объектов-захоронений и использования мгновенных снимков, можете быстро найти и восстановить удаленные файлы, причем даже не нужно отключать контроллер домена.
Правда, существует несколько ограничений. Например, каждый активный мгновенный снимок повышает количество операций ввода-вывода, связанных с операциями записи в каталог, так что на производственном контроллере домена лучше не активировать более одного–двух мгновенных снимков одновременно. Кроме того, чем дольше снимок остается активным, тем больше становится разностное содержимое, хранящееся в службе теневого копирования томом, что тоже влияет на производительность. Ну и наконец, восстановление удаленного объекта — это лишь первый этап решения проблемы. Весьма вероятно, что после этого нужно будет также восстановить атрибуты, связанные с объектом, к примеру указания на членство в той или иной группе. Мгновенный снимок поможет определить, в какие группы входил удаленный объект.