【Linux】lsofコマンドで開いているファイル・ソケット・パイプの一覧を取得する方法
このガイドでは、Linuxのlsofコマンドを使って、開いているファイル、ソケット、パイプの一覧を取得する方法を解説します。
lsofコマンドとは
lsofは非常に強力なコマンドラインツールで、ほぼすべてのLinuxディストリビューションに標準で搭載されています。システム上で開いているファイル、ソケット、パイプの一覧を簡単に確認できるのが最大の特徴です。
基本的な使い方
最もシンプルな使い方は、コマンド名を入力してEnterキーを押すだけです。# lsofと実行すると、かなりの長さの一覧が出力されます。出力が長くなりがちなため、lessコマンドと組み合わせて# lsof | lessのように実行するのがおすすめです。

クリックで拡大
lsofをlessと組み合わせれば、出力を上下に自由にスクロールしながら読むことができ、可読性が大きく向上します。もちろん、このコマンドの用途はすべての開いているファイルを一覧表示することだけにとどまりません。トラブルシューティングの現場では、まさに命綱となる存在です。
特定のプロセスが開いたファイルを調べる
例えば、特定のプロセスが開いているファイルの一覧を取得できます。まず# ps -efコマンドでプロセスID(PID)を確認し、続いて# lsof -p 30646を実行します。-pはプロセスIDを指定するオプションで、30646はあくまで例ですので、実際の環境のPIDに置き換えてください。

クリックで拡大
特定のディレクトリ配下のファイルを調べる
システム上の特定の場所から開かれているファイルやソケットなどを検索することも可能です。例えば/mntディレクトリに関連するファイルをすべて確認したい場合は、# lsof /mntを実行します。
特定のコマンドが開いたファイルを調べる
また、特定のコマンドによって開かれたプロセスやファイルをすべて見つけたい場合は、# lsof -c mysqlのようなコマンドを実行します。-cは「command」を意味するオプションで、mysqlの部分を調査対象のコマンド名に置き換えて使用します。

クリックで拡大
ネットワーク接続を調べる
Linuxでは、ポート、ソケット、デバイスもすべてファイルとして扱われます。そのため、特定のプロトコルやポートを使用している接続を検索することもできます。例えば、自分のマシンに対する現在稼働中のSSH接続をすべて確認するには# lsof -i :22を実行します。また、コンピュータ上のすべてのTCP接続を一覧表示したい場合は、# lsof -i TCPと実行してください。

クリックで拡大
まとめ
lsofは、ここで紹介した以外にも数多くの便利なオプションを備えた賢いコマンドです。manページを参照すれば、さらなる活用方法を発見できるでしょう。日常的なシステム管理やトラブルシューティングにぜひ役立ててください。
-
SWFファイルを開いて再生する方法【Windows・Mac対応の手順を解説】
SWF(読み方は「スウィフ」)は、Small Web Format(スモール・ウェブ・フォーマット)の略称で、Adobeが開発したファイル形式です。ベクターグラフィックス、マルチメディア、ActionScriptを扱うために設計されており、インタラクティブなテキストやグラフィックスの両方を含むことができます。これらのアニメーションファイルは、主にWebブラウザで遊ぶオンラインゲームなどに利用されてきました。SWFファイルは、Adobe製品のほか、SWFTools、Ming、MTASCなどのサードパーティ製ソフトウェアでも作成できます。ただし、従来のメディアプレーヤーではほとんどサポートされてお
-
Linuxのlsコマンド徹底解説!ファイルとディレクトリを一覧表示する方法
Linuxのlsコマンドは、多くのユーザーが最初に使うことになる基本コマンドの一つです。この記事では、lsコマンドの基本的な使い方と、実務で頻繁に利用されるオプションについてわかりやすく解説します。 筆者が普段よく使うオプションの組み合わせは以下のとおりです。 ls -Zaltrh それでは、各オプションの意味をひとつずつ掘り下げながら、この組み合わせがなぜ便利なのかを説明していきます。 lsコマンドの基本構文 # ls [OPTION] [FILE] OPTIONS: [-a] 「.」または「..」で始まる隠しエントリを無視しない [-h] -lと併用した場合、サイズを人間が読みやすい形式で