スポンサーリンク

FSTAT(1) FreeBSD 一般コマンドマニュアル FSTAT(1)

名称

fstat − アクティブファイルを識別する

書式

fstat [−fmnv] [−M core] [−N system] [−p pid] [−u user] [file ...]

解説

fstat ユーティリティは、現在オープンされているファイルについての情報を表 示します。オープンされているファイルとは、プロセスによって明示的にオープ ンされているもの、ワーキングディレクトリ、ルートディレクトリ、jail ルート ディレクトリ、アクティブな実行可能テキストや、カーネルのトレースファイル などを指します。引数が何も与えられなければ、 fstat はシステム中でオープン されているすべてのファイルについての情報を表示します。

以下のオプションが利用可能です:

       −f

表示する情報を、 filename で指定されたファイルと同じファイルシス テムのものに制限します。引数が指定されていない場合は、カレント ディレクトリを含むファイルシステムのものに制限されます。たとえ ば、 /usr/src 以下のディレクトリでオープンされているすべてのファ イルを見つけるには、 ‘‘fstat -f /usr/src’’ としてください。

−M core
名前に関するリストから値を取り出す際、デフォルトの /dev/kmem のか わりに core を使います。

−N
指定された system から名前リストを取り出します。デフォルトは、シ ステムが起動してきたカーネルイメージから取り出します。

−m
メモリマップされたファイルをリストに含めます。更なる処理が必要で あるため、通常はこれらは除外されています。

−n
数値フォーマットで表示を行います。マウントポイントの名前を表示す るかわりに、そのファイルシステムにおけるデバイス番号 (メジャー、 マイナー) を表示します。特殊ファイルに関しては、 /dev の下のファ イル名は参照されず、特殊デバイスのデバイス番号が表示されます。ま た、ファイルの属性も記号ではなく、8 進数で表示されます。

−p pid
指定されたプロセス ID のプロセスによってオープンされているすべて のファイルの情報を表示します。

−u user
指定されたユーザによってオープンされているすべてのファイルの情報 を表示します。

−v
詳細報告モード。システムのデータ構造体を見つけるのに失敗した場合 などにエラーメッセージを表示します (デフォルトでは無視します)。こ れらの構造体の多くは、動的に生成されたり消去されたりするもので、 fstat を実行中に消えてしまう可能性があります。これは、 fstat 実行 中にも、システムの残りの部分が動いているためで、ごく普通のことで すし、避けることはできません。

file ...
表示する情報を、指定されたファイル filename に限定します。

以下のような項目が表示されます。

USER
プロセスの所有者のユーザ名 (実効ユーザ ID のものが表示されます)

CMD
プロセスのコマンド名

PID
プロセスID

FD
プロセスごとのオープンしているファイルのファイル番号、もしくは以下 の特別な名前のどれかです。

jail

- jail ルートディレクトリ
mmap

- メモリマップされたファイル
root

- ルートの inode
text

- 実行可能テキストの inode
tr

- カーネルトレースファイル
wd

- 現在のワーキングディレクトリ

ファイル番号のあとにアスタリスク記号 ‘‘*’’ がある場合は、ファイル は inode ではなく、ソケットや FIFO であったり、そのファイルにエ ラーがあるのかもしれません。この場合、残りの行は後ろのヘッダと一致 しません。 -- 行のフォーマットは、 ソケットのところで説明します。

       MOUNT

−n オプションが指定されていなければ、このヘッダが現れます。マウン トされているパス名は、ファイルが存在しているファイルシステムです。

DEV
−n
が指定されると、このヘッダが現れます。ファイルが存在しているデ バイスのメジャー番号とマイナー番号です。

INUM
ファイルの inode 番号。

MODE
ファイルのモード。 −n フラグが指定されない場合、モードは記号フォー マット (strmode(3) を参照) を使用して表示されます。そうでなけれ ば、モードは 8 進数として表示されます。

SZ|DV
ファイルがキャラクタデバイスファイルやブロックデバイスファイルでな ければ、そのファイルのバイト数を表示します。デバイスファイルであっ て −n が指定されていなければ、その特殊ファイルの /dev における名前 を表示します。 /dev になかったり、 −n が指定されていたりすると、ス ペシャルデバイスが参照するメジャー番号、マイナー番号を表示します。

R/W
このフィールドには、ファイルのアクセス属性が表示されます。 ‘‘r’’ の場合は、ファイルが読み込みのためにオープンされていることを意味し ます。 ‘‘w’’ の場合は、ファイルが書き込みのためにオープンされてい ることを意味します。このフィールドは、ファイルシステムを読み込み専 用状態に移行する際に、それを妨げているプロセスを見つける場合に役に 立ちます。

NAME
filename
が指定されていて、 −f が指定されていなければ、このフィー ルドが表示され、指定されたファイルに関連する名前が表示されます。普 通、この名前は決まったものではありません。というのも、オープンされ たファイルから、ディレクトリ中のエントリへの逆のマッピングは存在し ないからです。また、異なるディレクトリエントリが同じファイルを参照 していることもある ( ln(1) を参照) ため、表示されている名前は、プ ロセスがオープンした元のファイルの実際の名前と異なっているかもしれ ません。

ソケット

オープンしているファイルのフォーマットは、プロトコルのドメインに依存しま す。最初のフィールドはドメイン名で、2 番目のフィールドはソケットの型 (stream や dgramなど)、3 番目はソケットフラグのフィールド (16 進数) で す。残りのフィールドはプロトコルに依存します。tcp の場合は、 tcpcb のアド レスですし、udp の場合は inpcb (ソケット pcb) のアドレスです。 UNIX ドメ インソケットの場合はソケット pcb のアドレスと (もし接続すれば) 接続先 pcb のアドレスです。それ以外の場合はプロトコル番号とソケット自身のアドレスが 表示されます。 netstat(1) と重複しない範囲で、詳しく分析するのに十分な情 報を表示しようとします。

たとえば、上で述べたアドレスは ‘‘netstat -A’’ コマンドで表示される tcp, udp, UNIX ドメインのそれぞれのアドレスです。ただし、パイプはソケットを用 いて実装されているので、パイプは接続先の UNIX ドメインストリームソケット として現れることに注意してください。単方向 UNIX ドメインソケットは、向き を持った矢印 (‘‘<-’’ か ‘‘->’’) として表示され、双方向 (全二重) UNIX ドメ インは二重矢印 (‘‘<->’’) として表示されます。

バグ

fstat はシステムのスナップショットをとるので、表示される情報はほんのわず かな間しか正しくありません。

関連項目

netstat(1), nfsstat(1), ps(1), sockstat(1), systat(1), tcp(4), unix(4), iostat(8), pstat(8), vmstat(8)

歴史

fstat コマンドは 4.3BSD−Tahoe から登場しました。

FreeBSD 10.0 March 27, 2002 FreeBSD 10.0

スポンサーリンク