[コマンドプロンプト] scコマンドの使い方 – サービスの確認や設定
scコマンドは、Windowsのサービスを管理するためのコマンドラインツールです。
サービスの確認や設定、開始、停止、削除などが可能です。
基本的な使い方として、sc query
でサービスの状態を確認し、sc start
でサービスを開始、sc stop
で停止、sc config
で設定を変更できます。
特定のサービスに対しては、sc query サービス名
で詳細情報を取得し、sc delete サービス名
でサービスを削除できます。
- scコマンドの基本的な使い方
- サービスの確認方法と操作手順
- サービスの設定変更の具体例
- 新しいサービスの作成と削除方法
- トラブルシューティングの手法
scコマンドとは
sc
コマンドは、Windowsのコマンドプロンプトで使用されるサービス制御コマンドです。
このコマンドを使用することで、Windowsサービスの管理や設定を行うことができます。
サービスとは、バックグラウンドで動作し、特定の機能を提供するプログラムのことです。
sc
コマンドを使うことで、サービスの状態確認や操作、設定変更が簡単に行えます。
scコマンドの概要
sc
コマンドは、以下のような機能を持っています。
機能 | 説明 |
---|---|
サービスの確認 | 現在のサービスの状態や詳細情報を表示する |
サービスの操作 | サービスの開始、停止、再起動などを行う |
サービスの設定変更 | スタートアップの種類や依存関係を設定する |
サービスの作成 | 新しいサービスを作成する |
サービスの削除 | 不要なサービスを削除する |
scコマンドの基本的な使い方
sc
コマンドは、コマンドプロンプトで以下のように使用します。
基本的な構文は次の通りです。
sc [オプション] [サービス名] [パラメータ]
例えば、サービスの状態を確認するには次のように入力します。
sc query [サービス名]
このコマンドを実行すると、指定したサービスの状態や詳細情報が表示されます。
scコマンドが必要な場面
sc
コマンドは、以下のような場面で特に役立ちます。
- サーバーやPCのパフォーマンスを最適化するために不要なサービスを停止したいとき
- 特定のサービスが正常に動作しているか確認したいとき
- サービスの自動起動設定を変更したいとき
- 新しいアプリケーションをインストールした際に必要なサービスを設定したいとき
これらの場面でsc
コマンドを活用することで、Windowsサービスの管理が効率的に行えます。
サービスの確認方法
Windowsのサービスを管理するためには、まずサービスの状態を確認することが重要です。
sc
コマンドを使用することで、サービスの一覧表示や特定のサービスの状態確認、詳細情報の取得が可能です。
以下にそれぞれの方法を解説します。
サービスの一覧を表示する
すべてのサービスの一覧を表示するには、次のコマンドを使用します。
sc query state= all
このコマンドを実行すると、すべてのサービスの状態が表示されます。
出力結果には、サービス名、表示名、状態(実行中、停止中など)が含まれます。
SERVICE_NAME: wuauserv
TYPE : 30 WIN32
STATE : 1 STOPPED
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
特定のサービスの状態を確認する
特定のサービスの状態を確認するには、次のようにコマンドを入力します。
sc query [サービス名]
例えば、Windows Updateサービスの状態を確認する場合は、以下のように入力します。
sc query wuauserv
このコマンドを実行すると、指定したサービスの状態が表示されます。
SERVICE_NAME: wuauserv
TYPE : 30 WIN32
STATE : 1 STOPPED
WIN32_EXIT_CODE : 0 (0x0)
SERVICE_EXIT_CODE : 0 (0x0)
CHECKPOINT : 0x0
WAIT_HINT : 0x0
サービスの詳細情報を取得する
サービスの詳細情報を取得するには、次のコマンドを使用します。
sc qc [サービス名]
このコマンドを実行すると、指定したサービスの設定や依存関係、実行ユーザーなどの詳細情報が表示されます。
例えば、Windows Updateサービスの詳細情報を取得する場合は、以下のように入力します。
sc qc wuauserv
出力結果には、サービスの表示名、実行可能ファイルのパス、スタートアップの種類などが含まれます。
[SC] QueryServiceConfig SUCCESS
SERVICE_NAME: wuauserv
TYPE : 20 WIN32_SHARE_PROCESS
START_TYPE : 3 DEMAND_START
ERROR_CONTROL : 1 NORMAL
BINARY_PATH_NAME : C:\WINDOWS\system32\svchost.exe -k netsvcs -p
LOAD_ORDER_GROUP :
TAG : 0
DISPLAY_NAME : Windows Update
DEPENDENCIES : rpcss
SERVICE_START_NAME : LocalSystem
これらのコマンドを使用することで、サービスの状態や詳細情報を簡単に確認することができます。
サービスの操作方法
sc
コマンドを使用すると、Windowsサービスの操作が簡単に行えます。
ここでは、サービスの開始、停止、再起動、一時停止・再開の方法について解説します。
サービスを開始する
サービスを開始するには、次のコマンドを使用します。
sc start [サービス名]
例えば、Windows Updateサービスを開始する場合は、以下のように入力します。
sc start wuauserv
このコマンドを実行すると、指定したサービスが開始されます。
成功すると、次のようなメッセージが表示されます。
[SC] StartService SUCCESS
サービスを停止する
サービスを停止するには、次のコマンドを使用します。
sc stop [サービス名]
例えば、Windows Updateサービスを停止する場合は、以下のように入力します。
sc stop wuauserv
このコマンドを実行すると、指定したサービスが停止されます。
成功すると、次のようなメッセージが表示されます。
[SC] StopService SUCCESS
サービスを再起動する
サービスを再起動するには、停止してから再度開始する必要があります。
以下のようにコマンドを入力します。
sc stop [サービス名]
sc start [サービス名]
例えば、Windows Updateサービスを再起動する場合は、次のように入力します。
sc stop wuauserv
sc start wuauserv
この手順を実行すると、サービスが停止し、その後再び開始されます。
サービスを一時停止・再開する
サービスを一時停止するには、次のコマンドを使用します。
sc pause [サービス名]
例えば、Windows Updateサービスを一時停止する場合は、以下のように入力します。
sc pause wuauserv
このコマンドを実行すると、指定したサービスが一時停止されます。
成功すると、次のようなメッセージが表示されます。
[SC] PauseService SUCCESS
一時停止したサービスを再開するには、次のコマンドを使用します。
sc continue [サービス名]
例えば、Windows Updateサービスを再開する場合は、以下のように入力します。
sc continue wuauserv
このコマンドを実行すると、サービスが再開されます。
成功すると、次のようなメッセージが表示されます。
[SC] ContinueService SUCCESS
これらのコマンドを使用することで、サービスの操作が簡単に行えます。
サービスの設定変更
sc
コマンドを使用すると、Windowsサービスの設定を変更することができます。
ここでは、サービスのスタートアップの種類、依存関係、表示名、実行ユーザーの変更方法について解説します。
サービスのスタートアップの種類を変更する
サービスのスタートアップの種類を変更するには、次のコマンドを使用します。
スタートアップの種類には、AUTO_START
(自動)、DEMAND_START
(手動)、DISABLED
(無効)があります。
sc config [サービス名] start= [スタートアップの種類]
例えば、Windows Updateサービスを自動起動に設定する場合は、以下のように入力します。
sc config wuauserv start= auto
このコマンドを実行すると、指定したサービスのスタートアップの種類が変更されます。
成功すると、次のようなメッセージが表示されます。
[SC] ChangeServiceConfig SUCCESS
サービスの依存関係を設定する
サービスの依存関係を設定するには、次のコマンドを使用します。
依存関係を設定することで、特定のサービスが他のサービスに依存していることを示すことができます。
sc config [サービス名] depend= [依存するサービス名]
例えば、Windows UpdateサービスがBITS
(Background Intelligent Transfer Service)に依存している場合は、以下のように入力します。
sc config wuauserv depend= BITS
このコマンドを実行すると、指定したサービスの依存関係が設定されます。
成功すると、次のようなメッセージが表示されます。
[SC] ChangeServiceConfig SUCCESS
サービスの表示名を変更する
サービスの表示名を変更するには、次のコマンドを使用します。
表示名は、サービスがWindowsのサービス管理ツールで表示される名前です。
sc config [サービス名] displayname= "[新しい表示名]"
例えば、Windows Updateサービスの表示名を Windows Update Service
に変更する場合は、以下のように入力します。
sc config wuauserv displayname= "Windows Update Service"
このコマンドを実行すると、指定したサービスの表示名が変更されます。
成功すると、次のようなメッセージが表示されます。
[SC] ChangeServiceConfig SUCCESS
サービスの実行ユーザーを変更する
サービスの実行ユーザーを変更するには、次のコマンドを使用します。
実行ユーザーを変更することで、サービスがどのユーザーアカウントで実行されるかを指定できます。
sc config [サービス名] obj= "[ユーザー名]" password= "[パスワード]"
例えば、Windows UpdateサービスをLocalSystem
アカウントで実行する場合は、以下のように入力します。
sc config wuauserv obj= "LocalSystem"
このコマンドを実行すると、指定したサービスの実行ユーザーが変更されます。
成功すると、次のようなメッセージが表示されます。
[SC] ChangeServiceConfig SUCCESS
これらのコマンドを使用することで、サービスの設定を柔軟に変更することができます。
サービスの作成と削除
sc
コマンドを使用すると、新しいサービスを作成したり、不要なサービスを削除したりすることができます。
ここでは、サービスの作成方法、削除方法、作成時に指定できるオプションについて解説します。
新しいサービスを作成する
新しいサービスを作成するには、次のコマンドを使用します。
sc create [サービス名] binPath= "[実行ファイルのパス]"
例えば、MyService
という名前のサービスをC:\MyService\MyService.exe
という実行ファイルで作成する場合は、以下のように入力します。
sc create MyService binPath= "C:\MyService\MyService.exe"
このコマンドを実行すると、指定した実行ファイルを持つ新しいサービスが作成されます。
成功すると、次のようなメッセージが表示されます。
[SC] CreateService SUCCESS
サービスを削除する
不要なサービスを削除するには、次のコマンドを使用します。
sc delete [サービス名]
例えば、MyService
というサービスを削除する場合は、以下のように入力します。
sc delete MyService
このコマンドを実行すると、指定したサービスが削除されます。
成功すると、次のようなメッセージが表示されます。
[SC] DeleteService SUCCESS
サービスの作成時に指定できるオプション
サービスを作成する際には、いくつかのオプションを指定することができます。
以下は、主なオプションの一覧です。
オプション | 説明 |
---|---|
binPath= | サービスの実行ファイルのパス |
start= | サービスのスタートアップの種類(auto, demand, disabled) |
displayname= | サービスの表示名 |
depend= | 依存するサービス名 |
obj= | サービスの実行ユーザー |
password= | 実行ユーザーのパスワード |
例えば、MyService
を自動起動に設定し、表示名を My Custom Service
とする場合は、以下のように入力します。
sc create MyService binPath= "C:\MyService\MyService.exe" start= auto displayname= "My Custom Service"
これにより、指定した条件で新しいサービスが作成されます。
これらのオプションを活用することで、サービスの設定を柔軟に行うことができます。
scコマンドの応用例
sc
コマンドは、Windowsサービスの管理において非常に便利なツールです。
ここでは、サービスの自動起動設定、ログオンアカウントの変更、トラブルシューティングにおける活用方法について解説します。
サービスの自動起動を設定する
サービスを自動起動に設定することで、システム起動時に自動的にサービスが開始されるようにできます。
これを行うには、次のコマンドを使用します。
sc config [サービス名] start= auto
例えば、MyService
というサービスを自動起動に設定する場合は、以下のように入力します。
sc config MyService start= auto
このコマンドを実行すると、指定したサービスが自動起動に設定されます。
成功すると、次のようなメッセージが表示されます。
[SC] ChangeServiceConfig SUCCESS
サービスのログオンアカウントを変更する
サービスのログオンアカウントを変更することで、サービスがどのユーザーアカウントで実行されるかを指定できます。
これを行うには、次のコマンドを使用します。
sc config [サービス名] obj= "[ユーザー名]" password= "[パスワード]"
例えば、MyService
をLocalSystem
アカウントで実行する場合は、以下のように入力します。
sc config MyService obj= "LocalSystem"
このコマンドを実行すると、指定したサービスのログオンアカウントが変更されます。
成功すると、次のようなメッセージが表示されます。
[SC] ChangeServiceConfig SUCCESS
サービスのトラブルシューティングにscコマンドを活用する
sc
コマンドは、サービスのトラブルシューティングにも役立ちます。
サービスが正常に動作していない場合、以下のようなコマンドを使用して問題を特定できます。
- サービスの状態を確認する
sc query [サービス名]
これにより、サービスが実行中か停止中かを確認できます。
- サービスの詳細情報を取得する
sc qc [サービス名]
このコマンドを使用して、サービスの設定や依存関係を確認できます。
- サービスのログを確認する
Windowsのイベントビューアを使用して、サービスに関連するエラーログを確認することも重要です。
これにより、サービスが正常に動作しない原因を特定できます。
これらの方法を活用することで、サービスのトラブルシューティングが効率的に行えます。
sc
コマンドを使いこなすことで、Windowsサービスの管理がよりスムーズになります。
よくある質問
まとめ
この記事では、Windowsのコマンドプロンプトにおけるsc
コマンドの使い方について詳しく解説しました。
サービスの確認、操作、設定変更、作成と削除、さらには応用例に至るまで、幅広い内容をカバーしています。
これを機に、sc
コマンドを活用して、Windowsサービスの管理をより効率的に行ってみてください。