システム状態(System State)のバックアップを取っていれば確実なのだが、取っていなくても戻す方法はある。
(質問1)
tombstoneLifeTimeの現在の設定値の調査方法
WindowsServer2003で構築し、現在DCを順次WindowsServer2008R2へ切り替え中のAD環境があります。
現在「tombstoneLifeTime」の値がいくつになっているかを知りたいのですがldap.exeなどで確認してもnull値となっているため値がわかりません。
経緯から60日の設定ではないかと予想しているのですが調べる方法はあるでしょうか。
あとこの値が60日だったとして、180日に変更した場合なにかリスクなどはあるでしょうか。
よろしくお願いします。
(回答)
以下のページの メモ の所に、tombstoneLifeTimeがNULL の場合の判断材料が記述されています。
廃棄済みオブジェクト (Tombstone) の有効期間および削除されたオブジェクトの有効期間を変更する
手元の環境 (Windows 2008 R2 SP1 クリーンインストール) を見てみたところ、tombstoneLifetime が 180 と表示されていて、値が NULL の状態を確認できたわけではないので分かりませんが、別の方法で調べてみるのはどうでしょう。(一緒の結果のような気が多分にしますが...)
ADSI エディターを使って調べる方法は以下のブログ記事で紹介されています。
【WS2008 R2】Active Directory Recycle Bin の有効期限(msDS-DeletedObjectLifeTime)
また、PowerShell の場合は以下のようになります。 (ドメイン名が example.local の場合)
Import-Module -Name ActiveDirectory(Get-ADObject -Identity "CN=Directory Service,CN=Windows NT,CN=Services,CN=Configuration,DC=example,DC=local" -Properties *).tombstoneLifetime
結果的に NULL としか出ないのなら、最初に示したリンクにある メモの記述から判断するしか無いのかもしれませんね。
180日に変更した場合のリスクについては、2つ目のリンクにあるブログの記事で扱われていますね。
「Deleted 状態では DB の容量が減らない」などになると思います。
ただ、Windows 2008 R2 の規定値が 180 日なので、60 日 -> 180 日 にするぶんにはそれほどリスクは無いんじゃないかな、と個人的には思います。
http://social.technet.microsoft.com/Forums/ja-JP/activedirectoryja/thread/e3a6f256-4287-40f4-81a0-0c0ca33ce454/#071ac416-f86f-4c46-b038-5761316c9947
(質問2)
adrestoreによるactive directoryのユーザの復元について
adrestoreで削除したユーザの復元を試みたのですがコマンド入力で削除したオブジェクトの一覧を確認したところオブジェクト名が表示されません。
テストで作成したユーザ(英数字のみのユーザ名)は表示されるのですが漢字とひらがなのユーザについてはまったく情報が表示されません。
これは仕様なのでしょうか?
OS:windows server2008 R2 SP1
(結論)
頂いたURLを元にいろいろ試したところ
「
ADRestore.NET」というものを見つけました。
使ってみたところ、漢字やひらがなを使用したユーザ名も確認して復旧することが出来ました。
http://askaresh.blogspot.jp/2008/11/adrestore-gui-version.html
※英語サイトですが翻訳して見れば使えるレベルかと
ご助言ありがとうございました。
(MSのページ)
http://lab.technet.microsoft.com/ja-jp/magazine/cc137800
Active Directory のごみ箱の手順ガイド
(MSのブログ)
AD Recycle Bin-Windows Server 2008 R2 Active Directoryの新機能
(以下、本文一部抜粋)
Active Directory のゴミ箱を利用するにはまず Windows Server 2008 R2 のフォレスト機能レベルが必要になります。つまり、ドメイン コントローラがすべて Windows Server 2008 R2 である・・・
(コメント)
○○○○です。
問題解決してなによりです。参考までに。
adrestoreですが、UNICODE文字列も「認識」はしますね。ただ表示ができない(CN=の後の文字が出ない)だけですので、文字列がわかっていれば、検索やリストアはできるようです。
ユーザのCN文字列がわからなくなってしまった、ということなら、ldp.exeあるいはldifde -xオプションでCN=Deleted Objectsコンテナの中身を見る、という作業が必要です。
(MSのプログ)
[ADSI プログラミング] Active Directory – LDP.EXE ツールを使ってみよう !
【WS2008 R2】Active Directory Recycle Bin を使ってみる その2 ~ ldp.exe を使用した場合
(個人の方のブログ)
ldp でグループが所属しているグループを確認-SEの雑記
(技術評論社の記事)
知られざるActive Directory技術の「舞台裏」:第3回 LDAPを使ってActive Directoryを制御しよう[その1:ldpとcsvde]-Gihyo.jp
http://social.technet.microsoft.com/Forums/ja-JP/activedirectoryja/thread/af8559b2-0f68-4b68-89fb-4a72bfb399ae/#db48f03c-1250-4083-ae8e-0e7001db2838
[0回]
(質問)
権限のある復元の手順について
http://technet.microsoft.com/ja-jp/library/cc755296(v=ws.10).aspx
ADの作業をする予定があるので、権限のある復元の手順(ntdsutil でオブジェクトをマークしてリストアするまでの流れ)
を記載してあるいいサイトはないでしょうか?
(回答)
こちらの掲示板ですべてを事細かく説明することは出来ませんが、ざっくりとお答えします。
ご質問の件につきましては
http://www.seshop.com/product/detail/13711/の書籍のP304~P307(第5章 Active Directory環境の保守)にその手順が書かれています。
おおまかな流れは以下のとおり。
STEP1:ディレクトリサービス復元モードで起動する。
STEP2:Wbadmin.exeコマンドでシステム状態を復元する。
STEP3:Ntdsutil.exeでAuthoritative Restore サプコマンドを実行する。
STEP4:通常モードで再起動する。
細かいコマンド構文・操作手順については書籍を購入されるなり、研修を受講されるなりして担当の講師に納得がいかれるようにご質問なされたほうがよいように思います。Webサイトとしては(例えば)したなどがあります。
【解説】ドメイン・コントローラのバックアップを行うには?http://itpro.nikkeibp.co.jp/article/COLUMN/20080318/296529/
(R2ではシステム状態のバックアップはWbadminコマンドを使わなくても、GUIでとれます。)
(古いWindows 2000 ADのKBですが、
http://support.microsoft.com/kb/241594/ja
古い資料やプログですが、
http://itpro.nikkeibp.co.jp/free/NT/WinReadersOnly/20040415/8/
http://xfreak.com/mcp/buildup/windows2000/index.cgi?mode=view&no=36
ポイントはシステム状態を復元した後、再起動させずにコマンドプロンプトより"ntdsutil"を実行することでWindows 2000 ADよりこの考え方は変わっていません。
http://social.technet.microsoft.com/Forums/ja-JP/activedirectoryja/thread/ee023455-2d98-40af-92f6-8c341efc9d4d
(質問)
Autoritative RestoreサブコマンドによるADサーバのデータベース全体の復元について
Windows Server2008R2サーバのADが構築されている環境で、BackupExec 2012使用してシステム状態のバックアップを行ない、リストアを考えております。
テープからシステム状態のリストアが完了後、NTDSUTILコマンドのAutoritative RestoreにてADサーバのデータベース全体の復元をしようとしているのですが、
Windows Server2008R2では「restore database」サブコマンドがありませんでした。
「restore database」サブコマンドと同様な復元をしたい場合はどのようにすればよろしいでしょうか?
「restore object」と「restore subtree」サブコマンドにて「restore database」と同様な復元をさせる方法などございましたら、ご教授のほどよろしくお願いいたします。
(回答)
その理由ですが、Windows Server 2008 R2 ADではしたのことが可能になったからではないかと思います。
・OUは(既定で)削除から保護されている。
・Active Directoryのゴミ箱を有効にできる。
・Ldp.exe 管理ツールを使用して、削除済みオブジェクトコンテナーを表示できる。
細かい事は、したのMSの資料をみてください。
削除された Active Directory オブジェクトを復元するシナリオの概要
(参考:個人の方のブログ)
Active Directoryデータベースの権限のある復元
(別の方の回答)
●●●●です。
問題は解決された、というところで、参考情報です。
ntdsutil restore databaseが2008以降なくなったのは、実質できないことをしていたためです。5つのディレクトリパーティションのうち、スキーマパーティション はこの機能をサポートしていないため、全データベースを完全に以前の情報で上書きすること自体、できません。そのため、restore subtreeコマンドでパーティション自体(パーティションのルートDN)を設定して対応することになります。普通はドメインパーティションが問題にな るでしょうから、このルートDNを設定すればいいでしょう。
そのあたりのくだりは、USのフォーラムに出ていますので、参考になさってください。Joson Zhouの発言が正答と考えて問題ありません。
[Joson Zhouの発言]
Hi Zivsh,
Thank you for your query.
We removed the “restore database” option from ntdsutil utility because we found that it may cause some serious problems.
As Marcin stated, an authoritative restore will not overwrite new objects that have been created after the backup was taken. It can only be carried out on objects from the configuration and domain contexts. Authoritative restores of schema naming contexts are not supported. In fact, we can use “restore subtree” to mark a whole partition as authoritative for the directory. The recommendation is to mark the lowest possible point in the tree as authoritative but you could mark the entire domain subtree authoritative.
In addition, please remember that it is recommended to have multiple domain controllers in a domain.
Autoritative Restore の "ntdsutil restore database" は実質上できないことであった。
(参考資料)
知られざるActive Directory技術の「舞台裏」
第2回 誰も教えてくれないActive DirectoryとLDAPの「本当の関係」[後編]
http://social.technet.microsoft.com/Forums/ja-JP/activedirectoryja/thread/2dcd3cd2-c28a-40c8-bf5c-f1cc3794906e
PR