コマンド確認だけなのであまり面白くない??
サービス管理コマンド
サービス管理コマンドは起動システムによって異なります。
私はなにもわかっていない状態でsystemctlから入ったので、systemctlが使えないときにちょっと困惑した思い出。
SysVinit
SysVinitでは serviceコマンドか/etc/rc.d/init.d/コマンドを用いてサービス操作を行います。
service [サービス名] [サブコマンド]
/etc/rc.d/init.d/[サービス名] [サブコマンド]
・サービス起動
service postfix start
/etc/rc.d/init.d/形式でも記述できるので、以下も同じ意味になります。
/etc/rc.d/init.d/postfix start
以降は「/etc/rc.d/init.d/」については省略してserviceコマンドのみを記述します。
・サービス停止
service postfix stop
出力結果例。
Shutting down postfix: [ OK ]
・サービス再起動
service postfix restart
・サービス設定の再読み込み
service postfix reload
出力結果例。
Reloading postfix: [ OK ]
・サービスの稼働状況確認
service postfix status
出力結果例。
master (pid 2119) is running...
・サービスの自動起動
次回起動時にサービスを自動起動させる。
chkconfig postfix on
・サービスの自動起動解除
自動起動したサービスを解除する。
chkconfig postfix off
systemd
systemctl
systemdを採用しているLinuxシステムでは、サービスの管理にsystemctlを用います。
サービス管理に関しては、サブコマンドを使った以下の形式でコマンドを実行します。
systemctl [サブコマンド] [サービス名]
[サービス名]は「/usr/lib/systemd/system」に配置されたものを参照しており、形式としては[サービス名]と[サービス名].serviceは等価でどちらも実態の「[サービス名].service」ファイルを指します。
ここでは「.service」を省略した形でコマンドを記述するものとします。
「/usr/lib/systemd/system」のサービスファイル例。
[root@nestedvm-centos7 system]# ls /usr/lib/systemd/system acpid.service arp-ethers.service auditd.service autovt@.service
主要なものだけいくつか確認していきます。
・サービス起動
systemctl start postfix
・サービス停止
systemctl stop postfix
・サービス再起動
systemctl restart postfix
・サービス設定の再読み込み
confファイルとかの再読み込みだけど、どのファイルをどこまで再読み込みしてくれるかはサービスによって異なると思う。
systemctl reload postfix
・サービスの稼働状況確認
systemctl status postfix
出力結果例
● postfix.service - Postfix Mail Transport Agent Loaded: loaded (/usr/lib/systemd/system/postfix.service; enabled; vendor preset: disabled) Active: active (running) since Sun 2020-06-14 09:54:59 UTC; 6s ago Process: 9369 ExecStop=/usr/sbin/postfix stop (code=exited, status=0/SUCCESS) Process: 9289 ExecReload=/usr/sbin/postfix reload (code=exited, status=0/SUCCESS) Process: 9382 ExecStart=/usr/sbin/postfix start (code=exited, status=0/SUCCESS) Process: 9380 ExecStartPre=/usr/libexec/postfix/chroot-update (code=exited, status=0/SUCCESS) Process: 9378 ExecStartPre=/usr/libexec/postfix/aliasesdb (code=exited, status=0/SUCCESS) Main PID: 9454 (master) CGroup: /system.slice/postfix.service tq9454 /usr/libexec/postfix/master -w tq9455 pickup -l -t unix -u mq9456 qmgr -l -t unix -u Jun 14 09:54:59 nestedvm-centos7 systemd[1]: Stopped Postfix Mail Transport.... Jun 14 09:54:59 nestedvm-centos7 systemd[1]: Starting Postfix Mail Transpor.... Jun 14 09:54:59 nestedvm-centos7 postfix/master[9454]: daemon started -- ver... Jun 14 09:54:59 nestedvm-centos7 systemd[1]: Started Postfix Mail Transport.... Hint: Some lines were ellipsized, use -l to show in full.
・サービスの稼働状態確認
LPICをやるまで知らなかった。
状況と状態という日本語の使い方が正しいかは置いておいて、statusと比較したときにこちらはサービスの稼働状態のみを表示します。
※statusさえ知っていればそっちで代用できる気もするけどどうなんでしょう
systemctl is-active postfix
稼働中の出力結果
active
停止中の出力結果
inactive
・サービスの自動起動
次回起動時にサービスを自動起動させる。
systemctl enable postfix
・サービスの自動起動解除
自動起動したサービスを解除する。
systemctl disable postfix
自動起動はリンクの生成によるものみたい。
出力結果の例
Removed symlink /etc/systemd/system/multi-user.target.wants/postfix.service.
システム停止系コマンド
停止とか再起動のコマンド。
shutdown コマンド
システム停止(再起動)はshutdownコマンドを用いて行います。
実際どの程度使うかは分からないところだけど試験的にはオプションも大切。
shutdown オプション
オプション | 内容 |
---|---|
-h | シャットダウンする(デフォルト) |
-r | 再起動 |
-k | シャットダウンせずにユーザに警告メッセージを表示 |
-c | 実行中のシャットダウンをキャンセルする |
kは警告のk!!(違う)
shutdown の時間指定
シャットダウンするタイミングを指定することができる。
now以外使ったことないけど試験的には他のも出るみたい。
・すぐにシャットダウンする
shutdown now
・指定時間後にシャットダウンする
「+[数値]」で数値分後にシャットダウンする。
shutdown +1
・指定時刻にシャットダウンする
時刻形式[00:00]で入力すると指定時刻にシャットダウンする。
shutdown 10:00
systemctlのサブコマンド
Systemdではsystemctlでサービスを指定せずにサブコマンドを使用してシャットダウンをすることもできます。
・シャットダウン
systemctl poweroff
・再起動
systemctl reboot
再起動コマンドに関しては「reboot」コマンドもありますが、UNIX系だと推奨されなかったりで、試験的にはでないっぽい??。
ーーーーーーーーーーーーーーーーーーーーー
・前回(第二回)
・次回(第三回)