サービスの再起動は、Ubuntuでソフトウェアを構成するときに実行する必要がある管理タスクの1つです。この記事では、systemctlコマンドを使用してUbuntuで実行中のサービスを再起動する方法について説明します。また、サービスの操作中にさらに役立つサービス管理systemctlコマンドについても説明します。
この記事に記載されているコマンドと手順をUbuntu18.04LTSシステムで実行しました。
Systemctlを使用したサービスの再起動
この記事では、実行中のサービスを再起動する方法を説明するために、Ubuntuコマンドラインであるターミナルを使用します。
Ubuntuでターミナルアプリケーションを開くには、アプリケーションランチャーの検索バーを使用するか、 Ctrl + Alt + Tを使用します。 ショートカット。
Ubuntuの最新バージョンは、systemdを使用してサービスを制御および開始します。有効なすべてのsystemdユニットのリストを取得するには、次のコマンドを実行します。
systemctl list-unit-files | grep enabled
このリストは、後でサービスを再起動するために使用できる正確なサービス名を取得するのに役立ちます。
systemctlコマンドを使用して、サービスを再起動できます。このコマンドは、systemd(initシステム)とサービスを制御するために使用できる比較的新しいツールです。このツールは、sysVinitmanagerに代わるものです。最近、ほとんどの最新のLinuxディストリビューションはsystemdに切り替わり、したがってsystemctlに切り替わりました。
実行中のサービスを再起動するためにsystemctlコマンドを使用する方法は次のとおりです。
$ sudo systemctl restart [servicename]
たとえば、次のコマンドを使用して、UbuntuでUFW(Uncomplicated Firewall)サービスを再起動できます。
$ sudo systemctl restart ufw
システムサービスを管理するには、承認されたユーザーである必要があることに注意してください。
Systemdでサービスを管理する
systemctlを使用してサービスを再開できるだけでなく、次のこともできます。
- サービスのステータスを確認する
$ systemctl status [servicename]
- サービスを開始する
$ systemctl start [servicename]
- サービスを停止する
$ systemctl stop [servicename]
- サービスをリロードします(サービス構成をリロードします)
$ systemctl reload [servicename]
- サービスをリロードまたは再起動します(サービスをリロードする/リロードが利用できない場合は再起動します)
$ sudo systemctl reload-or-restart [servicename]
- サービスを有効にする
$ systemctl enable [servicename]
- サービスを無効にする
$ systemctl disable [servicename]
- サービスが有効/アクティブかどうかを確認します
$ sudo systemctl is-active [servicename]
$ sudo systemctl is-enabled [servicename]
このシンプルでありながら便利なツールを使用すると、システム全体を再起動しなくてもサービスを再起動できます。それだけでなく、この記事で説明されているコマンドの使用法を利用して、より多くのサービス管理を実行できます。