ex1-lab

Linux, CentOS, Mac OS X, Windows, 仮想化, Apache等のLinux中心に気になることをメモがわりに・・・

自動起動・サービスの起動・停止 (systemdコマンド) [CentOS 7]

      2017/01/18 この記事は約4分で読むことができます。

CentOS 7のサービスの起動・停止・自動起動について

CentOS 7から自動起動・解除などの設定は、「systemd」に変更されましたので、その設定手順などまとめました

自動起動設定・解除

自動起動の設定は、chkconfigでは、「chkconfig サービス名 on」でしたが、systemctlコマンド使用すると、「systemctl enable サービス名.service」となります

自動起動の解除は、、chkconfigでは、「chkconfig サービス名 off」でしたが、systemctlコマンド使用すると、「systemctl disable サービス名.service」となります

また、サービス名.serviceのserviceを省略しても大丈夫です

自動起動一覧表示

自動起動の一覧表示は、chkconfigでは、「chkconfig -list」でしたが、systemctlコマンド使用すると
「 systemctl list-unit-files -t service」となります

「STATE」部分の表示されている、状態の意味は以下となります

ステータス(STATE)の意味
表示 設定状況
enable 自動起動設定有効
disable 自動起動設定無効
static 単体では自動起動できないサービス
特定のサービスの自動起動設定の確認

特定サービスの自動起動の設定確認するには、chkconfigでは、「chkconfig --list サービス名」, 「chkconfig --list | grep サービス名」などで表示していましたが、systemctlコマンドでは、「systemctl is-enabled サービス名.service」又は「systemctl list-unit-files | grep サービス名」で確認できます

サービス起動

CentOS 6では、サービスの起動は「/etc/init.d/サービス名 start」, 「service サービス名 start」で起動していましたが、systemctlコマンドでは「systemctl start サービス名」となります

systemctlコマンドだと起動しても何も表示されませんので、psコマンドなどで起動しているか確認したほうが良さそうです

サービス起動 失敗時

失敗した場合は、以下のようにエラーが表示されますの「systemctl status サービス名」でエラー内容を確認します。「journalctl -xn」コマンドで詳細を確認します
サービスのエラーログの場所がわかれば、そちらのログファイルでも確認できるかと思われます

この場合のエラー原因は、/etc/httpd/conf/httpd.conf の348行目が原因ですので記述ミスを確認すれば大丈夫かと思います

サービス停止

CentOS 6では、サービスの起動は「/etc/init.d/サービス名 stop」, 「service サービス名 stop」で起動していましたが、systemctlコマンドでは「systemctl stop サービス名」となります

systemctlコマンドだと起動しても何も表示されませんので、psコマンドなどで起動しているか確認したほうが良さそうです

サービス再起動

CentOS 6では、サービスの起動は「/etc/init.d/サービス名 restart」, 「service サービス名 restart」で起動していましたが、systemctlコマンドでは「systemctl restart サービス名」となります

systemctlコマンドだと起動しても何も表示されませんので、psコマンドなどで起動しているか確認したほうが良さそうです

 - Linux