【Linux】Linuxの起動 ~ プロセス / デーモン ~

◾️ はじめに

Linux のプロセスとかデーモンとかに関するメモ。

【1】Linuxの起動について

1)カーネルスレッド

* PID(プロセスID)が「0」
* ページングを担当

2)プロセス

* Linux上で動作するアプリケーション・プログラムの実行単位
* プロセスには、親子関係があり、親プロセスが子プロセスを生成

3)initプログラム

* Linux上のプログラムとして最初に実行されるのは、initプログラム
* PIDが「1」
* initは、すべてのプロセスの親である
* 他のすべてのプロセスを起動するプロセスであり,デーモン・プログラムとして動作する
* /etc/inittabファイルに記述されたプロセスを順番に起動する
  => inittabには、システムの動作状態を規定するラン・レベルごとに処理内容が記述されている

4)デーモン

* initに続いて、以下のようなプログラム(デーモン(daemon:守護神)という)
 などが実行される
 + キャッシュマネージャ
 + スワップを制御するプログラム
 + ハードディスクへのデータ書き込みを制御
* デーモンは、Windowsでいう「サービス」みたいなもの。

5)/etc/init.d ディレクト

* デーモンを起動するためのファイルは /etc/init.d ディレクトリにある
  => そのファイルは起動スクリプトという

http://www.infraeye.com/study/linuxz56.html

【2】デーモン登録に関わるコマンド

1)insserv コマンド / update-rc.dコマンド

コマンド(旧) コマンド(新) 備考
update-rc.dコマンド insserv コマンド Debian 6以降は、insserv を使うことを推奨

2)sysv-rc-conf コマンド

* ランレベルごとのスクリプトの起動停止を設定/変更

ランレベル

* システムの状態のこと
* Linuxでは、以下のランレベル0から6まで定義されている
ランレベル 説明
0 停止
1 シングルユーザーモード
2 マルチユーザーモード
3 2に同じ
4 2に同じ
5 2に同じ
6 再起動

3)service・chkconfig / systemd コマンド

* 以下の関連記事を参照のこと

サービス管理 ~ service/systemctl ~
https://dk521123.hatenablog.com/entry/2016/07/26/223003

【3】その他の関連するコマンド

1)psコマンド

* Linux上で動作しているプロセスを確認する
* 「ps ax」:全てのプロセスを表示する

2)killコマンド

* Linux上で動作しているプロセスを終了させる

関連記事

サービス管理 ~ service/systemctl ~
https://dk521123.hatenablog.com/entry/2016/07/26/223003
systemd 〜 入門編 〜
https://dk521123.hatenablog.com/entry/2017/07/30/100204
systemd 〜 journalctl 〜
https://dk521123.hatenablog.com/entry/2025/01/01/012049