IT用語: systemdとは|Linuxの初期化システムとサービス管理の仕組み
Linux起動プロセスの管理とデーモンのライフサイクルを制御するsystemdの仕組みとsystemctlコマンドを解説。
systemdとは
systemdは、Linux OSの初期化システム(init system)兼サービスマネージャーです。カーネルが起動した後、最初に実行されるプロセス(PID 1)として動作し、すべてのデーモン(バックグラウンドサービス)の起動・停止・監視・ログ管理を担います。現在はほぼすべての主要Linuxディストリビューション(RHEL・CentOS・Ubuntu・Debian等)で採用されています。
主要なsystemctlコマンド
# サービスの起動・停止・再起動
systemctl start nginx
systemctl stop nginx
systemctl restart nginx
systemctl reload nginx # 設定ファイルのみ再読み込み
# 自動起動の設定
systemctl enable nginx # OS起動時に自動起動
systemctl disable nginx # 自動起動を無効化
# 状態確認
systemctl status nginx
systemctl is-active nginx
systemctl is-enabled nginx
# ログ確認(journald)
journalctl -u nginx # nginxのログ全件
journalctl -u nginx -f # リアルタイム追跡
journalctl -u nginx --since "1 hour ago"
サービスユニットファイル
# /etc/systemd/system/myapp.service
[Unit]
Description=My Node.js Application
After=network.target
[Service]
Type=simple
User=www-data
WorkingDirectory=/var/www/myapp
ExecStart=/usr/bin/node server.js
Restart=on-failure
RestartSec=5s
Environment=NODE_ENV=production
[Install]
WantedBy=multi-user.target
journald
systemdに含まれる集中ログ管理システムです。バイナリ形式でログを保存し、journalctlコマンドでフィルタリング・検索が可能。ローテーション・永続化・転送の設定も柔軟に行えます。
関連する用語 (インフラ)
全16件を見るIT用語: ロードバランサーとは|複数サーバーへのトラフィック分散の仕組み
アクセスを複数のサーバーに振り分けて可用性とスケーラビリティを高めるロードバランサーの仕組みと種類を解説。
Kubernetes (クーバネティス/K8s)
大量のDockerコンテナを自動で管理・操作するための「コンテナオーケストレーション」ツール。
IT用語: Apache HTTP Serverとは|世界最古・最広普及のWebサーバー
PHPとの相性が良く.htaccessで柔軟な設定が可能なApache HTTP Serverの仕組みとNginxとの違いを解説。
冗長化 (Redundancy)
システムの一部が故障しても全体が停止しないように、あらかじめ予備の機材や回線を用意しておくこと。
IT用語: Keepalivedとは|VIPによる自動フェイルオーバーを実現するHA構成ツール
仮想IPアドレス(VIP)とVRRPプロトコルでLinuxサーバーのActive-Standby自動切り替えを実現するKeepalived。
IT用語: Nginxとは|高性能なWebサーバー・リバースプロキシの定番
イベント駆動型アーキテクチャで高並列処理を実現するNginxの仕組み・設定例・Apacheとの違いを解説。