宮崎智広 この記事の監修:宮崎智広(Linux実務・教育歴20年以上・受講者3,100名超)

このページでは ps -efでデーモンプロセスを識別して稼働状況を確認できますか? の操作方法について解説します。

【この記事でわかること】
・ps -ef でデーモンプロセスを含む全プロセスの詳細情報を一覧表示できる
・TTY が ? になっているプロセスがデーモン(端末に紐づかないプロセス)
・PPID=1 のプロセスはinit/systemdの直下で起動したデーモンプロセス
・ps -ef | grep デーモン名 で特定のデーモンの稼働状況を確認できる

「このままじゃマズい」と感じていませんか?
参考書を開く気力もない、同年代に取り残される不安——
でも安心してください。プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
図解60P/登録10秒/解除も3秒 / 詳細はこちら
コンピュータは一般的に何らかの命令を与えないと動作しませんが、 LinuxやUNIXなどの場合、システム維持の為に命令を与えなくても 特別に動作しているプロセスがあります。 これらのプロセスはデーモンと呼ばれ、ユーザからの要求が あるまで待ち続け、要求があると新たにプロセスを作成し、 処理を実行します。 ここで作成されたプロセスを子プロセスと言い、また予め一定の 日時になった時点で動作するように設定が行われていると、 予約された日時に予約された処理を行います。 これらのデーモンは基本的にユーザの設定に従って 処理が実行されますが、中にはデフォルト(標準設定)に なっているものも存在ます。 こうしたデーモンは、ユーザがコンソールやターミナルエミュレータといった 制御端末で操作して実行するものではないので、psコマンドを実行しても 制御端末は表示されませんが、オプション「-x」を付けることで これらのプロセスも表示できるようになります。 [pakira@Tiger ~]$ ps ax PID TTY STAT TIME COMMAND 1 ? Ss 0:00 init [3] 2 ? S< 0:00 [migration/0] 3 ? SN 0:00 [ksoftirqd/0] 4 ? S< 0:00 [watchdog/0] 5 ? S< 0:00 [events/0] 6 ? S< 0:00 [khelper] (省略) 1993 ? S 0:00 /usr/local/apache2/bin/rotatelogs /usr/local/apache2/logs/webst 1994 ? S 0:00 /usr/local/apache2/bin/rotatelogs /usr/local/apache2/logs/192.1 2004 ? S 0:00 /usr/local/apache2/bin/httpd -k start -DSSL 2005 ? S 0:00 /usr/local/apache2/bin/httpd -k start -DSSL 2006 ? S 0:00 /usr/local/apache2/bin/httpd -k start -DSSL 2007 ? S 0:00 /usr/local/apache2/bin/httpd -k start -DSSL 2008 ? S 0:00 /usr/local/apache2/bin/httpd -k start -DSSL 2009 ? S 0:00 postgres: writer process 2010 ? S 0:00 postgres: stats buffer process 2011 ? S 0:00 postgres: stats collector process 2013 ? S 0:00 /usr/sbin/smartd -q never 2016 tty1 Ss+ 0:00 /sbin/mingetty tty1 2017 tty2 Ss+ 0:00 /sbin/mingetty tty2 2018 tty3 Ss+ 0:00 /sbin/mingetty tty3 2019 tty4 Ss+ 0:00 /sbin/mingetty tty4 2020 tty5 Ss+ 0:00 /sbin/mingetty tty5 2021 tty6 Ss+ 0:00 /sbin/mingetty tty6 2098 ? Ss 0:00 sshd: pakira [priv] 2100 ? S 0:00 sshd: pakira@pts/0 2101 pts/0 Ss 0:00 -bash 2129 pts/0 S 0:00 su - 2130 pts/0 S+ 0:00 -bash 2173 ? Ss 0:00 sshd: pakira [priv] 2175 ? S 0:00 sshd: pakira@pts/1 2176 pts/1 Ss 0:00 -bash 2408 ? S 0:00 /usr/local/apache2/bin/httpd -k start -DSSL 8765 pts/1 R+ 0:00 ps ax TTYの箇所が「?」のプロセスは制御端末を持っていません。 ■ 表示される情報 PID:プロセスごとに自動的に割り当てられる番号 TTY:プロセスを実行している制御端末 STAT:状態   ・第1フィールド     R:実行可能     T:停止中かトレース中     D:休眠中で割り込み不可     S:休眠中     Z:ゾンビ(削除されていないが停止中)   ・第2フィールド     W:スワップアウト(常駐ページなし)   ・第3フィールド     N:正のナイス値 TIME:CPU消費時間 COMMAND:実行コマンド ■ 関連記事 psコマンドの詳細はこちら killコマンドの詳細はこちら killallコマンドの詳細はこちら すべてのプロセスを表示する デーモンプロセスも含めて表示する プロセスの状態を詳細に表示する プロセスの状態を表示する プロセスの親子関係を含めて表示する プロセスをツリー状に表示する プロセスをハングアップさせる プロセスを強制終了する プロセスをハングアップさせる プロセスツリーをグラフィカルに表示する ユーザ名を含めて実行プロセスを表示する 実行中のプロセスのみ表示する 実行中のプロセスを終了する 特定のプロセスの状態のみを表示する 特定コマンドのプロセスをすべて終了する

ps -efでデーモンプロセスを識別して稼働状況を確認できますか?

TTY=? でデーモンを判別できると、systemctl コマンドを使わなくても各サービスが正常動作しているかを素早く確認できます。
ネットの切れ端の情報をコピペするだけでなく、現場で通用する安全なLinuxサーバー構築の「型」を体系的に身につけたい方へ、『Linuxサーバー構築入門マニュアル(図解60P)』を完全無料でプレゼントしています。

「独学の時間がもったいない」「プロから直接、現場の技術を最短で学びたい」という本気の方には、2日で実務レベルのスキルが身につく【初心者向けハンズオンセミナー】も開催しています。

無料メルマガで学習を続ける

Linuxの実践スキルをメールで毎週お届け。
登録は1分、解除もいつでも可。

登録無料・いつでも解除できます

暗記不要・1時間後にはサーバーが動く

3,100名以上が実践した「型」を無料で公開中

プロのエンジニアはコマンドを暗記していません。
「現場で使える型」を効率よく使いこなしているだけです。
その「型」を図解60Pにまとめた入門マニュアルを、完全無料でプレゼントしています。

登録10秒/合わなければ解除3秒 / 詳細はこちら

Linux無料マニュアル(図解60P) 名前とメールで30秒登録
宮崎 智広

この記事を書いた人

宮崎 智広(みやざき ともひろ)

株式会社イーネットマーキュリー代表。現役のLinuxサーバー管理者として20年以上の実務経験を持ち、これまでに累計3,100名以上のエンジニアを指導してきたLinux教育のプロフェッショナル。「現場で本当に使える技術」を体系的に伝えることをモットーに、実践型のLinuxセミナーの開催や無料マニュアルの配布を通じてLinux人材の育成に取り組んでいる。

趣味は、キャンプにカメラ、トラウト釣り。好きな食べ物は、ラーメンにお酒。休肝日が作れない、酒量を減らせないのが悩み。最近、ドラマ「フライトエンジェル」を観て涙腺が崩壊しました。