24.4.7. gamin によるファイルおよびディレクトリーの監視


Red Hat Enterprise Linux 6.8 以降、GLib システムライブラリーはファイルとディレクトリーの監視、NFS ファイルシステムでの変更の検出に gamin を使用します。デフォルトでは、gamininotify ではなく NFS ファイルシステムのポーリングを使用します。他のファイルシステムの変更は、GLib に直接実装される inotify monitor により監視されます。
File Alteration Monitor(FAM)システムのサブセットとして inotify Linux カーネルサブシステムで FAM 仕様を再実装します。これは GNOME プロジェクトですが、GNOME 依存関係はありません。glib2 パッケージと gamin パッケージの両方はデフォルトでインストールされます。
デフォルトでは、gamin は設定なしで機能し、Linux では /mnt/* または / media/ * に一致するすべてのパスのポーリングの使用に戻ります。ユーザーは、以下の設定をオーバーライドするか、または拡張するには、以下のいずれかの設定ファイルの内容を変更します。
  • /etc/gamin/gaminrc
  • $HOME/.gaminrc
  • /etc/gamin/mandatory_gaminrc
設定ファイルは以下のコマンドのみを受け入れます。

設定ファイルで使用できるコマンド

notify
カーネルモニタリングを一致するパスに使用する必要があることを示すには、以下を行います。
poll
一致するパスにポーリングを使用することを表すには、以下を行います。
fsset
ファイルシステムタイプで使用される通知メソッドを制御する。
このような設定ファイルの例は、以下を参照してください。
# configuration for gamin
# Can be used to override the default behaviour.
# notify filepath(s) : indicate to use kernel notification
# poll filepath(s)   : indicate to use polling instead
# fsset fsname method poll_limit : indicate what method of notification for the file system
#                                  kernel - use the kernel for notification
#                                  poll - use polling for notification
#                                  none - don't use any notification
#                                  the poll_limit is the number of seconds
#                                  that must pass before a resource is polled again.
#                                  It is optional, and if it is not present the previous
#                                  value will be used or the default.
notify /mnt/local* /mnt/pictures* # use kernel notification on these paths
poll /temp/*                      # use poll notification on these paths
fsset nfs poll 10                 # use polling on nfs mounts and poll once every 10 seconds
この順序で、3 つの設定ファイルが読み込まれます。
  1. /etc/gamin/gaminrc
  2. ~/.gaminrc
  3. /etc/gamin/mandatory_gaminrc
/etc/gamin/mandatory_gaminrc 設定ファイルを使用すると、システム管理者は、ユーザーが設定した潜在的な危険性のある設定をオーバーライドできます。ポーリングまたはカーネル通知のいずれを使用すべきかを推測すべきパスを確認すると、gamin は最初に、設定ファイル内のユーザーが指定したルールの順番をチェックしてから、事前定義済みのルールをチェックします。これにより、例にある /mnt/local* の最初の宣言は、/ mnt/* のデフォルトの宣言を上書きします
gamin が特定のパスでポーリング通知を使用するように設定されていない場合は、パスが存在するファイルシステムに基づいて決定されます。
Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.