システム管理者として、あなたはかなり多くのことを処理するように課せられています。 そして、そのリストは日に日に長く、複雑になっていきます。 さらに悪いことに、状況は変わります。 昔、Linuxのサービスを開始または停止するには、ターミナルウィンドウを開いて、/etc/rc.d/(または、使用しているディストリビューションによっては、/etc/init.d)に入り、サービスを見つけて、/etc/rc.d/SERVICE start|stop|restart(SERVICEは、開始、停止、または再起動するサービスの名前)のコマンドを発行しなければならなかったことを覚えています。 あるディストリビューションで /etc/rc.d/service start を実行しようとすると、/etc/init.d/service start にすべきだったと気づくことがありました。 サービスがどのように停止、開始、および再起動されるかは、今では完全に意味をなしています。 さらに良いことに、それは (ほとんどの場合) 普遍的なものになりました。
そんな感じです。
サービスを開始、停止、再起動する方法は、ディストリビューションが systemd と init のどちらを使用しているかによって異なります。 その場合でも、複数の手段でそれらのサービスを制御できるかもしれません。
systemctl vs. service
これがこの問題の核心です。
- systemctl
- service
どちらを使用するかは、ディストリビューションが systemd や init を使用しているかどうかによります。 最近のほとんどのディストリビューションはsystemdに移行しているので、systemctlがサービスマネージャとして選ばれています。 しかし、古い習慣はなかなか抜けないもので、多くの管理者はいまだに古いserviceコマンドを使い続けています。 幸いなことに、systemd の開発者は service を残し、systemctl にリダイレクトしました。
さらに複雑なのは、インストールしたランダムなサービスが service や systemctl ツールに更新されておらず、/etc/rc.d (または /etc/init.d) から手動で起動しなければならないことです。
しかし、ここではベスト プラクティスを求めています。そして、Linux 上のアプリケーションの起動、停止、再起動のためのベスト プラクティスは、systemctl に始まり、systemctl に終わるのです。
systemctl の使用
複雑さはここで終わります。 実際、Linux でのサービスの停止/開始/再起動は非常にシンプルになりました。 例えば、CentOSを使っていて、Apacheサーバーを停止したいとします。 これを行うには、ターミナル ウィンドウを開いて次のコマンドを実行します:
sudo systemctl stop httpd
Apache サーバーが停止し、bash プロンプトに戻ります。
sudo systemctl start httpd
サービスが開始され、bashプロンプトに戻ります。
同じサービスを再起動するには、次のコマンドを実行します:
sudo systemctl restart httpd
サービスが再起動され、bashプロンプトに戻ります。
上記のコマンドは、CentOS、Ubuntu、Redhat、Fedora、Debian などで実行できます。
service の使用法
面白いことに、service コマンドは、systemd や systemctl に移行したディストリビューションでも機能します。 つまり、Linux でサービスを再起動する必要があるときに、直感的に service と入力しても、「Unknown command」エラーは発生しないのです。 serviceの場合、そのコマンドはsystemctlにリダイレクトされます。
図 A
serviceコマンドの使い方は、systemctlとは少し違います。
sudo service httpd startsudo service httpd stopsudo service httpd restart
いずれの場合も、service が systemctl にリダイレクトされますが、起動・停止・再起動しようとしているサービスは成功します。
systemctl の機能の詳細については、man systemctl コマンドを実行し、man ページを読んでみてください。
Also see
- How to monitor your Linux servers with nmon (TechRepublic)
- How to install Stacer for quick Linux system optimization (TechRepublic)
- How to use wget to download files to your GUI-less Linux server (TechRepublic)
- How to prevent Ubuntu from overwriting /etc/resolv.conf (TechRepublic)
- 改良された新しいSambaファイルサーバーをリリース (ZDNET)