トップ 差分 一覧 ソース 検索 ヘルプ PDF RSS ログイン

Linux、PID,PPID,PGID,SID

[カテゴリ:Linux]

Linux、PID,PPID,PGID,SID

PID プロセスID
PPID 親プロセスID
PGID プロセスグループID(プロセスグループリーダのプロセスIDと等しい)
SID セッションID(セッションリーダのプロセスID と等しい)

ps o pid,ppid,pgid,sid,tpgid,tty,stat,command --forest -A

参考

プロセスグループ - Linuxの備忘録とか・・・(目次へ)
http://wiki.bit-hive.com/north/pg/%A5%D7%A5%ED%A5%BB%A5%B9%A5%B0%A5%EB%A1%BC%A5%D7

メモの日々(2008-03-24)
http://ogawa.s18.xrea.com/tdiary/20080324.html

プロセス階層、プロセスグループ、セッションを確認するには? | WordPress on LAMP(Linux、Apache、MySQL、PHP)でサーバー管理入門
http://wordpress.honobono-life.info/lin-base/%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E9%9A%8E%E5%B1%A4%E3%80%81%E3%83%97%E3%83%AD%E3%82%BB%E3%82%B9%E3%82%B0%E3%83%AB%E3%83%BC%E3%83%97%E3%80%81%E3%82%BB%E3%83%83%E3%82%B7%E3%83%A7%E3%83%B3%E3%82%92/

実験1

ps -fj f
(echo "normal"; sleep 10000) &
(echo "nohup";  nohup sleep 10000) &
(echo "setsid"; setsid sleep 10000) &
ps -fj f
ps -fj fx | egrep "(sleep|bash)"
jobs -l
$ ps -fj f
UID        PID  PPID  PGID   SID  C STIME TTY      STAT   TIME CMD
kizuki    6551  6549  6551 16829  0 08:43 pts/2    S      0:00 bash
kizuki    6700  6551  6700 16829  3 08:58 pts/2    R+     0:00  \_ ps -fj f
$ (echo "normal"; sleep 10000) &
[1] 6701
normal
$ (echo "nohup";  nohup sleep 10000) &
[2] 6703
nohup
$ nohup: ignoring input and appending output to `/home/kizuki/nohup.out'

$ (echo "setsid"; setsid sleep 10000) &
[3] 6705
setsid
$
$ ps -fj f
UID        PID  PPID  PGID   SID  C STIME TTY      STAT   TIME CMD
kizuki    6551  6549  6551 16829  0 08:43 pts/2    S      0:00 bash
kizuki    6701  6551  6701 16829  0 08:58 pts/2    S      0:00  \_ bash -------------(echo "normal"; sleep 10000) &
kizuki    6702  6701  6701 16829  0 08:58 pts/2    S      0:00  |   \_ sleep 10000
kizuki    6703  6551  6703 16829  0 08:58 pts/2    S      0:00  \_ bash -------------(echo "nohup";  nohup sleep 10000) &
kizuki    6704  6703  6703 16829  0 08:58 pts/2    S      0:00  |   \_ sleep 10000
kizuki    6705  6551  6705 16829  0 08:58 pts/2    S      0:00  \_ bash -------------(echo "setsid"; setsid sleep 10000) &
kizuki    6707  6551  6707 16829  3 08:59 pts/2    R+     0:00  \_ ps -fj f
$ ps -fj fx | egrep "(sleep|bash)"
kizuki    6551  6549  6551 16829  0 08:43 pts/2    S      0:00 bash
kizuki    6701  6551  6701 16829  0 08:58 pts/2    S      0:00  \_ bash -------------(echo "normal"; sleep 10000) &
kizuki    6702  6701  6701 16829  0 08:58 pts/2    S      0:00  |   \_ sleep 10000
kizuki    6703  6551  6703 16829  0 08:58 pts/2    S      0:00  \_ bash -------------(echo "nohup";  nohup sleep 10000) &
kizuki    6704  6703  6703 16829  0 08:58 pts/2    S      0:00  |   \_ sleep 10000
kizuki    6705  6551  6705 16829  0 08:58 pts/2    S      0:00  \_ bash -------------(echo "setsid"; setsid sleep 10000) &
kizuki    6706  6705  6706  6706  0 08:58 ?        Ss     0:00  |   \_ sleep 10000
kizuki    6709  6551  6708 16829  0 08:59 pts/2    S+     0:00  \_ egrep (sleep|bash)
$

$ jobs -l
[1]   6701 実行中               ( echo "normal"; sleep 10000 ) &
[2]-  6703 実行中               ( echo "nohup"; nohup sleep 10000 ) &
[3]+  6705 実行中               ( echo "setsid"; setsid sleep 10000 ) &

実験2

ps -fj f
(sleep 10000 > /dev/null) &
(sleep 10000) &
ps -fj f
jobs -l
$ ps -fj f
UID        PID  PPID  PGID   SID  C STIME TTY      STAT   TIME CMD
kizuki    6551  6549  6551 16829  0 08:43 pts/2    S      0:00 bash
kizuki    6828  6551  6828 16829  2 09:15 pts/2    R+     0:00  \_ ps -fj f
$ (sleep 10000 > /dev/null) &
[1] 6829
$ (sleep 10000) &
[2] 6830
$ ps -fj f
UID        PID  PPID  PGID   SID  C STIME TTY      STAT   TIME CMD
kizuki    6551  6549  6551 16829  0 08:43 pts/2    S      0:00 bash
kizuki    6829  6551  6829 16829  0 09:15 pts/2    S      0:00  \_ sleep 10000
kizuki    6830  6551  6830 16829  0 09:15 pts/2    S      0:00  \_ sleep 10000
kizuki    6831  6551  6831 16829  2 09:15 pts/2    R+     0:00  \_ ps -fj f
$ jobs -l
[1]-  6829 実行中               ( sleep 10000 > /dev/null ) &
[2]+  6830 実行中               ( sleep 10000 ) &
$

最終更新時間:2014年06月10日 10時23分21秒