nfsxxxx ファイルとは何ですか。また、どのようにして削除しますか。
に適用されます
NFS
回答
nfsxxxx ファイルとは何ですか。また、どのようにして削除しますか。
名前付け規則のよう.nfsXXXX
なファイルは、クライアントで現在開かれているファイルが削除されると、 NFSv3 クライアントによって作成されます。クライアントがファイルの名前を変更.nfsXXXX
し、他のクライアント / プロセスがファイルを使用しないようにします。名前を変更したクライアントは、クライアントプロセスによってファイルが閉じられた後にファイルを削除する必要があります。この削除は、クライアントがリブートされた場合や、削除を実行するプロセスが終了した場合には発生しないことがあります。
これらのファイルは ONTAP プロセスでは生成されず、クライアント要求に応じてのみ作成されます。
NFSv4 クライアントでは、プロトコルのステートフル性が原因でこの問題は発生しません。
ファイルを使用.nfsxxxx
した NFS クライアントとプロセスの検索には、非常に時間がかかる場合があります。ファイルを含む NFS 共有にアクセスできるすべての NFS クライアントのすべてのプロセスをチェックする必要があります。などのユーティリティlsof
を.nfsxxxx
使用して、ファイルを使用してプロセスを決定できます。.nfsXXXX
ファイルが作成されないようにするには、ファイルを開いたときにファイルを削除しないでください。.nfsxxxx
ファイルが使用されていないと判断された場合は、削除される可能性があります。削除によって新しい.nfsxxxx
ファイルが作成された場合、その NFS クライアント上のプロセスでファイルが開かれています。
.nfsxxxx
ファイルの作成と削除のデモ:
- NFS クライアントから、マウントされた NFS 共有にファイルを作成し、 tail コマンドで開きます。プロセスを中断
ctrl-z
するか、新しい端末を開いて残りのデモを完了します。
shell# echo test > foo
shell# tail -f foo
test
^Z
[1]+ Stopped tail -f foo
foo
ファイル.nfsxxxx
を削除して、 NFS クライアントがファイルを作成するようにします。
shell# rm foo
shell# ls -A
.nfs5ACF
- 以降
rm
のコマンドでは、 NFS クライアントがファイルの名前を再度変更するだけであることを確認してください。
shell# rm .nfs5ACF
shell# ls -A
.nfs6ACF
- LSO または Fuser を使用してファイルを開いているプロセスを探します。
shell# lsof ./.nfs6ACF
COMMAND PID USER FD TYPE DEVICE SIZE NODE NAME
tail 25725 root 3r REG 8,1 27603 6647 .nfs6ACF
shell# fuser .nfs6ACF
.nfs6ACF 25725o - 最後
.nfsxxx
に、ファイルを開いたままプロセスを終了し、ファイルが削除されたことを確認します。shell# kill 25725
shell# ls -al
total x
drwxr-sr-x 2 root src 400 Mar 29 15:39 .
drwxrwsr-x 36 root src 3336 Mar 21 09:37 .
追加情報
AdditionalInformation_Text