プロセスID(PID)から使用しているファイルディスクリプタの情報を取得する方法 †
プロセスが使用しているファイルディスクリプタ情報をプロセスID(PID)から調べる方法を以下に記します。
使用したOSはCentOSになります。
関連記事 †
ファイルディスクリプタ一覧を取得する操作手順 †
以下の操作手順によりファイルディスクリプタ情報を取得します。
今回対象としたプロセスはfirefoxとします。
- firefoxを起動します。
- psコマンドとgrepコマンドを使用してfirefoxのプロセスID(PID)を取得します。
$ ps ux | grep firefox | grep -v grep
505 4279 4.8 5.7 1118760 230320 ? Sl 09:46 7:15 /usr/lib64/firefox/firefox
<snip>
- 上記コマンドによりfirefoxのプロセスIDは4279であることが確認できます。
- 以下のコマンドで使用しているファイルディスクリプタ一覧を表示します。
ls -al /proc/プロセスID/fd
上記で取得したfirefoxのPIDを使用して実行した出力結果です。
一覧が表示されます。
$ ls -al /proc/4279/fd
合計 0
dr-x------ 2 sakura sakura 0 10月 3 12:18 .
dr-xr-xr-x 6 sakura sakura 0 10月 3 09:46 ..
lr-x------ 1 sakura sakura 64 10月 3 12:18 0 -> /dev/null
l-wx------ 1 sakura sakura 64 10月 3 12:18 1 -> pipe:[12319]
l-wx------ 1 sakura sakura 64 10月 3 12:18 10 -> pipe:[14701]
lrwx------ 1 sakura sakura 64 10月 3 12:18 11 -> socket:[14702]
lrwx------ 1 sakura sakura 64 10月 3 12:18 12 -> socket:[14705]
lrwx------ 1 sakura sakura 64 10月 3 12:18 13 -> socket:[14707]
lrwx------ 1 sakura sakura 64 10月 3 12:18 14 -> socket:[14710]
l-wx------ 1 sakura sakura 64 10月 3 12:18 15 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/.parentlock
lr-x------ 1 sakura sakura 64 10月 3 12:18 16 -> eventpoll:[14714]
lrwx------ 1 sakura sakura 64 10月 3 12:18 17 -> socket:[14715]
lrwx------ 1 sakura sakura 64 10月 3 12:18 18 -> socket:[14716]
lr-x------ 1 sakura sakura 64 10月 3 12:18 19 -> pipe:[14717]
l-wx------ 1 sakura sakura 64 10月 3 12:18 2 -> pipe:[12319]
l-wx------ 1 sakura sakura 64 10月 3 12:18 20 -> pipe:[14717]
lr-x------ 1 sakura sakura 64 10月 3 12:18 21 -> pipe:[14726]
l-wx------ 1 sakura sakura 64 10月 3 12:18 22 -> pipe:[14726]
lr-x------ 1 sakura sakura 64 10月 3 12:18 23 -> pipe:[14754]
l-wx------ 1 sakura sakura 64 10月 3 12:18 24 -> pipe:[14754]
lr-x------ 1 sakura sakura 64 10月 3 12:18 25 -> /dev/urandom
lrwx------ 1 sakura sakura 64 10月 3 12:18 26 -> socket:[14763]
lrwx------ 1 sakura sakura 64 10月 3 12:18 27 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/cookies.sqlite
lrwx------ 1 sakura sakura 64 10月 3 12:18 28 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/cookies.sqlite-wal
lr-x------ 1 sakura sakura 64 10月 3 12:18 29 -> /home/sakura/.mozilla/firefox/wvhlfspp.default
lrwx------ 1 sakura sakura 64 10月 3 12:18 3 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/urlclassifier3.sqlite
lrwx------ 1 sakura sakura 64 10月 3 12:18 30 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/cookies.sqlite-shm
lrwx------ 1 sakura sakura 64 10月 3 12:18 31 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/cookies.sqlite
<snip>
lrwx------ 1 sakura sakura 64 10月 3 12:18 65 -> socket:[16028]
lr-x------ 1 sakura sakura 64 10月 3 12:18 7 -> pipe:[14700]
lrwx------ 1 sakura sakura 64 10月 3 12:18 72 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/webappsstore.sqlite
lrwx------ 1 sakura sakura 64 10月 3 12:18 73 -> /home/sakura/.mozilla/firefox/wvhlfspp.default/chromeappsstore.sqlite
lr-x------ 1 sakura sakura 64 10月 3 12:18 74 -> inotify
l-wx------ 1 sakura sakura 64 10月 3 12:18 8 -> pipe:[14700]
lrwx------ 1 sakura sakura 64 10月 3 12:18 83 -> socket:[30015]
lrwx------ 1 sakura sakura 64 10月 3 12:18 85 -> socket:[16016]
lr-x------ 1 sakura sakura 64 10月 3 12:18 9 -> pipe:[14701]