Windows Server 2008 R2のユーザ一括登録とデータバックアップ方法

1 はじめに

 サーバ管理のうち,「Active Directoryのユーザを一括して登録する方法」と,「ファイルやフォルダを指定したバックアップの方法」の二つについて,運用実例に触れながら紹介します。

2 ユーザアカウントの一括登録

 「Active Directory ユーザーとコンピューター」はWindowsサーバの管理ツールです。GUIを利用してさまざまな条件を画面で確認しながら設定できる便利なツールですが,複数のユーザを一括して追加することはできません。そこで,多くのユーザをdsコマンドを用いて一括登録するための「dsaddコマンド化ツール」(Excelファイル)を作成しました。

 一括登録する手順は,

1 Excelファイルにユーザの設定情報を入力

2 Excelファイルのデータからbatファイルを作成

3 batファイルをサーバにコピーして実行

になります。

(1) 表計算ソフトウェアにユーザの設定情報を入力

 ここでは,コンピュータ名が「server」のサーバを例に説明します。
Cドライブの中に,「user$」というフォルダを作成し,共有する設定にしています。
また,「スタートボタン」−「管理ツール」−「Active Directory ユーザーとコンピュータ」を開き、OUとして「test」を登録しています。


図1 フォルダ「user$」の共有の設定画面

図2 新しいOUの作成

 dsaddコマンドを一括生成するExcelファイルでコマンドを作成します。
dsaddコマンド化ツールdsadd.xlsx

 ツールを起動すると図3のように表示されます。赤枠で囲まれた部分が必須項目です。各パラメータに必要事項を入力し,dsaddコマンドを作成していきます。


図3 「dsaddコマンド化ツール」入力シートの画面

 まず、すべてのユーザに共通の部分を設定します。5行目から各ユーザに共通の設定を入力していきます。入力シートは,次の表のような設定になっています。

行数 タイトル 説明 登録例
登録先 DNの設定 登録先のドメインやOU(組織単位)を指定します。例えば,aichi.localのドメインについては, 「DC=aichi,DC=local」というように,「.」で区切られた部分それぞれを「DC=」で指定する必要があります。また,OUを指定する場合は,(事前にOUを作成して)「OU=(OU名)」を入力する必要があります。 OU=test,DC=aichi,DC=local
ログオン時のパスワード変更 ユーザが次回ログオン時にパスワード変更が必要があるかどうかを指定します。
必要なら「yes」,不必要なら「no」を入力します。
yes
プロファイルパス(標準) 移動プロファイルの保存先を設定します。移動プロファイルを設定することで,異なるパソコンからでも同じプロファイルを使った環境で利用することができます。
フォルダを共有する設定にして,移動プロファイルを保存するフォルダを「\\(サーバのコンピュータ名,または,IPアドレス)\(共有名)\(フォルダ名)…」というように,他のパソコンからネットワークで接続できるフォルダを指定してください。
移動プロファイルを設定しない場合は「空欄」にしてください。
\\server\user$\prof\
ログオンスクリプト(標準) ログオン時に実行されるコマンド名を指定します。
不要の場合は「空欄」にしてください。
空欄
ホームフォルダーの接続ドライブ(標準) ホームフォルダのネットワークドライブ名を設定します。
不要な場合は「空欄」にしてください。
Z:
10 ホームフォルダーのパス(標準) ホームフォルダを設定するときのパスを設定します。
不要の場合は「空欄」にしてください。
\\server\user$\home\

 次に追加する,ユーザの設定を行います。次のような項目があります。


図4 「dssaddコマンド化ツール」でのユーザ設定画面例

 図4の赤枠の部分から(14行目以降),個々のデータを入力します。各列の設定は次の表のようになります。

タイトル 説明
オブジェクトの種類
User
オブジェクトの種類です。登録する場合userと記入します。 user
ログオンアカウント Security Accounts Managerの値を指定します。
ログオン名になります。
(省略した場合はコンテナ名から生成します。 )
aichi-taro
パスワード パスワード(省略可) TestUser@2
姓(省略可) 愛知
名(省略可) 太郎
G 説明 説明(省略可) テスト用ユーザ2
H プロファイルパス 移動プロファイルを設定するときのパスを指定します。
(共通設定と異なる場合のみ入力が必要です。)
\\server\user$\prof\aichi-taro
I ログオンスクリプト ログオン時時実行されるコマンド名を指定します。
(共通設定と異なる場合のみ入力が必要です。)
user.bat
J ホームフォルダーの接続ドライブ ホームフォルダのネットワークドライブ名を設定します。
(共通設定と異なる場合のみ入力が必要です。)
Z:
K ホームフォルダーのパス ホームフォルダを設定するときのパスを設定します。
(共通設定と異なる場合のみ入力が必要です。)
\\server\user$\home\aichi-taro
L 名前 名前(省略可)
(姓+名前で自動設定しています。必要な場合のみ変更してください。)
愛知 太郎
M コンテナの名前 コンテナの名前(必須)
(姓+名前で自動設定しています。必要な場合のみ変更してください。)
愛知 太郎
N 表示名 表示名 (省略可)
(姓+名前で自動設定しています。必要な場合のみ変更してください。)
愛知 太郎

(2) 表計算ソフトウェアのデータからbatファイルを作成

 入力し終えたら,シート「最初に実行(フォルダ作成)」を開いて,A列のデータをコピーします。(A1セルから「pause」が記入されているセルまで選択し,コピーしてください。 )


図5 シート「最初に実行(フォルダ作成)」のA列をコピー

 メモ帳を起動して,右クリックして「貼り付け」を選択してください。


図6 シート「最初に実行(フォルダ作成)」のデータをメモ帳に貼り付け

 「名前を付けて保存」をします。ただし,ファイル名には,最初に実行するファイルということがわかるファイル名にして,拡張子を「.bat」(例:adduser1.bat)にしてください。また,ファイルの種類を「全てのファイル」にして,保存してください。


図7 「〜.bat」にファイル名を変更

 表計算ソフトウェアのシート「2番目に実行(ユーザ作成)」を開いて,A列のデータをコピーします。(A1セルから「pause」が記入されているセルまで選択し,コピーしてください。 )


図8 シート「2番目に実行(ユーザ作成)」のA列をコピー

 メモ帳を起動して,右クリックして「貼り付け」を選択してください。


図9 シート「2番目に実行(ユーザ作成)」のデータをメモ帳に貼り付け

 「名前を付けて保存」をします。ただし,ファイル名には,2番目に実行するファイルということがわかるファイル名にして,拡張子を「.bat」(例:adduser2.bat)にしてください。また,ファイルの種類を「全てのファイル」にして,保存してください。


図10 「〜.bat」にファイル名を変更

 表計算ソフトウェアのシート「3番目に実行(フォルダの指定)」を開いて,A列のデータをコピーします。(A1セルから「pause」が記入されているセルまで選択し,コピーしてください。 )


図11 シート「3番目に実行(フォルダの指定)」のA列をコピー

 メモ帳を起動して,右クリックして「貼り付け」を選択してください。


図12 シート「3番目に実行(フォルダの指定)」のデータをメモ帳に貼り付け

 「名前を付けて保存」をします。ただし,ファイル名には,3番目に実行するファイルということがわかるファイル名にして,拡張子を「.bat」(例:adduser3.bat)にしてください。また,ファイルの種類を「全てのファイル」にして,保存してください。


図13 「〜.bat」にファイル名を変更

(3) batファイルをサーバのデスクトップにコピーして実行

 保存したファイル3つをサーバのデスクトップにコピーします。


図14 batファイルをサーバのデスクトップにコピー

 デスクトップ上にある,最初に作成したフォルダ作成用のbatファイル(例:adduser1.bat)を右クリックし,「管理者として実行」をクリックしてください。


図15 batファイルを「管理者として実行」

 コマンドが実行されます。


図16 フォルダ作成に成功した画面

 続いて,ユーザ作成用のbatファイル(例:adduse2.bat)を右クリックし,「管理者として実行」をクリックしてください。


図17 ユーザ作成に成功した画面

 「dsadd 成功」と表示されれば,ユーザ名が登録されています。

図8 実行して失敗した場合
図18 ユーザ作成に失敗した場合

 図18のように,「dsadd失敗」と表示されたものは,ユーザ登録ができていません。既にユーザ名が登録されているなどの原因が考えられますので,確認してください。

 次に,フォルダ作成用のbatファイル(例:adduser3.bat)を右クリックし,「管理者として実行」をクリックしてください。


図19 フォルダの指定に成功した画面

3 ユーザデータのバックアップ方法

 通常Windowsでは,バックアップ機能が標準的に搭載されています。標準機能のWindowsバックアップでは,システム全体のバックアップや個々のファイルのバックアップをすることができ,ウィザード(説明)に従って行うと簡単に設定ができます。
参考:Windows Server 2008 R2の機能を利用したバックアップ

 ただし,Windows Server 2008 R2からバックアップ方式が変わり,スケジュールの設定などが簡素化され,複数のタスクをそれぞれの日程で行うことができなくなってしまいました。

 そこで,Windows Vista以降に搭載されている,堅牢性の高いファイル コピーであるRobocopyコマンドを使ったバックアップ方法を紹介します。今回作成した「robocopyコマンド化ツール」(Excelファイル)を利用して,実行用バッチファイルを作成し,タスクスケジューラに登録することによって,差分更新や同期,保存場所,バックアップログの保存などを設定することができるようになり,バックアップの柔軟性が高まります。

 手順は以下のようになります。Windowsの標準機能のみで実行します。

1 Excelファイルにバックアップの設定を入力

2 Excelファイルのデータからbatファイルを作成

3 batファイルをサーバにコピー

4 タスクスケジューラでバックアップ時間の設定

となります。

(1) 表計算ソフトウェアにバックアップの設定を入力

 robocopyコマンドを一括生成するExcelファイルでコマンドを作成します。
 robocopyコマンド化ツールrbcopy.xlsx

 ツールを起動すると図20のように表示されます。赤枠で囲まれた部分が必須項目です。


図20 「rbcopy.xlsx」設定画面

 入力シートの,コピー元,コピー先,処理の種類などを入力します。

 コピー元,コピー先には,ドライブ名(例「C:\」)やフォルダ名(例「C:\data」),ネットワークドライブ名(例「\\test\share」)が設定できます。

 処理の種類は,コピーをする場合は「1」を,移動をする場合は「2」を,同期をする場合は「3」を入力してください。

 その他オプションとして,細かい設定がありますが通常は設定不要です。

 細かい設定などは,ヘルプやマイクロソフトのサイトにあります。
 ・ http://technet.microsoft.com/ja-jp/library/cc733145(v=WS.10).aspx

(2) 表計算ソフトウェアのデータからbatファイルを作成

 入力し終えたら,シート「コマンドプロンプトに貼り付け実行してください」を開いて,A1セルからデータのある部分まで範囲を選択し,コピーします。


図21 シート「コマンドプロンプトに貼り付け実行してください」のA列をコピー

 メモ帳を起動して,右クリックして「貼り付け」を選択してください。


図22 メモ帳にデータを貼り付け

 「名前を付けて保存」をします。ただし,ファイル名には,必ず「.bat」をつけて(例:rbcopy.bat),ファイルの種類を「すべてのファイル」にして,保存してください。複数のバックアップ設定を作成する場合は,ファイル名をバックアップするフォルダに関するものにすると,分かりやすくなります。


図23 「〜.bat」にファイル名を変更

(3) batファイルをサーバにコピーして実行

 保存したファイルをサーバの所定のフォルダにコピーします。

 ここで,batファイルが正しく動作するかどうかを確認するために,作成したbatファイルを右クリック後「管理者として実行」をクリックして,起動してください。


図24 管理者として実行

 コマンドが実行され,バックアップの状況が表示されます。このとき,作成されたコマンドはバックグラウンドで実行されることを想定しているため,正常またはエラーにかかわらず実行後に処理画面は自動的に終了します。


図25 バックアップの処理画面

 図25のように処理画面の最後に「終了:」と表示されたら,設定したコピー先のフォルダにバックアップしたフォルダがあるかどうかを確認してください。もしコピー先のフォルダにバックアップするフォルダがなければ,コマンドの入力ミスなどの可能性があります。再度設定を確認し,やり直すことが必要となります。なお,バックアップには時間がかかる可能性もありますので,バックアップが終了した後にフォルダを確認してください。

 ログの保存を設定した場合,設定したフォルダに,処理画面と同じ内容のファイルが作成されます。ファイルがコピーされていない等のエラーも,このファイルで内容を確認することができます。

(4) タスクスケジューラでバックアップ時間の設定

 定期的にコマンドなどの処理(タスク)を実行するには,タスクスケジューラに処理を登録する必要があります。タスクへの登録方法を紹介します。

 タスクスケジューラは以下の手順で起動します。

 コントロールパネルが「表示方法 カテゴリ」のときは,「システムとセキュリティ」から「タスクのスケジュール」をクリックします。


図26 コントロールパネルの画面

図27 「システムとセキュリティ」の画面

 タスクスケジューラでは,ウィンドウ左側コンソールツリーの「タスクスケジューラライブラリ」をクリックすることで,一覧が表示されます。


図28 「タスクスケジューラ」の起動画面

  右側の操作ウィンドウにある「タスクの作成」をクリックすることで,ウィザード形式でタスクを作成できます。また,すでに登録されているものをダブルクリックすることで,各タスクの詳細プロパティが表示されます。タスクの作成はプロパティと同じ項目ですので,登録されているものを参考に追加するとよいでしょう。

 「タスクの作成」をクリックすると,図29のような画面が表示されます。名前は必須項目です。セキュリティオプションは,「ログオンしているかどうかにかかわらず実行する」と「最上位の特権で実行」のチェックをしておき,タスクが最上位特権で実行されるようにします。


図29 「タスクの作成」の全般タブ

 トリガータブは,どの時間に実行するかを設定できます。図30は,毎日0時に起動するように設定してある例です。


図30 「タスクの作成」のトリガータブ

 トリガータブで「新規」をクリックすると,図31のような画面が表示されます。バックアップの開始時間や間隔を変えたタスクを複数設定することで,複数のバックアップの実行条件を作ることができます。


図31 トリガータブ「新規」を開いた画面

 トリガータブでタスクを作成した後に,操作タブに進みます。「新規」をクリックすると「新しい操作」ウィンドウが表示されます。


図32 「タスクの作成」操作タブ

 新しい操作ウィンドウの,「操作」項目を「プログラムの開始」に選択してください。次に,「プログラム/スクリプト」で「参照」をクリックし,先に作ったbatファイルを指定します。


図33 「新しい操作」の画面

 ほかに,条件や設定タブがありますが,特に設定は必要ないと思います。環境に合わせて変更してください。

 最後に「OK」を押して登録完了です。実行時間(トリガー時間)が来てタスクが実行されたことを確認してください。

4 おわりに

 サーバーのユーザ管理やバックアップは運用上,(必ず)必要となります。標準機能だけでなく,コマンドやタスクスケジューラを利用することで,効率的な運用をすることができます。


Microsoft,Windows,Windows XP,Windows Server 2008 は米国 Microsoft Corporation の米国及び各国における商標または登録商標です。
その他,本コンテンツに掲載されているすべてのブランド名と製品名,商標および登録商標はそれぞれの帰属者の所有物です。本コンテンツでは©,®,TM などは明記してありません。