Name

vfs_fruit — OS X と Netatalk との相互運用性を強化する

Synopsis

vfs objects = fruit

説明

この VFS モジュールは samba(7)システムの一部である。

The vfs_fruit モジュールは、Apple SMB クライアント との互換性向上と、Netatalk 3 AFP ファイルサーバとの相互運用性を提供する。

このモジュールは、もしも文字変換をするのであれば、 vfs_catia といっしょに使うべきであり、さらに、 vfs_streams_xattr と共に使わなければならない。 正しい設定方法は、例 の節を参照のこと。

モジュールは、共有に対して、代替データストリーム(ADS) のサポートと、OS X 特有のストーリム "AFP_AfpInfo" と "AFP_Resource" を横取りし、それを特別な方法で扱う機能を有効にする。 その他すべての名前付きストリームは、vfs_fruit といっしょにロードされねばならないvfs_streams_xattr にゆだねられる。

vfs_fruit は、"ea support = yes" が必要である。

vfs_fruit を使う共有と使わない共有とを混ぜる時は注意すること。 OS X クライアントは、最初の tcon で、SMB2 AAPL プロトコル拡張 でネゴシエートするので、fruitがある共有と、無い共有を混ぜると、 最初の tcon が fruit なしの場合、全体として AAPL を無効にする。

OS Xクライアントに対する、ADSサポートが有効な共有 があると言うことは、Apple固有のSMBサーバ実装の動作と似て、 Sambaが大文字と小文字を区別することにより引き起こされる 深刻なパフォーマンスの低下を回避すると言う点において価値がある。

OS X メタデータとリソースフォークストリームは、Netatalk 3 と 互換性のある方法で、下記のように設定することにより格納される。 fruit:resource = filefruit:metadata = netatalk

OS X は、NTFS の不正な文字を、SMB要求中で、Unicode のプライベート領域にマップする。 fruit:encoding = native を設定することにより、 すべてのマップされた文字は ネイティブなASCII文字に変換される。

最後に、共有アクセスモードは、 fruit:locking = netatalk を設定することにより、Netatalk AFP 共有モードに対して チェックすることもできる。

このモジュールは、このマニュアルページで言及されている 物以外に対してはスタックできない。

オプション

fruit:resource = [ file | xattr | stream ]

どこに OSX リソースフォークを格納するかを制御する:

  • file (既定値) - OS X と Netatalk 互換の ._ AppleDouble ファイル を使う。

  • xattr - use a xattr, requires a filesystem with large xattr support and a file IO API compatible with xattrs, this boils down to Solaris and derived platforms and ZFS 拡張属性(xattr)を使用する。これは、大きなサイズの拡張属性をサポート するファイルシステムと、拡張属性に準拠した ファイルIO APIが必要となる。つまり、 Solaris と Solaris派生プラットフォームのZFSが必須である。

  • stream - VFSスタックの、次のモジュールに、ストリームを渡す

fruit:metadata = [ stream | netatalk ]

OS X メタデータストリームが格納される場所を指定する:

  • netatalk (既定値) - Netatalk 互換の xattr を使う

  • stream - VFSスタックの次のモジュールにストリームを渡す

fruit:locking = [ netatalk | none ]

  • none (既定値) - cross protocol lockingを使わない

  • netatalk - Netatalk で cross protocol locking を使う

fruit:encoding = [ native | private ]

ファイルシステムに格納される、OS X クライアントで一般的に 使われる、不正なNTFS ASCII文字セットを制御:

  • private (規定値) - OS Xクライアントによってエンコードされた形で文字を格納: Unicodeプライベート領域にマップされる

  • native - そのままのASCII値として文字を格納

fruit:aapl = yes | no

グローバルオプションで、Appleの コードネーム AAPLの、SMB2+拡張を 有効にするかどうかを指定する。規定値では、 yesである。この拡張は、Macからの接続時に いくつかの足らない機能を補う:

  • ディレクトリ一覧表示は、Macのファイルシステム メタデータで強化され(UNIXモード、FinderInfo、リソースフォーク サイズと実行パーミッション)、その結果、驚異的な性能向上が得られ るので、Mac クライアントは、ディレクトリエントリごとに、個別に このメタデータをフェッチする必要がない。

  • ディレクトリエントリのUNIX モードを問い合わせ/ 変更する機能。

ディレクトリ一覧表示時に、特定のMacメタデータの計算を無効 にするときに使う、共有単位のオプション群がある。規定値では すべて有効である:

  • readdir_attr:aapl_rsize = true | false

  • readdir_attr:aapl_finder_info = true | false

  • readdir_attr:aapl_max_access = true | false

fruit:nfs_aces = yes | no

NFS ACE 経由での、ディレクトリエントリのUNIX モードを問合せ/変更する 機能を有効にするかどうかの指定で、既定値は yes

fruit:veto_appledouble = yes | no

Mac リソースフォークを格納する目的のため、 vfs_fruit それ自身に よって作成された、内部 AppleDouble ファイルの閲覧と変更を、クライアントから 防止するため、._ AppleDouble ファイルを見せなくするかどうかの指定。

._ ファイルを見せなくすると、いくつかのアプリケーションが動かなくなる ことがある。たとえば、 ._ ファイルを含むため、Mac クライアントからの Mac ZIP の回答は失敗する。このオプションを false に設定すると、これを修正するが、 内部的に作成された ._ ファイルの露出をリークする概念は、他の不明な 副作用を引き起こすかもしれない。

既定値はyesである。

fruit:copyfile = yes | no

OS X 固有の、すべての付属するメタデータと一緒にファイル全体 コピーを要求する copychunk ioctl を有効にするかの指定。

注意: copyfile 要求は、サーバがコピーを行っている間は クライアントに対してブロックされることに注意。

規定値はnoである。

fruit:posix_rename = yes | no

OS X クライアントで、POSIX の改名動作を有効にするかどうか。 これがないと、クライアントが、対象ディレクトリ中(再帰的に!)に オープンしているファイルがあると、ディレクトリは改名出来ない。

既定値はyesである。

        [share]
        ea support = yes
	vfs objects = catia fruit streams_xattr
	fruit:resource = file
	fruit:metadata = netatalk
	fruit:locking = netatalk
	fruit:encoding = native

著者

オリジナルの Samba ソフトウェアと関連するユーティリティは、Andrew Tridgell によって作成された。現在 Samba は Samba Team に よって、Linuxカーネルの開発と同様のオープンソースプロジェクト として開発が行なわれている。

日本語訳

このマニュアルページは Samba 4.5.0 - 4.5.0 に対応する。

このドキュメントの Samba 4.2.0 - 4.5.0 対応の翻訳は

  • 太田俊哉 (ribbon@samba.gr.jp)

によって行なわれた。