vfs_scannedonly — ウィルス検査済みのファイルだけを エンドユーザー表示・アクセスできるようにさせる。
vfs objects = scannedonly
このVFSモジュールは samba(8)システムの一部である。
vfs_scannedonly
VFS モジュールはエンドユーザーに対して
ウィルスチェックを行うファイルのみを、表示、アクセス可能にさせる。もしも
ウィルスチェックをしないファイルが見つかった場合、ウィルススキャンデーモンは
その旨通知する。ウィルススキャンデーモンはSambaの一部ではない。
Scanreadonlyは2つの部分からなっている。それはSamba vfsモジュールと
(1つまたはそれ以上の)デーモンである。デーモンはファイルをスキャンする。もしも
特定のファイルが正常であれば、プレフィックス.scanned:
というプレフィックスを持つファイルが生成される。Sambaモジュールは、単に
.scanned:
というファイルが存在するかと、関連する
ファイルよりも新しいかを調べる。もしもその場合は、ファイルはユーザーに見える
ようになる。もしもそうでない場合、ファイルはディレクトリ一覧表示(設定可能)
では見えない。Samba vfsモジュールはそのファイルをスキャンするようにデーモンに
通知する。
これが、既定値の設定でユーザーに対して行われることである。最初にディレクトリ 一覧が表示された時、ファイルはウィルススキャン中のように表示されるが、 そのあとは、すべてのファイルが表示される。すべてのディレクトリをあらかじめ スキャンするために役立つscannedonly_prescanユーティリティが用意されている。 新しいファイルが作成された時、デーモンへは、ファイルへの書き込みが完了後に 引き続いて通知される。
もしもデーモンによって、ウィルスが発見された場合、警告メッセージを含む
ファイルがユーザーのディレクトリ中に作成され、警告がログに書き込まれ、ファイルは
.virus:
というプレフィックスを持つ名前に改名される。
.virus:
プレフィックスを持つファイルはユーザーには決して
見えず、アクセスは拒否される。
このモジュールはスタック可能である。
UNIXドメインソケットを使うか否かの指定(Falseはudpを使う)
接続するUNIXドメインソケットの位置
接続するUDPポート番号
UDP使用時、スキャンデーモンが動作するホスト (このホストはファイルへのアクセスを必要とする!)
ユーザーに対して見えるべきソケット、デバイスとfifo (すべてウィルスチェックを行わない)かどうかの指定
見せないファイル(.scanned:
ファイル、
.failed:
ファイルと.virus:
ファイル)は、もしもユーザーがディスクから削除しようと
した時に、見えないファイルを削除すべきかどうかの指定。もしも
偽ならば、ユーザーは"ディレクトリが空ではありません"というエラーが
生じる。
もしも偽ならば、すべてのスキャンされないファイルはディレクトリ 一覧表示で見えるようになる。もしも、そのようなファイルが ディレクトリ一覧中に見つかった場合、スキャンデーモンに スキャンが要求されたと通知する。スキャンされないファイルへの アクセスは引き続き拒否される(scannedonly:allow_nonscanned_files を参照のこと)。
もしも、スキャンされないファイルが隠し状態 (scannedonly:hide_nonscanned_files = Trueの場合)、見かけ上 0バイトのファイルが表示される。ファイル名はサフィックスとして メッセージとオリジナルのファイル名を結合したものである。
スキャンされないファイルがオープンしていた場合、vfs
モジュールは、.scanned:
ファイルを作成するために、
スキャンデーモンに対して、recheck_tries_open回、recheck_time_open
ミリ秒待つ。時間内(*回再試行)にデーモンによってスキャンされる
小さなファイルは、その動作がアクセス後とのスキャニングのように
振る舞う。
recheck_time_openを参照。
もしも、スキャンされないファイルがディレクトリ一覧表示中にあるならば、 vfsモジュールはデーモンに通知し(そのディレクトリ中のものは、 すべてスキャンが必要と一回は通知する)、recheck_tries_readdir回 recheck_time_readdirミリ秒待つ。hide_nonscanned_filesが偽の 時にのみ使われる。
recheck_time_readdirを参照。
スキャンされないファイルへのアクセスを認める。しかし、デーモンには
通知されるが、それは.scanned:
のような特別な
ファイルである。.virus:
ファイルと
.failed:
ファイルは一覧表示されない。