Linuxコマンド辞典 fuserコマンド(プロセス管理)
ファイルもしくはソケットを使用しているプロセスを特定/シグナルを送信する「fuser」コマンドの概要と使い方を記載しています。
RHEL Fedora CentOS Vine Deblan Ubuntu Plamo
参考サイト:Man page of INSTALL
目次
概要・使用方法
書式
$ fuser [オプション] ファイル名/ソケット・・・
特殊ファイルやファイルを利用しているプロセスについて、プロセスIDやユーザ情報を表示します。また特定したプロセスにシグナルを送ることができます。ファイルシステムをアンマウントしたいが誰かが使用しているので特定したいなどの時に使用できます。
オプション
-k –kill | 指定したファイルにアクセスしているプロセスにシグナルに送る(デフォルトはSIGKILL) |
-i –interactive | プロセスを停止する前に対話的に問い合わせる |
-c、-m –mount | マウントされたファイルシステムがデバイスを指定する。そのファイルシステムにアクセスしているプロセスを表示する |
-n file/udp/tcp –namespace | 別の名前空間を指定する |
-シグナル | プロセスをkillするときに指定したシグナルを送る(デフォルトはSIGKILL) |
-u –user | プロセスIDにオーナーユーザを合わせて表示する |
-v –verbose | 冗長表示を行う。アクセス情報も表示する |
-4 –ipv4 | IPv4ソケットのみを探す |
-6 –ipv6 | IPv6ソケットのみを探す |
-l –list-signals | 利用できるシグナルを一覧表示する |
アクセス情報の意味
記号 | 説明 |
---|---|
c | 作業ディレクトリ |
e | 実行中ファイル |
f | オープンしているファイル |
F | 書き込み用にオープンしているファイル |
r | ルートディレクトリ |
m | mmapされたファイル、もしくは共有ライブラリ |
利用できるシグナルすべてを一覧で表示する
$ fuser -l
実行結果
[suna@localhost test]$ fuser -l
HUP INT QUIT ILL TRAP ABRT BUS FPE KILL USR1 SEGV USR2 PIPE ALRM TERM STKFLT
CHLD CONT STOP TSTP TTIN TTOU URG XCPU XFSZ VTALRM PROF WINCH POLL PWR SYS
作業ディレクトリを指定して別ユーザの作業を表示
$ fuser -v `pwd`
実行結果
[root@localhost test]# fuser -v `pwd`
USER PID ACCESS COMMAND
/home/suna/test: suna 830522 ..c.. bash
root 831993 ..c.. bash
[root@localhost test]#
コマンドを実行ユーザを確認する
$ fuser -v コマンド
実行結果
[root@localhost test]# fuser -v /bin/bash
USER PID ACCESS COMMAND
/usr/bin/bash: root 1089 ...e. ksmtuned
suna 830522 ...e. bash
suna 830619 ...e. bash
root 831993 ...e. bash
[root@localhost test]#
特定のファイルを利用するプロセスとユーザ名を一緒に表示する
$ fuser -vu ファイル名
実行結果
[root@localhost test]# fuser -vu /var/log/httpd/ssl_access_log
USER PID ACCESS COMMAND
/var/log/httpd/ssl_access_log:
root 778907 F.... (root)httpd
apache 778909 F.... (apache)httpd
apache 778910 F.... (apache)httpd
apache 778911 F.... (apache)httpd
apache 778912 F.... (apache)httpd
apache 779854 F.... (apache)httpd
[root@localhost test]#