検索コマンドは、フォルダ全体ではなく最近10分だけをチェックします。

検索コマンドは、フォルダ全体ではなく最近10分だけをチェックします。

私はビデオ監視をファイルサーバー(Debian)に記録するnvrシステムを持っています。 NVRシステムが正しく記録されていることを確認し、記録が停止したときに通知を送信するNagiosプラグインを作成しました。問題は、私がfindコマンドを使用していることです。

find /srv/unifi-video/videos/ -name '*.ts' -mmin -10 | wc -l

Nagiosは400 Gbを超えるファイルをスキャンしているため、タイムアウトし続け、「NRPEソケットタイムアウト」メッセージを送信します。

findコマンドを使用すると、フォルダ全体ではなく過去10分以内に生成されたファイルのみを検索できますか?

ベストアンサー1

コードがすでに正しいように見え、-mmin -10結果が「10分以内に修正されました」に絞り込まれました。ビデオ/に他の項目(サブディレクトリなど)も含まれている場合は、ディレクトリを無視して次を追加してファイルに集中するだけで時間を節約できます-type f

find /srv/unifi-video/videos/ -type f -name '*.ts' -mmin -10 | wc -l

nvrシステムがファイルを保存する方法をより適切に制御できる場合は、専用ディレクトリ(video / tsなど)に* .tsファイルのみを保存し、findはtsファイルのみを処理し、他のファイルは処理しないようにします。

他のアイデア

有効にする必要のあるロギング機能があるかどうかを確認するには、nvrシステムに関するドキュメントを見てください。ロギングに言及する理由は、findファイルシステムレコードを確認するスクリプトと比較してログを読み取るスクリプトを作成する場合は、ステータス情報を取得する方が速いためです。

おすすめ記事