お兄ちゃん!
サーバプログラムを
扱えるようになるには
他にどんな知識が必要かな?
それならサーバプログラムの基礎
「デーモン」について学ぼう!
Linux ではサーバプログラムを
「デーモン(daemon)」と呼ぶんだ
雑用をこなしてくれる
精霊のような存在で
「悪魔(demon)」とは違うよ
日本語で「デーモン」と書くと
区別が付かないけど
可愛い精霊さんなんだね!
多くのデーモンは
その機能を表す名前の末尾に
d を付けた名前にしているよ
例えば以下のような
デーモンがあるんだ
| デーモン名 | 役割 |
|---|---|
sshd |
SSH デーモン |
httpd |
HTTP デーモン |
ftpd |
FTP デーモン |
d で終わっている
コマンドやプロセスは
デーモンの可能性が高いんだね
最近の Linux では
デーモンの管理を
systemd が行なっているよ
あっ!
「システムを管理する」デーモンなんだ!
systemd は d で終わっているね!
よく気が付いたね!
systemd はシステム全体のプロセスを
統括してくれているデーモンなんだ
まずは
systemd が
使われているか確認しよう
使われている場合は
一番親のプロセスが
systemd になっているんだ
pstree で
確認してみよう!
pstree
うん!
pstree で親子関係を見るんだね!systemd─┬─ModemManager───2*[{ModemManager}]
├─NetworkManager───2*[{NetworkManager}]
└─...
一番親のプロセスが
systemd になっているよ!このような場合 「サービス(service)」と 呼んでいるんだ
systemd がデーモンを管理しているよsystemd ではデーモンをsystemd はsystemctl 経由で操作するんだ以下が代表的なコマンドだよ| コマンド | 意味 |
|---|---|
sudo systemctl start サービス | サービスを開始する |
sudo systemctl stop サービス | サービスを停止する |
sudo systemctl restart サービス | サービスを再起動する |
sudo systemctl reload サービス | サービスに設定を再読み込みさせる(非対応の場合がある) |
sudo systemctl is-active サービス | サービスの起動状態を確認する |
sudo systemctl enable サービス | ブート時のサービス自動起動を有効化する |
sudo systemctl disable サービス | ブート時のサービス自動起動を無効化する |
sudo systemctl is-enabled サービス | ブート時のサービス自動起動の有効・無効を確認する |
sudo systemctl status サービス | サービスの状態を確認する |
sudo systemctl enable --now サービス
デーモンのコマンドによって呼び出し方や引数が違うけど
systemctl で統一された操作を実現しているんだね!今回は「デーモン」について学んだよ!
systemd がデーモンを管理してsystemctl から操作を行うんだ!これでサーバの基本的な操作ができるようになるよ!