Netassist Blog

タスクスケジューラーを使ってみる

こんにちは、hmaと申します。
WindowsではUpdate適用の再起動を抑止しても、何時かは再起動しなければなりません。
日曜深夜などに再起動をしたいですが、手動でわざわざ再起動などしたくありません。

そこで手動で再起動せず、タスクスケジューラーを使用して、指定した日時に自動的に再起動を実施させます。
フリーのソフトでもそういったツールはありますが、サーバなら余計なツールは入れたくありません。

今回使用するOSはWindows Server 2016 Standardです。

 

タスクスケジューラーを起動する

今回はWindows Server 2016を使用します。
① 検索ボックスに”タスク”と入力
② 検索結果で出てきたタスクスケジューラーを起動します。

 

余談になりますが、Windows Server 2016やWindows 10にある検索ボックスが使いやすくて個人的に気に入っています。
検索ワードの幅が以前のOSに比べて広くなっている気がします。

 

タスクの作成

基本タスクの作成ウィザードでタスクを設定します。
タスクスケジューラー画面の右端に「基本タスクの作成」をクリックします。

 

①名前を設定する

名前や説明を設定し、[次へ]を押下します。
わかりやすいものを入力して下さい。

 

②タスクの開始を指定する

タスクの開始予定を指定します。
毎日、毎週、毎月などをスケジュールする事ができます。
コンピュータの起動時やログオン時など特殊な条件でのスケジュールもあります。

上記の画像のように指定すれば毎月第三日曜日の1時といった指定も可能です。

指定したら[次へ]を押下し、先に進んで下さい。

 

③タスクの操作を指定する

タスクでどの操作を実行するか選択しますが、メールやメッセージの表示以外なら「プログラムの開始」を選択します。
再起動をする場合も「プログラムの開始」を選択し、[次へ]を押下します。

 

④実行するプログラムを指定する

実行するプログラムを指定します。プログラム/スクリプト欄に絶対パスで指定します。

C:\Windows\System32\shutdown.exe

上記はシャットダウンプログラムですが、引数を追加する事で再起動になります。

引数の追加(オプション)は一例ですが、 -r -t 90 -f -c “計画的な自動再起動” と指定して[次へ]を押下します。

引数の内容は下記を繋げたものとなります。

-r :再起動を実施します。

-t 90 :90秒後に実行します。

-f :実行中のアプリケーションを警告なしに閉じます。

-c “計画的な自動再起動” :シャットダウン時のコメントを指定します。

-rを指定しないと再起動にならないので注意しましょう。

 

⑤特権に指定する

[完了]をクリックしたときに、このタスクの[プロパティ]ダイアログを開くにチェックを入れて、完了ボタンを押下します。

 

タスクのプロパティダイアログが表示されますので「ユーザーがログオンしてるかどうかにかかわらず実行する」「最上位の特権で実行する」にチェック入れましょう。この設定で誰もログオンしていない状態でも最上位の特権で強制的に再起動が実行されます。

後は[OK]ボタンを押下して完了です。

 

実際に使ってみる

タスクスケジューラーの使い方は一通り説明したので、それでは実際に設定して再起動させてみましょう。

再起動テストとして実施するので、タスクの開始日時を本稿を書いているすぐ後に設定しました。
他の設定は上述したものと同じです。

テスト結果

タスク開始の指定日時から数分後、実際にログインして再起動が行われたかどうか確認してみましょう。
再起動が行われたかどうかを確認するにはイベントビューアで確認します。

Windowsの検索ボックスで”イベントビューア”で検索すれば出てきますので起動します。
[Windowsログ] > [システム]を選択し、システムのイベントを表示させます。
たくさんイベントが表示されますので、画面右にある「現在のログをフィルター」でイベントを絞り込んであげましょう。
起動とシャットダウンのイベントIDは12,13なので、”12,13″のイベントIDで絞り込みます。

上記の画像を見てみると、シャットダウンと起動のイベントログがありましたね。
設定したスケジュール通りに再起動が行われた事が確認できました。

タスクスケジューラーで面倒な再起動を片付けてしまいましょう。