【 lslocks 】コマンド――ロックされているファイルを一覧表示する:Linux基本コマンドTips(297)
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ロックされているファイルを一覧表示する「lslocks」コマンドです。
本連載は、Linuxのコマンドについて、基本書式からオプション、具体的な実行例までを紹介していきます。今回は、ロックされているファイルを一覧表示する「lslocks」コマンドです。
lslocksコマンドとは?
「lslocks」はロックされているファイルを一覧表示するコマンドです。
lslocksコマンドの書式
lslocks [オプション]
※[ ]は省略可能な引数を示しています。
lslocksの主なオプション
短いオプション | 長いオプション | 意味 |
---|---|---|
-o 項目 | --output 項目 | 表示する項目を「,」区切りで指定する |
-p プロセスID | --pid プロセスID | 表示対象のプロセスIDを指定する |
-n | --noheadings | ヘッダ行を表示しない |
-r | --raw | 固定長に整形せずに表示する |
-J | --json | JSONフォーマットで出力する(※1) |
-u | --notruncate | PATH表示を行末で切らず全て表示する |
-i | --noinaccessible | lslocksコマンドを実行したユーザーがアクセスできないファイルを除外する(※1) |
※1 CentOS 7収録のlslocks(util-linux-2.23.2-21.el7.x86_64)は未対応。
ロックされているファイルを表示する
「lslocks」で、現在システム上でロックされているファイルを一覧表示します(画面1)。表示項目は次の表の通りで、末尾にファイルのパスを表示します。
項目名 | 内容 |
---|---|
COMMAND | ファイルをロックしているプロセスのコマンド名 |
PID | ファイルをロックしているプロセスのPID |
TYPE | ロックのタイプ(FLOCKまたはPOSIX) |
SIZE | ロックされたファイルのサイズ |
MODE | ロックのアクセスモード(READまたはWRITE) |
M | ロックが強制されている状態(0:なし、1:強制) |
START | ロックの開始オフセット |
END | ロックの終端オフセット |
PATH | ロックされているファイルのパス(行末で切らずに全て表示したい場合は-uオプションを使用) |
BLOCKER | ロックをブロックしているプロセスのPID |
コマンド実行例
lslocks
(ロックされているファイルを表示する)
ファイル名を末尾まで表示する
他のユーザーがロックしているファイルは、パス名が途切れて表示されることがあります。rootユーザーで実行することで、ロックされているファイルをフルパスで確認できます(画面2)。sudoコマンド(連載第68回)などを利用してください。
rootユーザーでもファイル名が行末で切れてしまった場合は、「-u」オプションを付けて実行することで、最後まで出力できます。
この他、「-o」オプションで表示する項目を選択できます(画面3)。例えば、ファイルをロックしているプロセスの名前(COMMAND)とプロセスID(PID)とファイル名(PATH)のみでよい場合は「-o COMMAND,PID,PATH」のように指定します。
コマンド実行例
lslocks -u
(ファイル名の末尾を端末の行端で切らずに折り返しで全て表示する)
lslocks -o 項目
(表示する項目を指定する)
lslocks -o COMMAND,PID,PATH
(COMMAND、PID、PATHを表示する)
lslocks -o COMMAND,PID,PATH -u
(COMMAND、PID、PATHを表示し、ファイル名を全て表示する)
筆者紹介
西村 めぐみ(にしむら めぐみ)
PC-9801NからのDOSユーザー。PC-486DX時代にDOS版UNIX-like toolsを経てLinuxへ。1992年より生産管理のパッケージソフトウェアの開発およびサポート業務を担当。著書に『図解でわかるLinux』『らぶらぶLinuxシリーズ』『Accessではじめるデータベース超入門[改訂2版]』『macOSコマンド入門』など。2011年より、地方自治体の在宅就業支援事業にてPC基礎およびMicrosoft Office関連の教材作成およびeラーニング指導を担当。
Copyright © ITmedia, Inc. All Rights Reserved.