見出し画像

Intuneでタスクスケジューラ登録を行い登録完了状態を確認する方法

みなさんIntune使っていますか?

企業における端末(PCやスマートフォン)管理は様々な方法で行なえますが、最も有名であり実績もあるツールの1つがIntuneです。IntuneはMicrosoftが提供している端末管理基盤であり、Windows PCの管理に最も適しているツールです。Intuneは様々なことができますが、特徴的な機能の1つにアプリの配信という機能があります。これはIntuneで管理されているPCやスマートフォンに対してアプリケーションを配布することができる機能です。今回はそのアプリ配信を用いて、定期的にWindows PCにて実行したいタスクをどのように登録して、どのように登録状態を確認するかを記載していきます。

Intuneから端末のタスクスケジューラへの登録方法

Windows PCで定期的に実行させるためにはタスクスケジューラを使います。IntuneからWindows PCのタスクスケジューラに登録を行うにはIntuneのアプリ配信機能を使用します。必要な手順は下記になります。

  • 配信するbatファイルを作成する タスクスケジューラへの登録はschtasksというコマンドを使用することで行なえます。 例えば、再起動を毎週日曜日に強制したいという場合には下記のように書くことで実行できます

schtasks /create /sc WEEKLY /d SUN /tn scheduled_reboot /tr "C:\\Windows\\System32\\shutdown.exe -r -t 60 -f" /st 02:00 /rl highest /F
  • 配信確認用のPowerShellを作成する

  • 作成したbatファイルとps1ファイルをIntuneで配信できる形式(.intunewin形式)に変換する

  • Intuneに.intunewin形式のファイルをアップロードして、アプリ配信登録する

タスクスケジューラ登録状態確認スクリプト

Intuneでは配信したアプリが端末側に正常に配置されたかというのを確認するプロセスがあります。タスクスケジューラに登録したものを確認する方法はいくつかありますが、今回はPowerShellを用いた方法をご紹介します。上記の例で設定したタスクスケジューラを確認するには下記のようにします。

# タスクスケジューラ名
$TaskName = "scheduled_reboot"

# 対象のタスクスケジューラの状態を取得する
$taskNameState =  (Get-ScheduledTask -TaskName $TaskName).State

# タスクスケジューラの状態が"Ready"であれば登録完了
if($taskNameState -eq "Ready") {
     Write-Output "Installed"
}

上記はIntuneから自動実行され、端末側にタスクスケジューラが設定されたかが確認されます。上記の実行結果についてもIntuneが自動で判定するため、これ以外の操作は不要です。

Intuneは様々な機能があり、PowerShellやその他ツールを組み合わせることで様々なことが可能となります。今後もIntune周りの情報を記事にしていこうと思います。

お問い合わせはこちら✨

MDM(端末管理基盤)の導入やIntuneでのアプリ配信をはじめ、情シスに関するお悩みの相談も承っております。少しでも興味をお持ちいただいた方は下記からお気軽にご連絡ください!



積極採用中🙌🏻

また、情シスを一緒にサポートしてくれる方を募集しています!!!興味のある方は以下のページから


情シスに関わる悩みや課題のヒアリングやソフトウェアの検証等に使用させていただきます。