web-dev-qa-db-ja.com

zfs pool ubuntu 13.04のACLを有効にします

ローカルフォルダでACLをテストしましたが、完璧に動作します。

しかし、「タンク」と呼ばれる私のZFSプールで

root @ datacenter:/ mnt#ls 
 datatank test webmin_1.650_all.deb 
 root @ datacenter:/ mnt#setfacl -mu:casper:rwx datatank 
 setfacl:datatank:操作サポートされていません

Zfsシステムにaclサポートを追加するにはどうすればよいですか?

どうしましたか ?

6
user190861

つかいます

zfs set acltype=posixacl tank/datatank
10

私はzfsを初めて使用しますが、この問題を自分で経験したばかりです。

ZFSには2つのACLプロパティがあります: "aclinherit" "aclmode"ですが、aclmodeを正しく動作させることができませんでしたが、しかし、最近廃止されたと思います。

さらに、これらの2つのプロパティにはいくつかのモードがあります。

  • aclinherit:ACL継承の動作を決定します。値には次のものが含まれます。

    • 破棄-新しいオブジェクトの場合、ファイルまたはディレクトリの作成時にACLエントリは継承されません。ファイルまたはディレクトリのACLは、ファイルまたはディレクトリのアクセス許可モードと同じです。
    • noallow –新しいオブジェクトの場合、アクセスタイプが拒否の継承可能なACLエントリのみが継承されます。
    • 制限–新しいオブジェクトの場合、ACLエントリが継承されると、write_ownerおよびwrite_aclパーミッションが削除されます。

    • passthrough –プロパティ値がpassthroughに設定されている場合、ファイルは継承可能なACEによって決定されるモードで作成されます。モードに影響する継承可能なACEが存在しない場合、モードはアプリケーションから要求されたモードに従って設定されます。

    • passthrough-x – passthroughと同じセマンティクスを持ちますが、passthrough-xが有効な場合、実行(x)許可でファイルが作成されますが、ファイル作成モードと、影響する継承可能なACEで実行許可が設定されている場合のみモード。

  • aclmode:(もう一度、これを自分のバージョンで動作させることができなかったので注意してください!)ファイルが最初に作成されるときのACLの動作を変更するファイルまたはディレクトリのモードがchmodコマンドによって変更されるたび。値には次のものが含まれます。

    • 破棄-ファイルまたはディレクトリのモードを定義するために必要なエントリを除き、すべてのACLエントリが削除されます。

    • groupmask –ユーザーまたはグループのACL許可は、ファイルまたはディレクトリの所有者と同じUIDを持つユーザーエントリでない限り、グループ許可ビット以下になるように削減されます。次に、ACL許可は、所有者許可ビット以下になるように削減されます。

    • パススルー– chmod操作中、owner @、group @、everyone @以外のACEは変更されません。 owner @、group @、everyone @を持つACEは無効になり、chmod操作の要求に従ってファイルモードを設定します。

たとえば、「tank/datatank」(マウントポイントではなく、実際のプール)にaclを次のように設定します。

zfs set "ACL-PROPERTY"="ACL-MODE" tank/datatank

すなわち

zfs set aclinherit=passthrough tank/datatank

ソース:

http://docs.Oracle.com/cd/E19120-01/open.solaris/817-2271/gbaaz/index.html

https://mywushublog.com/2012/05/zfs-and-acls-with-samba/

0
EB Useful