質問

2011年03月10日 14時40分
  • ActiveDirectory Computers内の整理

情シスのオープンナレッジ『Syszo』サービス終了のお知らせ

質問

こんにちは。

ActiveDirectoryを現行のWindows2003環境から
Windows2008へのマイグレーションを検討しており、
これを機にOU-Computers 内の整理を考えております。

Computers 内は、これまでメンテされていないため、
実台数は500程度に関わらず、1500を超えるコンピュータが登録されています。

地道にPINGを打ったりしながら、1台づつ削除してく他ないものでしょうか。
効率的に不要なコンピュータを削除する方法等ご存知であれば教えてください。

3件の回答があります

回答

私であれば
1.グループポリシーでスタートアップスクリプトを指定。起動時に共有サーバーの特定のフォルダにコンピュータ名のファイルを生成させるように設定。
2.全PCの電源を入れる。
3.生成されたテキストファイルの名称をリストにして、対象PCをOU[確認済みPC]に移行するスクリプトを流す。
4.リストにならなかったPCをリストに吐き出して、対象のPCをOU[未確認PC]に移行し、使用中止にするスクリプトを流す。
という感じです。

どうしても消したければ、1週間ぐらい様子を見てから[未確認PC]内のコンピューターオブジェクトを消してもよいですが、私はログの追跡の観点から削除しません。

2011年03月10日 17時11分

回答

お疲れ様です。

もし、ウイルス対策ソフトが、ウイルスバスターコーポレートエディションでしたら、アクティブな機器だけが表示されます。
(たしか2週間以上接続がない機器はリストから削除されるはず)
あくまでも、全台がドメイン参加でウイルスバスターが入っている前提になります。WORKGROUPでもウイルスバスター自身はインストールできますから・・・。

あとは、パーソナルファイアーウォール等が有効になってないのであれば、全台PCを立ち上げた後、DomainView--のようなソフトで一覧を取得して付け合わせるしかないような気がします。

でも、いずれも手がかかりますよね。

Windows2008からは、ユーザーの最終ログオン時間等は表示されるようですが、コンピューターアカウントのログオン時間はとれるかは不明です。
(データー自身はAD内で持っているので、ldpツールを使えば見られるかもしれません)

2011年03月10日 19時29分

回答

(スクリプト組んでいないので自信ありませんが、)

「memo77」さんのコメントを活用し
1. ログオンしたコンピューターにログを吐き出させる
  ↓
  ログオン時にログオンスクリプトを実行させるのだと思います。
  これをうまく活用し、、、全員同じログファイルに「追記」でコンピュータアカウントを吐き出させる

2, Active Directoryのコマンドを実行させ、AD上に登録されているコンピュータアカウントのリストを抽出する

  1. Excelやコンペアかけるソフトを使って、「1」の結果と「2」の結果の差分を出す。 → 差分=使っていないコンピュータアカウント

  2. 「3」の結果をもとにADからコンピュータアカウントを削除するスクリプトを生成

以上でだめでしょうか?

2011年03月18日 14時33分
yui

あなたもコメントしましょう!