【Linux】プロセス

プロセスとは

Linuxでコマンドを実行すると、Linuxカーネルはディスクから実行ファイルを読み出し、メモリに格納する。
そしてそのメモリの内容にしたがってCPUがプログラムを実行する。
メモリ上で実行状態にあるプログラムを「プロセス」という。

プロセスの表示

現在動作しているプロセスを表示する。

[mako@localhost /]$ ps
  PID TTY          TIME CMD
 2595 pts/0    00:00:00 bash
 3995 pts/0    00:00:00 man
 4009 pts/0    00:00:00 less
 4260 pts/0    00:00:00 ps

PID:プロセスID

PID プロセスID
TTY ターミナル
CMD 実行されているコマンド

現在のユーザが実行しているすべてのプロセスを表示

「x」オプションを使用すると下記のようなプロセスも含めて表示できる。

  • 別のターミナルで使用しているコマンド
  • 「デーモン」というターミナルに接続していないプロセス
[mako@localhost /]$ ps xf
  PID TTY      STAT   TIME COMMAND
 2594 ?        S      0:00 sshd: mako@pts/0
 2595 pts/0    Ss     0:00  \_ -bash
 3995 pts/0    T      0:00      \_ man ls
 4009 pts/0    T      0:00      |   \_ less -s
 4326 pts/0    R+     0:00      \_ ps xf

2595のsshdプロセスから「bash」が起動
→「man ls」が実行→「man」コマンドは内部で「less」コマンドを起動→「less」の子プロセスを連れている
いうことが分かる。

すべてのプロセスを表示

現在ログイン中のユーザが実行しているプロセス以外にもLinuxのシステムを管理するために動いているプロセスがある。
自分のプロセスだけではなく、動いているすべてのプロセスを表示させる。

[mako@localhost /]$ ps ax
  PID TTY      STAT   TIME COMMAND
    1 ?        Ss     0:01 /usr/lib/systemd/systemd --switched-root --system --d
    2 ?        S      0:00 [kthreadd]
    3 ?        S      0:00 [ksoftirqd/0]
    6 ?        S      0:00 [kworker/u2:0]
    7 ?        S      0:00 [migration/0]
    8 ?        S      0:00 [rcu_bh]
    9 ?        R      0:00 [rcu_sched]
   10 ?        S      0:00 [watchdog/0]
   12 ?        S<     0:00 [khelper]
   13 ?        S      0:00 [kdevtmpfs]
   14 ?        S<     0:00 [netns]
   15 ?        S      0:00 [khungtaskd]
   16 ?        S<     0:00 [writeback]
   17 ?        S<     0:00 [kintegrityd]
   18 ?        S<     0:00 [bioset]
   19 ?        S<     0:00 [kblockd]
   20 ?        S<     0:00 [md]
   26 ?        S      0:00 [kswapd0]
   27 ?        SN     0:00 [ksmd]
   28 ?        SN     0:00 [khugepaged]
   29 ?        S      0:00 [fsnotify_mark]
   30 ?        S<     0:00 [crypto]
   38 ?        S<     0:00 [kthrotld]
   40 ?        S<     0:00 [kmpath_rdacd]
   41 ?        S<     0:00 [kpsmoused]
   42 ?        S<     0:00 [ipv6_addrconf]
   62 ?        S<     0:00 [deferwq]
   94 ?        S      0:00 [kauditd]
  268 ?        S<     0:00 [ata_sff]
  283 ?        S      0:00 [scsi_eh_0]
  285 ?        S<     0:00 [scsi_tmf_0]
  286 ?        S      0:00 [scsi_eh_1]
  287 ?        S<     0:00 [scsi_tmf_1]
  288 ?        S      0:00 [kworker/u2:2]
  289 ?        S      0:00 [scsi_eh_2]
  290 ?        S<     0:00 [scsi_tmf_2]
  360 ?        S<     0:00 [kdmflush]
  361 ?        S<     0:00 [bioset]
  370 ?        S<     0:00 [kdmflush]
  371 ?        S<     0:00 [bioset]
  386 ?        S<     0:00 [xfsalloc]
  387 ?        S<     0:00 [xfs_mru_cache]
  388 ?        S<     0:00 [xfs-buf/dm-0]
  389 ?        S<     0:00 [xfs-data/dm-0]
  390 ?        S<     0:00 [xfs-conv/dm-0]
  391 ?        S<     0:00 [xfs-cil/dm-0]
  392 ?        S<     0:00 [xfs-reclaim/dm-]
  393 ?        S<     0:00 [xfs-log/dm-0]
  394 ?        S<     0:00 [xfs-eofblocks/d]
  395 ?        S      0:01 [xfsaild/dm-0]
  468 ?        Ss     0:00 /usr/lib/systemd/systemd-journald
  492 ?        S<     0:00 [rpciod]
  495 ?        Ss     0:00 /usr/sbin/lvmetad -f
  505 ?        Ss     0:00 /usr/lib/systemd/systemd-udevd
  577 ?        S<     0:00 [xfs-buf/sda1]
  578 ?        S<     0:00 [xfs-data/sda1]
  579 ?        S<     0:00 [xfs-conv/sda1]
  580 ?        S<     0:00 [xfs-cil/sda1]
  581 ?        S<     0:00 [xfs-reclaim/sda]
  582 ?        S<     0:00 [xfs-log/sda1]
  583 ?        S<     0:00 [xfs-eofblocks/s]
  584 ?        S      0:00 [xfsaild/sda1]
  603 ?        S<sl   0:00 /sbin/auditd -n
  614 ?        S<sl   0:00 /sbin/audispd
  618 ?        S<     0:00 /usr/sbin/sedispatch
  632 ?        Ss     0:00 /usr/lib/systemd/systemd-logind
  633 ?        SNsl   0:00 /usr/libexec/rtkit-daemon
  634 ?        Ss     0:00 /usr/bin/lsmd -d
  635 ?        SNs    0:00 /usr/sbin/alsactl -s -n 19 -c -E ALSA_CONFIG_PATH=/et
  636 ?        Ssl    0:00 /usr/sbin/ModemManager
  637 ?        Ss     0:00 /bin/dbus-daemon --system --address=systemd: --nofork
  641 ?        S      0:00 /usr/sbin/chronyd
  649 ?        Ssl    0:00 /usr/sbin/gssproxy -D
  657 ?        Ssl    0:00 /usr/lib/polkit-1/polkitd --no-debug
  658 ?        Rs     0:00 /sbin/rngd -f
  659 ?        Ss     0:00 /usr/sbin/smartd -n -q never
  661 ?        Ssl    0:00 /usr/libexec/accounts-daemon
  663 ?        Ss     0:00 /usr/sbin/abrtd -d -s
  665 ?        Ss     0:00 /usr/bin/abrt-watch-log -F Backtrace /var/log/Xorg.0.
  666 ?        Ss     0:00 /usr/bin/abrt-watch-log -F BUG: WARNING: at WARNING:
  667 ?        Ss     0:00 avahi-daemon: running [linux.local]
  689 ?        S      0:00 /bin/bash /usr/sbin/ksmtuned
  692 ?        S      0:00 avahi-daemon: chroot helper
  699 ?        Ssl    0:00 /usr/bin/python -Es /usr/sbin/firewalld --nofork --no
  709 ?        Ssl    0:00 /usr/sbin/NetworkManager --no-daemon
  814 ?        S      0:00 /sbin/dhclient -d -q -sf /usr/libexec/nm-dhcp-helper
 1126 ?        Ssl    0:01 /usr/sbin/rsyslogd -n
 1127 ?        Ssl    0:00 /usr/bin/python -Es /usr/sbin/tuned -l -P
 1139 ?        Ss     0:00 /usr/sbin/sshd
 1161 ?        S<     0:00 [cifsiod]
 1174 ?        Ss     0:00 /usr/sbin/nmbd
 1220 ?        Ssl    0:00 /usr/sbin/libvirtd
 1243 ?        Ss     0:00 /usr/sbin/atd -f
 1246 ?        Ss     0:00 /usr/sbin/crond -n
 1251 tty1     Ss+    0:00 /sbin/agetty --noclear tty1 linux
 1731 ?        Ss     0:00 /usr/sbin/smbd
 1848 ?        S      0:00 /usr/sbin/smbd
 1849 ?        S      0:00 /usr/sbin/smbd
 2249 ?        Ss     0:00 /usr/libexec/postfix/master -w
 2287 ?        S      0:00 qmgr -l -t unix -u
 2322 ?        S      0:00 /usr/sbin/smbd
 2330 ?        Ss     0:00 /usr/sbin/cupsd -f
 2419 ?        S      0:00 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/de
 2420 ?        S      0:00 /sbin/dnsmasq --conf-file=/var/lib/libvirt/dnsmasq/de
 2592 ?        Ss     0:00 sshd: mako [priv]
 2594 ?        S      0:00 sshd: mako@pts/0
 2595 pts/0    Ss     0:00 -bash
 3012 ?        R      0:01 [kworker/0:2]
 3657 ?        S      0:00 pickup -l -t unix -u
 3995 pts/0    T      0:00 man ls
 4009 pts/0    T      0:00 less -s
 4024 ?        Ssl    0:00 /usr/libexec/packagekitd
 4220 ?        S<     0:00 [kworker/0:2H]
 4284 ?        S      0:00 [kworker/0:1]
 4301 ?        S<     0:00 [kworker/0:0H]
 4327 ?        S      0:00 [kworker/0:0]
 4352 ?        S<     0:00 [kworker/0:1H]
 4368 ?        S      0:00 sleep 60
 4377 pts/0    R+     0:00 ps ax

psコマンドのオプション

x psコマンドを実行したユーザのプロセスを表示
ux psコマンドを実行したユーザのプロセスを、詳細情報も合わせて表示
ax すべてのユーザのプロセスを表示
aux すべてのユーザのプロセスを、詳細情報も合わせて表示

Linux の一覧