Linuxは私がディレクトリに入るまでファイルを見ることができません。

Linuxは私がディレクトリに入るまでファイルを見ることができません。

非常に奇妙な問題があります。実行中のPHPスクリプトがあり、実行するサブプロセスを送信し、OUTFILE.endファイルがあることを確認して、完了するまで待ちます。問題は、ファイルが表示されますが、PHPスクリプトがファイルを表示できないことです。コマンドラインを使用して確認すると、Linuxはこれを見ることができないため、この問題をLinuxの問題として追跡しました。

[katelyn@katelyn data]$ ls ./files/OUTFILE.end
ls: cannot access ./files/OUTFILE.end: No such file or directory

サブタスクの実行が停止したため、OUTFILE.endファイルがそこにあることを知っています。ls2番目にディレクトリを入力すると、ファイルが表示されます。

[katelyn@katelyn data]$ ls -l ./files/
total 4
-rw-rw-r--. 1 katelyn katelyn  0 Sep 10 16:30 OUTFILE.end
-rw-rw-r--. 1 katelyn katelyn 19 Sep 10 16:30 OUTFILE.txt
[katelyn@katelyn data]$ ls ./files/OUTFILE.end
./files/OUTFILE.end

私はCentOS 6.5を実行していますが、./files/ディレクトリは実際にLustre分散ファイルシステム内の他のフォルダへのシンボリックリンクです。

ベストアンサー1

これは属性キャッシュに関連しています。 NFS クライアントは確認するたびにパケットを送信したくありません。短時間でキャッシュ内の個々のファイルに関する質問に答えることができるとします。しかし、あなたの場合、キャッシュはもはや有効ではありません。

キャッシュはディレクトリルックアップに応答しません。代わりに、実際にネットワーク経由でREADDIRまたはREADDIR +を送信してキャッシュを更新します。

actimeoキャッシュが有効なままの時間を短縮するには、マウントのオプションをオフにしてください。

おすすめ記事