Zfs: NFS/POSIX ACL ģ§€ģ›

ģ— ė§Œė“  2011ė…„ 03ģ›” 23ģ¼  Ā·  51ģ½”ė©˜ķŠø  Ā·  ģ¶œģ²˜: openzfs/zfs

POSIX ACLģ„ ģ§€ģ›ķ•˜ėŠ” ź²ƒģ“ ģ¢‹ģŠµė‹ˆė‹¤.
ė‚“ź°€ ė³¼ ģˆ˜ ģžˆė“Æģ“ zfsėŠ” ģ“ėÆø xattrģ„ ģ§€ģ›ķ•˜ź³  ģ¼ė¶€ ė‹¤ė„ø ķŒŒģ¼ ģ‹œģŠ¤ķ…œģ€ xattrģ„ ķ†µķ•“ ACLģ„ ģ§€ģ›ķ•©ė‹ˆė‹¤. ė‚“ė¶€ėŠ” ėŖØė„“ģ§€ė§Œ ģ“ ģž‘ģ—…ģ€ źµ¬ķ˜„ķ•˜źø° ź°„ė‹Øķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

Feature

ź°€ģž„ ģœ ģš©ķ•œ ėŒ“źø€

Linux ģŠ¤ķƒ€ģ¼ Posix ACLģ€ xattrė”œ źµ¬ķ˜„ė˜ģ–“ ė§ˆģŠ¤ķ„°ģ— ė³‘ķ•©ė˜ģ—ˆģŠµė‹ˆė‹¤. źø°ė³ø NFS ACLź³¼ ė…ė¦½ģ ģœ¼ė”œ ģ €ģž„ė˜ė©° ģ¶©ėŒķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. ģ“ źø°ėŠ„ģ„ ķ™œģ„±ķ™”ķ•˜źø° ģœ„ķ•“ ģƒˆ ė°ģ“ķ„° ģ„øķŠø ģ†ģ„± acltype ģ“ ģ¶”ź°€ė˜ģ—ˆģŠµė‹ˆė‹¤. ģµœģƒģ˜ ģ„±ėŠ„ģ„ ģœ„ķ•“ acltype=posixacl ė° xattr=sa ė„¼ ėŖØė‘ ģ„¤ģ •ķ•˜ėŠ” ź²ƒģ“ ģ¢‹ģŠµė‹ˆė‹¤. ģžģ„øķ•œ ė‚“ģš©ģ€ ģ—…ė°ģ“ķŠøėœ ė§¤ė‰“ģ–¼ ķŽ˜ģ“ģ§€ė„¼ ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤.

       acltype=noacl | posixacl

           Controls  whether  ACLs  are  enabled and if so what type of ACL to
           use.  When a file system has the acltype property set to noacl (the
           default)  then  ACLs are disabled.  Setting the acltype property to
           posixacl indicates Posix ACLs should be used.  Posix ACLs are  spe-
           cific  to  Linux  and are not functional on other platforms.  Posix
           ACLs are stored as an xattr and therefore will  not  overwrite  any
           existing ZFS/NFSv4 ACLs which may be set.  Currently only posixacls
           are supported on Linux.

           To obtain the best performance  when  setting  posixacl  users  are
           strongly encouraged to set the xattr=sa property.  This will result
           in the Posix ACL being stored more efficiently on disk.  But  as  a
           consequence of this all new xattrs will only be accessable from ZFS
           implementations which support the xattr=sa property.  See the xattr
           property for more details.

ėŖØė“  51 ėŒ“źø€

ė¶ˆķ–‰ķžˆė„ ģƒķ™©ģ€ ģ²˜ģŒ ė‚˜ķƒ€ė‚˜ėŠ” ź²ƒė³“ė‹¤ ģ•½ź°„ ź¹Œė‹¤ė”­ģŠµė‹ˆė‹¤.

ė‚“ė¶€ģ ģœ¼ė”œ ZFSėŠ” NFS ģŠ¤ķƒ€ģ¼ ACLģ„ ģ™„ė²½ķ•˜ź²Œ ģ§€ģ›ķ•˜ź³  ģ‹œķ–‰ķ•©ė‹ˆė‹¤. ė¶ˆķ–‰ķžˆė„ Linuxģ—ģ„œ źø°ģ”“ ė„źµ¬ėŠ” Posix ģŠ¤ķƒ€ģ¼ ACLė§Œ ģ”°ģž‘ķ•©ė‹ˆė‹¤. NFS ACL ėŖØėøģ„ Rich-ACLģ“ė¼ėŠ” ģ“ė¦„ģœ¼ė”œ Linuxģ— ź°€ģ øģ˜¤źø° ģœ„ķ•“ ģ¼ė¶€ ģž‘ģ—…ģ“ ģˆ˜ķ–‰ė˜ģ—ˆģŠµė‹ˆė‹¤. ģƒˆė”œģš“ Rich-ACL ė„źµ¬ ģ²“ģøź³¼ ķ†µķ•©ķ•˜ė ¤ė©“ ZFSģ—ģ„œ ź°€ģƒ system.richacl xattr ģøķ„°ķŽ˜ģ“ģŠ¤ė„¼ ģ œź³µķ•“ģ•¼ ķ•©ė‹ˆė‹¤. ģ“ xattrģ€ ė‹¤ė„ø xattrģ²˜ėŸ¼ ģ €ģž„ė˜ģ§€ ģ•Šź³  ėŒ€ģ‹  zfs_getacl() ė° zfs_setacl()ź³¼ ķ†µķ•©ė©ė‹ˆė‹¤. ģ“ xattr ķ›„ķ¬ėŠ” vsecattr_tė„¼ xattrģ— ėŒ€ķ•œ ģ„ ķ˜• ė°”ģ“ķŠø ģŠ¤ķŠøė¦¼ģœ¼ė”œ ė³€ķ™˜ķ•˜ėŠ” ģ—­ķ• ģ„ ķ•©ė‹ˆė‹¤.

Posix ACLģ€ ėŖ‡ ź°œģ˜ ķ›„ķ¬ė„¼ ģ¶”ź°€ķ•˜ź³  źø°ģ”“ Posix ACL ģ§€ģ› źø°ėŠ„ģ„ ķ™œģš©ķ•˜ģ—¬ ģ‰½ź²Œ ģ§€ģ›ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤. ź·øėŸ¬ė‚˜ Posixģ™€ Rich ACL(NFS/ZFS) ź°„ģ˜ ģ¼ź“€ģ„± ė¬øģ œė„¼ ķ”¼ķ•˜źø° ģœ„ķ•“ źµ¬ķ˜„ķ•˜ģ§€ ģ•ŠėŠ” ź²ƒģ“ ź°€ģž„ ģ¢‹ģŠµė‹ˆė‹¤.

ģ„¤ėŖ… ź°ģ‚¬ķ•©ė‹ˆė‹¤. POSIX ACLģ„ ģ§€ģ›ķ•˜ėŠ” ģ¼ė¶€ ģ‘ģš© ķ”„ė”œź·øėžØģ“ ģžˆģœ¼ė©“ POSIX ACLė„ ė„ģ›€ģ“ ė  ģˆ˜ ģžˆė‹¤ź³  ģƒź°ķ•©ė‹ˆė‹¤. ė‚“ź°€ źø°ģ–µķ•˜ėŠ” ź²ƒģ²˜ėŸ¼ ģ‚¼ė°”ģ—ėŠ” ź·øėŸ° ź²ƒģ“ ģžˆģŠµė‹ˆė‹¤. rsyncėŠ” ACLģ„ ģ§€ģ›ķ•˜ģ§€ė§Œ ė‚Øģžź°€ "ACL"ģ“ė¼ź³  ė§ķ•˜źø° ė•Œė¬øģ— POSIXģ—ė§Œ ķ•“ė‹¹ķ•˜ėŠ”ģ§€ ķ™•ģ‹ ķ•  ģˆ˜ ģ—†ģŠµė‹ˆė‹¤. ė‹¤ė„ø ģ‘ģš© ķ”„ė”œź·øėžØģ— ėŒ€ķ•“ ėŖØė¦…ė‹ˆė‹¤.
ė‹¤ė„ø ACLģ“ ģžˆģ–“ė„ ģ“øėŖØź°€ ģ—†ė‹¤ź³  ė§ķ•˜ź³  ģ‹¶ģŠµė‹ˆė‹¤. ź·øė¦¬ź³  ėÆøėž˜ģ— źµ¬ķ˜„ė˜ėŠ” ź²ƒģœ¼ė”œ ź°„ģ£¼ė  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ķ•„ģš”ķ•œ ģž‘ģ—… ģš”ģ•½

ė‚“ė¶€ģ ģœ¼ė”œ ZFSėŠ” NFS ģŠ¤ķƒ€ģ¼ ACLģ„ ģ™„ė²½ķ•˜ź²Œ ģ§€ģ›ķ•˜ź³  ģ‹œķ–‰ķ•©ė‹ˆė‹¤. ė¶ˆķ–‰ķžˆė„ Linuxģ—ģ„œ źø°ģ”“ ė„źµ¬ėŠ” Posix ģŠ¤ķƒ€ģ¼ ACLė§Œ ģ”°ģž‘ķ•©ė‹ˆė‹¤. NFS ACL ėŖØėøģ„ Rich-ACL(pdf)ģ“ė¼ėŠ” ģ“ė¦„ģœ¼ė”œ Linuxģ— ź°€ģ øģ˜¤źø° ģœ„ķ•“ ģ¼ė¶€ ģž‘ģ—…ģ“ ģˆ˜ķ–‰ė˜ģ—ˆģŠµė‹ˆė‹¤. ģƒˆė”œģš“ Rich-ACL ė„źµ¬ ģ²“ģøź³¼ ķ†µķ•©ķ•˜ė ¤ė©“ ZFSģ—ģ„œ ź°€ģƒ system.richacl xattr ģøķ„°ķŽ˜ģ“ģŠ¤ė„¼ ģ œź³µķ•“ģ•¼ ķ•©ė‹ˆė‹¤. ģ“ xattrģ€ ė‹¤ė„ø xattrģ²˜ėŸ¼ ģ €ģž„ė˜ģ§€ ģ•Šź³  ėŒ€ģ‹  zfs_getacl() ė° zfs_setacl()ź³¼ ķ†µķ•©ė©ė‹ˆė‹¤. ģ“ xattr ķ›„ķ¬ėŠ” vsecattr_tė„¼ xattrģ— ėŒ€ķ•œ ģ„ ķ˜• ė°”ģ“ķŠø ģŠ¤ķŠøė¦¼ģœ¼ė”œ ė³€ķ™˜ķ•˜ėŠ” ģ—­ķ• ģ„ ķ•©ė‹ˆė‹¤.

Posix ACLģ€ ėŖ‡ ź°œģ˜ ķ›„ķ¬ė„¼ ģ¶”ź°€ķ•˜ź³  źø°ģ”“ Posix ACL ģ§€ģ› źø°ėŠ„ģ„ ķ™œģš©ķ•˜ģ—¬ ģ‰½ź²Œ ģ§€ģ›ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤. ź·øėŸ¬ė‚˜ Posixģ™€ Rich ACL(NFS/ZFS) ź°„ģ˜ ģ¼ź“€ģ„± ė¬øģ œė„¼ ķ”¼ķ•˜źø° ģœ„ķ•“ źµ¬ķ˜„ķ•˜ģ§€ ģ•ŠėŠ” ź²ƒģ“ ź°€ģž„ ģ¢‹ģŠµė‹ˆė‹¤.

ģ–“ė–¤ ė³“ģ•ˆ ėŖØėøģ„ ģ ģš©ķ•“ģ•¼ ķ•˜ėŠ”ģ§€ģ— ėŒ€ķ•œ ė§ˆģš“ķŠø ģ˜µģ…˜/ķŒŒģ¼ ģ‹œģŠ¤ķ…œ ģ†ģ„±ģ€ ģ–“ė–»ģŠµė‹ˆź¹Œ? (ź·øė¦¬ź³  ė‹¤ė„ø ķ•˜ė‚˜ėŠ” setfacl/getfaclź³¼ ź°™ģ€ ź“€ė¦¬ ė„źµ¬ģ—ģ„œė„ ģ™„ģ „ķžˆ ģˆØź²Øģ ø ģžˆģ„ ģˆ˜ ģžˆģŠµė‹ˆė‹¤).
Linux ģ„øź³„ģ—ģ„œ Rich-ACLģ€ ź±°ģ˜ ģ‚¬ģš©ė˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. Posix ACLģ“ ķ›Øģ”¬ ė” ė§Žģ“ ķ™œģš©ė©ė‹ˆė‹¤. ė‚“ ģ¼ė°˜ģ ģø źµ¬ģ„±ģ—ģ„œ ķŒŒģ¼ ģ‹œģŠ¤ķ…œģ— ėŒ€ķ•œ ACLģ“ ģ—†ė‹¤ėŠ” ź²ƒģ€ ė†€ė¼ģš“ ģ¼ģž…ė‹ˆė‹¤.
ģ“ėŸ° ģ‹ģœ¼ė”œ ķ›Øģ”¬ ģ§§ģ€ ģ‹œź°„ģ— ģž‘ė™ķ•˜ėŠ” ACL źµ¬ķ˜„(Posix)ģ„ ģ–»ģ„ ģˆ˜ ģžˆė‹¤ź³  ģƒź°ķ•©ė‹ˆė‹¤.

ģ €ė„ POSIX ACL ģ§€ģ›ģ“ Linuxģ˜ ZFSģ— ķ†µķ•©ė˜ėŠ” ź²ƒģ„ ė³“ź³  ģ‹¶ģŠµė‹ˆė‹¤. LinuxėŠ” POSIXģ“ė©° RichACLģ“ ė” ģ£¼ė„˜ź°€ ė  ė•Œź¹Œģ§€(ė˜ėŠ” ģ ģ–“ė„ ģ»¤ė„ģ—ģ„œ) Linuxģ˜ ZFSģ—ģ„œ POSIX ķ†µķ•©ģ“ ģ˜ėÆøź°€ ģžˆė‹¤ź³  ģƒź°ķ•©ė‹ˆė‹¤.

ģ“ ķ¬ķ•Øėœ ź²ƒģ„ ė³“ź³  ģ‹¶ģŠµė‹ˆė‹¤! ģš°ė¦¬ģ—ź²ŒėŠ” ź±°ģ˜ ģ‡¼ģŠ¤ķ† ķ¼ ģ˜€ģ§€ė§Œ ėŖ‡ ė‹¬ ė™ģ•ˆ ģ—†ģ“ ģ‚“źø°ė”œ ź²°ģ •ķ–ˆģŠµė‹ˆė‹¤.

ACLģ“ ź¹”ė”ķ•˜ź²Œ ģ²˜ė¦¬ė˜ė©“ clmode ģ†ģ„±ģ„ ė‹¤ģ‹œ ģƒģ„±ķ•˜źø° ģœ„ķ•œ ė‹¤ģŒ ķŒØģ¹˜ź°€ ė³‘ķ•©ė˜ģ—ˆėŠ”ģ§€ ķ™•ģøķ•“ģ•¼ ķ•©ė‹ˆė‹¤. ģ“ ė³€ź²½ ģ‚¬ķ•­ģ€ Illumos ė° FreeBSD źµ¬ķ˜„ģ— ģ“ėÆø ģ ģš©ė˜ģ—ˆģŠµė‹ˆė‹¤.

ė¬øģ œ #742: ZFS "aclmode" ģ†ģ„± ė¶€ķ™œ
https://www.illumos.org/issues/742
https://github.com/illumos/illumos-gate/commit/a3c49ce110f325a563c245bedc4d533adddb7211

Posix < - > NFSv4 ACLģ„ ė§¤ķ•‘ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.
IETFģ—ėŠ” ķ•“ė‹¹ ė§¤ķ•‘ģ— ėŒ€ķ•œ ģ“ˆģ•ˆģ“ ģžˆģŠµė‹ˆė‹¤. http://tools.ietf.org/id/draft-ietf-nfsv4-acl-mapping-03.txt
ź·øėŸ¬ė‚˜ Posix => NFSv4(ė‹Øė°©ķ–„)ė§Œ ėŖ…ķ™•ķ•˜ź²Œ ģ§€ģ •ķ•©ė‹ˆė‹¤.

ė§¤ķ•‘ ė°©ģ‹ģ“ ģ“ė” ģ ģœ¼ė”œėŠ” ź°€ģž„ ģ¢‹ģ€ ė°©ģ‹ģ“ė¼ź³  ģƒź°ķ•˜ģ§€ė§Œ 1:1 ė§¤ķ•‘ģ“ ė¶ˆź°€ėŠ„ķ•˜źø° ė•Œė¬øģ— ė‹¤ė„ø ė°©ģ‹ģ— ė¹„ķ•“ ģ˜¤ė„˜ź°€ ė°œģƒķ•˜źø° ģ‰½ģŠµė‹ˆė‹¤.
ģ‚¬ģš©ģžź°€ ź±°ė¶€ķ•  ģ˜ė„ź°€ ģ—†ėŠ”(ė˜ėŠ” ė” ė‚˜ģ˜ź²ŒėŠ” ģ£¼ģ–“ģ§„) ź¶Œķ•œģ„ ź±°ė¶€ė‹¹ķ•˜ėŠ”(ė˜ėŠ” ė” ė‚˜ģ˜ź²ŒėŠ” ģ£¼ģ–“ģ§„) ź²½ģš°ź°€ ķ•­ģƒ ģžˆģŠµė‹ˆė‹¤.
ģµœģ†Œķ•œ "ķ° ėš±ėš±ķ•œ ź²½ź³ "ģ™€ ķ•Øź»˜ ģ œź³µė˜ģ–“ģ•¼ ķ•©ė‹ˆė‹¤.
ķ•˜ģ§€ė§Œ _ė°˜ė“œģ‹œ_ ģˆ˜ķ–‰ķ•“ģ•¼ ķ•˜ėŠ” ģž‘ģ—…ģ„ _ė³“ģ•ˆ_ źø°ėŠ„ģœ¼ė”œ ķ•˜ėŠ” ź²ƒģ€ ķ˜„ėŖ…ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤.
ģ œģ•ˆ: "ėŖØķ˜øķ•œ" NFSv4 aclģ—ģ„œ ģ»¤ė„ ė”œź·øģ— ėŒ€ķ•œ ėŖØė“  ģ•”ģ„øģŠ¤ ė° ģøģ‡„ ģ˜¤ė„˜ė„¼ ķ—ˆģš©ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤.
ķ•“ė‹¹ ģ œģ•ˆģ— ėŒ€ķ•œ ė¬øģ œ: ģŠ¤ėƒ…ģƒ·ģ€ ģˆ˜ė™ģœ¼ė”œ ģˆ˜ģ •ķ•  ģˆ˜ ģ—†ģŠµė‹ˆė‹¤.
Posix ACLģ— ėŒ€ķ•œ "ģ“ģƒķ•œ" ģ˜Øė””ģŠ¤ķ¬ ķ˜•ģ‹ģœ¼ė”œ ź°„ė‹Øķ•˜ź²Œ ė³¼ ģˆ˜ ģžˆģœ¼ėƀė”œ ģ„¤ģ •ķ•˜ėŠ” ė° ė¬øģ œź°€ ģ—†ģ–“ģ•¼ ķ•©ė‹ˆė‹¤.
NFSv4 ACLģ˜ ķ›Øģ”¬ ė” źµ¬ģ„± ź°€ėŠ„ķ•œ ģƒģ†ģ€ ķ•“ź²°ķ•“ģ•¼ ķ•  ė˜ ė‹¤ė„ø ė¬øģ œ ģ„øķŠøė„¼ ģƒģ„±ķ•©ė‹ˆė‹¤.

ģ“ źµ¬ķ˜„ģ˜ ģ²« ė²ˆģ§ø ė‹Øź³„ėŠ” ė‹¤ģŒģ„ ģˆ˜ķ–‰ķ•  ģˆ˜ ģžˆģ–“ģ•¼ ķ•œė‹¤ź³  ģƒź°ķ•©ė‹ˆė‹¤.

  • POSIX ACLģ„ ģž‘ģ„±ķ•˜ź³  ģž‘ģ„±ėœ ė‚“ģš©ģ„ ģ½ź³  ģ‹œķ–‰ķ•©ė‹ˆė‹¤.
  • ė‹¤ė„ø źµ¬ķ˜„ģ—ģ„œė„ ģ˜ė„ķ•œ ėŒ€ė”œ ģ½ź³  ģ ģš©ķ•  ģˆ˜ ģžˆė„ė” ė””ģŠ¤ķ¬ģ— NFSv4 ACLė”œ ģž‘ģ„±ķ•©ė‹ˆė‹¤.
  • ė‹¤ė„ø źµ¬ķ˜„ģ— ģ˜ķ•“ ģž‘ģ„±ėœ ź°„ė‹Øķ•˜ź²Œ ė§¤ķ•‘ķ•  ģˆ˜ ģ—†ėŠ” NFSv4 ACLė”œ ķ¬ź²Œ ģ‹¤ķŒØķ•©ė‹ˆė‹¤.
    ** ķ•“ė‹¹ ķ•­ėŖ©ģ— ėŒ€ķ•œ ėŖØė“  ģ•”ģ„øģŠ¤ė„¼ ź±°ė¶€ķ•©ė‹ˆė‹¤.
    ** ģ‚¬ģš©ģžź°€ "ķŠ¹ģ •" ģƒģ† ķ”Œėž˜ź·øź°€ ģžˆėŠ” ė””ė ‰ķ† ė¦¬ģ— ķŒŒģ¼ģ„ ģƒģ„±ķ•  ģˆ˜ ģ—†ė„ė” ķ•Ø
    ** ź°€ģž„ ģ•ˆģ „ķ•œ źø°ė³øź°’ģœ¼ė”œ ķŒŒģ¼ ģ‹œģŠ¤ķ…œė³„ė”œ źµ¬ģ„± ź°€ėŠ„ķ•œ "ģ‹¤ķŒØ ė™ģž‘"ģ“ ģžˆģ„ ģˆ˜ ģžˆģŠµė‹ˆė‹¤. (ź·øė¦¬ź³  ģŠ¤ėƒ…ģƒ·ģš©??)

ģ—°ģ† ė‹Øź³„ģ—ģ„œ ė§¤ķ•‘ ė…¼ė¦¬ NFSv4 => Posixė„¼ ģ”°ģ •ķ•˜ź³  ķ›Øģ”¬ ė” ģ‚¬ģš©ģž ģ •ģ˜ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ė” ė‚˜ģ€ ģ•„ģ“ė””ģ–“ź°€ ģžˆģŠµė‹ˆź¹Œ?

ģ“ź²ƒģ€ ė‚˜ģ—ź²Œ ķ•©ė¦¬ģ ģø ģ¶œė°œģ ģ²˜ėŸ¼ ė³“ģž…ė‹ˆė‹¤. ė‹Øģ§€ ėŖ‡ ź°€ģ§€ ģ˜ź²¬ģž…ė‹ˆė‹¤.

ģ™„ė²½ķ•œ 1:1 ė§¤ķ•‘ģ€ ė¶ˆź°€ėŠ„ķ•˜ģ§€ė§Œ ģ‹¤ģ œė”œ ź·øė ‡ź²Œ ė‚˜ģœ ź²ƒģ€ ģ•„ė‹™ė‹ˆė‹¤. ģ§€ģ ķ–ˆė“Æģ“ ė””ģŠ¤ķ¬ģ— ģ˜¬ė°”ė„ø ACLģ„ ģ„¤ģ •ķ•˜ėŠ” ė° ģ‚¬ģš©ķ•  ģˆ˜ ģžˆėŠ” ģž˜ ģ§€ģ •ėœ IETF Posix -> NFSv4 ė§¤ķ•‘ģ“ ģžˆģŠµė‹ˆė‹¤. ė””ģŠ¤ķ¬ģ— SAė”œ ģ„¤ģ •ė˜ė©“ źø°ģ”“ zfs źµ¬ķ˜„ģ€ VFSģ˜ ģ¼ė°˜ Linux ACL ķ›„ķ¬ģ™€ ė…ė¦½ģ ģœ¼ė”œ ģ“ė„¼ ģ ģš©ķ•˜źø° ģ‹œģž‘ķ•“ģ•¼ ķ•©ė‹ˆė‹¤.

ė¬¼ė”  ACLģ„ ģ½źø° ģœ„ķ•“ ķ•©ė¦¬ģ ģø NFSv4 -> Posix ė§¤ķ•‘ģ„ źµ¬ķ˜„ķ•“ģ•¼ ķ•©ė‹ˆė‹¤. ź·øėŸ¬ė‚˜ ģ“ģ— ėŒ€ķ•œ ķ•©ė¦¬ģ ģø źµ¬ķ˜„ģ€ ģ“ėÆø ģ”“ģž¬ķ•©ė‹ˆė‹¤. ėŖØė“  NFSv4 ACLģ„ ģ†ģ‹¤ ģž‘ģ—…ģø Posix ACLė”œ ģ €ģž„ķ•“ģ•¼ ķ•˜ėŠ” Linux nfs ģ»¤ė„ ģ„œė²„ģ˜ ź²½ģš°ģž…ė‹ˆė‹¤. ģ œģ³ė‘ź³ , ģž„źø°ģ ģœ¼ė”œ ģ›ģ‹œ nfsv4/zfs ACLģ„ ė…øģ¶œķ•˜ėŠ” ź²ƒģ€ nfs ģ»¤ė„ ģ„œė²„ģ— ģ¢‹ģ€ ģ¼ģž…ė‹ˆė‹¤. ė¬“ģ˜ėÆøķ•œ NFSv4 -> Posix -> NFSv4 ė³€ķ™˜ģ„ ģž ģž¬ģ ģœ¼ė”œ ķ”¼ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ė§ˆģ§€ė§‰ģœ¼ė”œ, ģš°ė¦¬ėŠ” ģ“ź²ƒģ“ ģ˜¬ė°”ė„øģ§€ ķ™•ģøķ•˜źø° ģœ„ķ•œ ķ…ŒģŠ¤ķŠø ģŠ¤ģœ„ķŠøė„¼ ģ›ķ•©ė‹ˆė‹¤. ģ“ź²ƒģ€ ź²°źµ­ ė³“ģ•ˆ źø°ėŠ„ģž…ė‹ˆė‹¤. ė‹¤ķ–‰ģŠ¤ėŸ½ź²Œė„ ėŖ‡ ź°€ģ§€ ģ¢‹ģ€ ķ…ŒģŠ¤ķŠø ģŠ¤ģœ„ķŠøź°€ ģ“ėÆø ģ”“ģž¬ķ•œė‹¤ėŠ” ģ‚¬ģ‹¤ģ„ ģ•Œź³  ģžˆģŠµė‹ˆė‹¤.

Greg Banksź°€ ģˆ˜ķ–‰ķ•œ ģ“ģ „ ģž‘ģ—…ģ— ėŒ€ķ•“ Aneesh kumar, Andreas Gruenbacherź°€ ģž¬ź°€ģ— ėŒ€ķ•“ ģ§„ķ–‰ ģ¤‘ģø ģž‘ģ—…ģ“ ģžˆģŠµė‹ˆė‹¤. 3.1 ė©”ģøė¼ģø ė³‘ķ•©ģ„ ģœ„ķ•“ ķŒØģ¹˜ź°€ ģ œģ¶œė˜ģ—ˆģ§€ė§Œ ģ¼ė¶€ ė³€ź²½ģœ¼ė”œ ģøķ•“ ģ‹œź°„ģ“ ź±øė¦¬ź³  ė‹¤ģŒ ė¦“ė¦¬ģŠ¤ģ—ģ„œ ė³‘ķ•©ė©ė‹ˆė‹¤.
ķŒØģ¹˜ ė§ķ¬ : - https://lkml.org/lkml/2011/10/18/279

ģ“ź²ƒģ“ ė©”ģø ė¼ģøģ— ė„ė‹¬ķ•˜ė©“ ZFSģš© nfsv4aclsė„¼ ģ§€ģ›ķ•˜ėŠ” ė° ģ‚¬ģš©ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ģ“ź²ƒģ“ ė©”ģø ė¼ģøģ— ė„ė‹¬ķ•˜ė©“ ZFSģš© nfsv4aclsė„¼ ģ§€ģ›ķ•˜ėŠ” ė° ģ‚¬ģš©ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ź·øė¦¬ź³  POSIX ACLģ€ ģ–“ė–»ģŠµė‹ˆź¹Œ? Brianģ€ xattrģ„ ģ‚¬ģš©ķ•˜ģ—¬ źµ¬ķ˜„ķ•˜ėŠ” ź²ƒģ“ ź·øė¦¬ ģ–“ė µģ§€ ģ•Šė‹¤ź³  ė§ķ–ˆģŠµė‹ˆė‹¤. ģ“ź²ƒė„ ėˆ„źµ°ź°€ź°€ ķ•  ģˆ˜ ģžˆģŠµė‹ˆź¹Œ? :)

ZFSėŠ” nfsv4aclsė„¼ ģ§€ģ›ķ•˜ėƀė”œ IMHOėŠ” ėؼģ € nfsv4aclsė„¼ ģ§€ģ›ķ•˜ź³  posix aclģ“ ģ‹¤ģ œė”œ ķ•„ģš”ķ•œģ§€ ķ™•ģøķ•“ģ•¼ ķ•©ė‹ˆė‹¤. ź·øė ‡ė‹¤ė©“ ģš°ė¦¬ėŠ” ź·øė“¤ ģ‚¬ģ“ģ˜ ė§¤ķ•‘ģ„ ģ •ģ˜ķ•˜ėŠ” ė°©ė²•ģ„ ģ•Œģ•„ė‚¼ ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ė‚˜ėŠ” ė‘˜ ė‹¤ ķ•  ģˆ˜ ģ—†ėŠ” ģ“ģœ ė„¼ ė³“ģ§€ ėŖ»ķ•œė‹¤. MaxximinoėŠ” ķ˜„ģž¬ ģž˜ ė¬øģ„œķ™”ėœ ė²ˆģ—­ģ„ ķ†µķ•“ system.posixacl xattr ģøķ„°ķŽ˜ģ“ģŠ¤ė„¼ ģ§€ģ›ķ•˜źø° ģœ„ķ•“ ė…øė „ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤. system.richacl xattr ģøķ„°ķŽ˜ģ“ģŠ¤ ģ¶”ź°€ėŠ” ķ†µķ•©ė˜ź³  ģ‹¤ģ œ ė„źµ¬ ģ²“ģøģ„ ģ‚¬ģš©ķ•  ģˆ˜ ģžˆėŠ” ź²½ģš° ģ§€ģ›ė  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ķ•™ģ—… ė° ģ—…ė¬“ ź“€ė Ø ģž‘ģ—…ģœ¼ė”œ "ķ˜„ģž¬ ģž‘ģ—… ģ¤‘"ģ“ ķ—ˆģš©ė˜ģ§€ė§Œ "ģžģœ " ģ‹œź°„ģ— ėŒ€ķ•œ ģš°ģ„  ģˆœģœ„ź°€ ė†’ģŠµė‹ˆė‹¤.
ģ“ėÆø IllumOs CDDL ė¼ģ“ģ„¼ģŠ¤ ģ½”ė“œė„¼ ģ‚“ķŽ“ė³“ź³  NFSv4 <-> posix acl ė³€ķ™˜ģ„ ģˆ˜ķ–‰ķ•˜ėŠ” ģ¼ė¶€ ģ½”ė“œė„¼ ģ°¾ģ•˜ģŠµė‹ˆė‹¤. ź·øź²ƒģ€ ģ •ķ™•ģ„±ģ˜ ź“€ģ ģ—ģ„œ ź²¬ź³ ķ•œ źø°ģ“ˆź°€ ė˜ģ–“ģ•¼ ķ•©ė‹ˆė‹¤. ģš”ģ²­ ģ‹œ ģ„øė¶€ ģ‚¬ķ•­.

ė‚˜ėŠ” solarisź°€ ACLģ„ ź“€ė¦¬ķ•˜źø° ģœ„ķ•“ ė‘ ź°œģ˜ chmod ģ‚¬ė³øģ„ ģ œź³µķ•œė‹¤ėŠ” ź²ƒģ„ ģ•Œź³  ģžˆģŠµė‹ˆė‹¤. ė¶ˆķ–‰ķžˆė„ ģ“ź²ƒģ€ ė§¤ģš° ģ–“ģƒ‰ķ•˜ź³  ķˆ¬ė°•ķ•©ė‹ˆė‹¤. Linuxģ˜ zfsģ—ģ„œ ACL ė³“źø° ė° ģˆ˜ģ • źø°ėŠ„ģ„ ģ œź³µķ•˜źø° ģœ„ķ•“ ė„ģš°ėÆø ķ”„ė”œź·øėžØģø setzacl, getzacl ė˜ėŠ” ģ“ģ™€ ģœ ģ‚¬ķ•œ ź²ƒģ„ ģ‚¬ģš©ķ•  ź²ƒģ„ ģ œģ•ˆķ•©ė‹ˆė‹¤. ź°€źø‰ģ ģ“ė©“ ģøķ„°ķŽ˜ģ“ģŠ¤ėŠ” solaris chmodģ™€ ģœ ģ‚¬ķ•˜ź±°ė‚˜(ė˜ėŠ” ķ˜øķ™˜ė˜ė„ė”) ģƒģ„±ė˜ģ–“ģ•¼ ķ•˜ė©°, ź°œģ„ ė  ģˆ˜ ģžˆģ§€ė§Œ ė‘ zfs Linux źµ¬ķ˜„ģ—ģ„œ ėŖØė‘ ķ‘œģ¤€ķ™”ė˜ģ–“ģ•¼ ķ•˜ė©°, ė°”ėžŒģ§ķ•˜ź²ŒėŠ” "nfs4" aclsė„¼ ģ‚¬ģš©ķ•˜ģ—¬ ķ–„ķ›„ ķŒŒģ¼ ģ‹œģŠ¤ķ…œģ„ ģ²˜ė¦¬ķ•  ģˆ˜ ģžˆģ–“ģ•¼ ķ•©ė‹ˆė‹¤. (ėˆ„źµ°ź°€ź°€ nfs4 ACLģ“ė¼ź³  ė¶ˆė¦¬ėŠ” ģ“ģœ ė„¼ ģ„¤ėŖ…ķ•  ģˆ˜ ģžˆė‹¤ė©“ ź·øź²ƒė„ ķ° ė„ģ›€ģ“ ė  ź²ƒģž…ė‹ˆė‹¤!)

Samba ģ‚¬ģš©ģžź°€ nfs4 ACLģ„ ź³ ģˆ˜ķ•˜ź³  ģ‹¶ģ–“ķ•  ģˆ˜ė„ ģžˆė‹¤ėŠ” ģ ģ„ ė§ė¶™ģ“ź³  ģ‹¶ģŠµė‹ˆė‹¤. ķŠ¹ķžˆ źø°ėŠ„ė³„ė”œ Windows NTFS ACLź³¼ ģ¼ģ¹˜ķ•˜ėŠ” ź²ƒź³¼ ź°€ģž„ ė¹„ģŠ·ķ•˜źø° ė•Œė¬øģž…ė‹ˆė‹¤. ģ“ź²ƒģ€ ģµœģ‹  ė²„ģ „ģ˜ Windowsź°€ ķŠ¹ģ • ACLģ„ ķ™•ģøķ•˜ėŠ” Active Directory ķ™˜ź²½ģ—ģ„œ ģ‚¬ģš©ģž ķ™ˆ ė° ķ”„ė”œķ•„ ķ“ė”ģš© ģ„œė²„ė”œ Sambaė„¼ ģ‚¬ģš©ķ•˜ė ¤ėŠ” ź²½ģš°ģ— ģ¤‘ģš”ķ•©ė‹ˆė‹¤. ė˜ķ•œ Windows ģƒķ˜ø ģš“ģš©ģ„±ģ€ Sun ģ‹œėŒ€ģ— ZFSģ˜ ģ„¤ź³„ ėŖ©ķ‘œ ģ¤‘ ķ•˜ė‚˜ģ˜€ģœ¼ėƀė”œ ź·øź²ƒģ“ ģ‚¬ė¼ģ§€ė©“ ģ•ˆķƒ€ź¹Œģš“ ģ¼ģž…ė‹ˆė‹¤...

ģ¦‰, POSIX ź·œģ • ģ¤€ģˆ˜ģ— ėŒ€ķ•œ ģ¶”ģ§„ė „ģ„ ģ¶©ė¶„ķžˆ ģ“ķ•“ķ•©ė‹ˆė‹¤.

aarcane - NFSv4 ACLģ˜ ģ—­ģ‚¬ėŠ” http://wiki.linux-nfs.org/wiki/index.php/ACLs ė„¼ ģ°øģ”°

ģ €ėŠ” ķ˜„ģž¬ Samba 4 DC ė° ZFS CIFS ź³µģœ ė„¼ ģ‹¤ķ—˜ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤. źø°ė³ø ģ‹œģŠ¤ķ…œģ€ ģš°ė¶„ķˆ¬ 12.04ģž…ė‹ˆė‹¤.

XP Pro SP3 ķ“ė¼ģ“ģ–øķŠøėŠ” Active Directory(ģ‚¬ģš©ģž ė° ģ»“ķ“Øķ„°)ė„¼ ė³“ź³  ź“€ė¦¬ķ•  ģˆ˜ ģžˆģœ¼ė©° EXT4ģ—ģ„œ ź³µģœ ėœ ķ“ė”ģ— ėŒ€ķ•“ NTFS ź¶Œķ•œģ„ ģ ģ ˆķ•˜ź²Œ ģ„¤ģ •ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ZFSģ—ģ„œ ź³µģœ ėœ ķ“ė”ėŠ” XP GUIė„¼ ķ†µķ•“ ź¶Œķ•œģ„ ė³€ź²½ķ•˜ėŠ” ģ¦‰ģ‹œ CIFSė„¼ ķ†µķ•“ ķƒģƒ‰ķ•  ģˆ˜ ģ—†ź²Œ ė©ė‹ˆė‹¤(ķ•˜ģ§€ė§Œ ģ˜ˆģƒėŒ€ė”œ ģ„œė²„ģ˜ ėŖ…ė ¹ģ¤„ģ—ģ„œ ģ—¬ģ „ķžˆ ģ•”ģ„øģŠ¤ķ•  ģˆ˜ ģžˆģŒ).

ģœ„ģ˜ ģŠ¤ė ˆė“œģ—ģ„œ ģ„¤ėŖ…ķ•œ ė¬øģ œģ˜ ź²°ź³¼ė¼ź³  ź°€ģ •ķ•©ė‹ˆź¹Œ? ėŖØė“  ķ•“ź²° ė°©ė²• ģ•„ģ“ė””ģ–“ėŠ” ź°ģ‚¬ķžˆ ė°›ģ„ ź²ƒģž…ė‹ˆė‹¤.

Samba 4ė„¼ ķ†µķ•“ ģ „ģ²“ NTFS ACL ź“€ė¦¬ģžė„¼ ķ™œģ„±ķ™”ķ•˜ė©“ ZFSģ— ģ—„ģ²­ė‚œ ė³“ė„ˆģŠ¤ź°€ ė  ź²ƒģž…ė‹ˆė‹¤.

ė¬øģ œģ— ėŒ€ķ•œ ģžģ„øķ•œ ė‚“ģš©ģ„ ź²Œģ‹œķ•  ģˆ˜ ģžˆģŠµė‹ˆź¹Œ? ģ •ķ™•ķ•œ Samba4 ė²„ģ „, ģ‚¬ģš© ģ¤‘ģø ķŒŒģ¼ ģ„œė²„(smbd ė˜ėŠ” ntvfs) ė° ź“€ė Ø ģ„¤ģ •ģ€ ė¬“ģ—‡ģž…ė‹ˆź¹Œ? (ģ˜ˆ: vfs_acl_xattr ė˜ėŠ” ģ“ģ™€ ģœ ģ‚¬ķ•œ ź²ƒģ„ ģ‚¬ģš©ķ•˜ź³  ģžˆģŠµė‹ˆź¹Œ?)
ė™ģ¼ķ•œ Samba4 źµ¬ģ„±ģ“ "acl" ģ˜µģ…˜ ģ—†ģ“ ė§ˆģš“ķŠøėœ extYė„¼ ķ†µķ•“ ģž‘ė™ķ•˜ėŠ” ź²½ģš° ė‹¤ė„ø ė¬øģ œė„¼ ģ—“ ā€‹ā€‹ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

Sambaė„¼ ķ†µķ•œ ģ‹¤ģ œ NFSv4(NTFSģ™€ ģœ ģ‚¬ķ•œ) ACL ģ”°ģž‘ģ— ėŒ€ķ•“ģ„œėŠ” "Rich ACL" ķŒØģ¹˜ź°€ ģ»¤ė„ģ— ė³‘ķ•©ėœ ķ›„ģ—ė§Œ _ź¹Øė—ķ•œ ė°©ė²•ģœ¼ė”œ_ ģˆ˜ķ–‰ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

Maxximinoė‹˜ ź°ģ‚¬ķ•©ė‹ˆė‹¤.
ģ‚¼ė°” 4.0.0 alpha19ė„¼ ģ‚¬ģš©ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤.
ė‚˜ėŠ” ntvfs(sudo /usr/local/samba/sbin/samba -i -M single)ė„¼ ģ‚¬ģš©ķ•˜ģ—¬ ķŒŒģ¼ģ„ ģ„œė²„ķ•˜ė ¤ź³  ģ‹œė„ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤. ģ“ėŠ” ext4ģ—ģ„œ netlogon ė° sysvol ź³µģœ ė„¼ ģ œź³µķ•˜ź³  aclinherit=ė„¼ ģ‚¬ģš©ķ•˜ģ—¬ ėÆøėŸ¬ė§ėœ ė“œė¼ģ“ėøŒ ģŒģ—ģ„œ zfs ź³µģœ ė„¼ ģ œź³µķ•©ė‹ˆė‹¤. ķ†µź³¼ ģ„øķŠø.
ģ‚¬ģš© ģ¤‘ģø vfs_acl_xattr ėŖØė“ˆģ“ ģ—†ģŠµė‹ˆė‹¤.

"Sambaė„¼ ķ†µķ•œ ģ‹¤ģ œ NFSv4(NTFSģ™€ ģœ ģ‚¬ķ•œ) ACL ģ”°ģž‘ģ— ėŒ€ķ•“ģ„œėŠ” "Rich ACL" ķŒØģ¹˜ź°€ ģ»¤ė„ģ— ė³‘ķ•©ėœ ķ›„ģ—ė§Œ ź¹Øė—ķ•œ ė°©ė²•ģœ¼ė”œ ģˆ˜ķ–‰ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤."

ė‚“ź°€ ė¬øģ œė„¼ ģ“ķ•“ķ•˜ėŠ” ķ•œ, ź³µģ‹ richacls ķŒØģ¹˜ėŠ” EXT4ė§Œ ģ§€ģ›ķ•©ė‹ˆė‹¤. ģ˜ˆė„¼ ė“¤ģ–“ opensuse(źø°ė³øģ ģœ¼ė”œ richaclsź°€ ķ¬ķ•ØėØ)ė„¼ ģ‚¬ģš©ķ•˜ź±°ė‚˜ richaclsė„¼ ģš°ė¶„ķˆ¬/ė°ė¹„ģ•ˆģ— ķŒØģ¹˜ķ•˜ė©“ zfs+samba4+ntfs aclsź°€ "ź·øėƒ„ ģž‘ė™ģ„ ģ‹œģž‘ķ•“ģ•¼ ķ•©ė‹ˆė‹¤. "?

ź·€ķ•˜ģ˜ ė¬øģ œė„¼ ģž¬ķ˜„ķ–ˆģŠµė‹ˆė‹¤.
vfs_acl_xattrģ„ ėŖ…ģ‹œģ ģœ¼ė”œ ģ‚¬ģš©ķ•˜ź³  ģžˆģ§€ ģ•Šģ§€ė§Œ Samba4ėŠ” "ģ”°ģš©ķžˆ" ė™ģ¼ķ•œ ģž‘ģ—…ģ„ ģˆ˜ķ–‰ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤. ACLģ„ "security.NTACL"ģ“ė¼ėŠ” xattrģ— ģ €ģž„ķ•©ė‹ˆė‹¤(getfattr -n security.NTACL $FILENAMEģœ¼ė”œ ė³¼ ģˆ˜ ģžˆź³  setfattr -x security.NTACL $FILENAMEė”œ ģ œź±°).
ģ“ ģ†ģ„±ģ€ zfs/linux ģ»¤ė„ģ“ ģ•„ė‹Œ Sambaģ—ģ„œė§Œ ź³ ė ¤ė©ė‹ˆė‹¤. /dev/urandomģ˜ ź°’ģ„ zfsģ˜ xattrsģ— ģ €ģž„ķ•˜ėŠ” ź°„ė‹Øķ•œ perl ķ”„ė”œź·øėžØģ€ ģ†ģƒė˜ģ§€ ģ•Šģ€ ģƒķƒœė”œ ė‹¤ģ‹œ ģ½ģ„ ģˆ˜ ģžˆģœ¼ėƀė”œ Samba4 ė¬øģ œė¼ź³  ģƒź°ķ•©ė‹ˆė‹¤.
ė‹¤ė„ø fsģ—ģ„œėŠ” xattrsė„¼ ģ‚¬ģš©ķ•˜ėŠ” ėŒ€ģ‹  Posix ACLģ—ģ„œ ACLģ„ ė§¤ķ•‘ķ•  ģˆ˜ ģžˆźø° ė•Œė¬øģ— ė¬øģ œėŠ” zfsģ—ģ„œė§Œ ė‚˜ķƒ€ė‚©ė‹ˆė‹¤.

ģ•„ė‹ˆģš”, ķ’ė¶€ķ•œ cl ķŒØģ¹˜ė”œ ģ»¤ė„ģ„ ķŒØģ¹˜ķ•˜ėŠ” ź²ƒė§Œģœ¼ė”œėŠ” ģ¶©ė¶„ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. ģ“ėŸ¬ķ•œ ķŒØģ¹˜ź°€ ė©”ģøė¼ģøģ— ė„ģ°©ķ•˜ė©“ zfsģ—ģ„œ ķ’ė¶€ķ•œ acl ģ§€ģ›ģ„ ķ†µķ•©ķ•˜źø° ģ‹œģž‘ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ģ €ėŠ” Suseģ—ģ„œ Samba 4ė„¼ źµ¬ģ¶• ģ¤‘ģž…ė‹ˆė‹¤. ė‹¤ė„ø ź°ė„ģ—ģ„œ ė‹¹ģ‹ ģ˜ ė³µģ œķ’ˆģ„ ģž¬ķ˜„ķ•˜ė ¤ź³  ķ–ˆė˜ ź²ƒ ź°™ģ•„ģš”.
ź³ ķ†µģ„ źµ¬ķ–ˆģŠµė‹ˆė‹¤.

ģ•„ė§ˆė„ ķ•©ė¦¬ģ ģø(ė‹Øźø°ģ ģø) ķ•“ź²° ė°©ė²•ģ€ ģ•ˆģ •ģ ģø Samba 3 ķ™˜ź²½ģ„ ķ†µķ•“ zfsģ—ģ„œ ķŒŒģ¼ģ„ ģ œź³µķ•˜ėŠ” ź²ƒģž…ė‹ˆė‹¤. ģ˜ˆė„¼ ė“¤ģ–“ ė‹¤ė„ø Linux-VServerģ—ģ„œ Samba 4 DCģ— ėŒ€ķ•“ ģøģ¦ķ•©ė‹ˆź¹Œ?

ģ¤‘źø°ģ ģœ¼ė”œ ZFS źø°ė°˜ CIFS ź³µģœ ė„¼ Samba 4 ADģ™€ ź²°ķ•©ķ•˜ėŠ” ģœ ķ‹øė¦¬ķ‹°ėŠ” _ė™ģ¼ķ•œ ģ‹œģŠ¤ķ…œģ—ģ„œ_ ģš°ģˆ˜ķ•œ ģ¼ė°˜ ķ•˜ė“œģ›Øģ–“ ģ§€ģ›ģ„ ģ œź³µķ•˜ėŠ” Linux OSė„¼ źø°ė°˜ģœ¼ė”œ ķ•œė‹¤ėŠ” ģ ģ„ ź°•ģ”°ķ•  ģˆ˜ ģ—†ģŠµė‹ˆė‹¤. ģ†Œź·œėŖØ ė¹„ģ¦ˆė‹ˆģŠ¤/ė¹„ģ˜ė¦¬ ģ• ķ”Œė¦¬ģ¼€ģ“ģ…˜ģ€ ź±°ėŒ€ķ•©ė‹ˆė‹¤.

ģ§€źøˆź¹Œģ§€ ėŖØė“  ģž‘ģ—…ģ— ź°ģ‚¬ė“œė¦½ė‹ˆė‹¤.

ė‚˜ėŠ” ė‹¤ģŒ ģŠ¤ė ˆė“œė„¼ ģš°ģ—°ķžˆ ė°œź²¬ķ–ˆģŠµė‹ˆė‹¤.
https://lists.samba.org/archive/samba/2012-August/168660.html

ģš”ģ•½ķ•˜ė©“ Samba 4ģ—ėŠ” vfs_zfsaclģ“ė¼ėŠ” acl ėŖØė“ˆģ“ ģžˆģœ¼ė©° ģ“ėŠ” Sambaź°€ źø°ė³ø ZFS aclģ„ ģ‚¬ģš©ķ•  ģˆ˜ ģžˆė„ė” Solarisģ—ģ„œ ģ‚¬ģš©ė©ė‹ˆė‹¤. ģ“ ėŖØė“ˆģ„ zfsonlinuxģ™€ ķ•Øź»˜ ģ‚¬ģš©ķ•  ģˆ˜ ģžˆģŠµė‹ˆź¹Œ? Linuxģ˜ ģ‚¬ģš©ģž ź³µź°„ģ—ģ„œ ķ•„ģš”ķ•œ APIė„¼ ģ‚¬ģš©ķ•  ģˆ˜ ģžˆģŠµė‹ˆź¹Œ?

@kisg ģ¢‹ģ€ ģ§ˆė¬øģž…ė‹ˆė‹¤. ģ“ź²ƒģ€ ģ œź°€ Sambaģš© vfs_zfsacl ėŖØė“ˆģ— ėŒ€ķ•“ ģ²˜ģŒ ė“¤ģ–“ė³ø ź²ƒģž…ė‹ˆė‹¤. ėˆ„źµ°ź°€ėŠ” ź·øė“¤ģ“ źø°ėŒ€ķ•˜ėŠ” ģøķ„°ķŽ˜ģ“ģŠ¤ė„¼ ź²°ģ •ķ•˜źø° ģœ„ķ•“ ģ•½ź°„ģ˜ ė…øė „ģ„ źø°ģšøģ—¬ģ•¼ ķ•  ź²ƒģž…ė‹ˆė‹¤. ź·øź²ƒģ“ ė¬“ģ—‡ģøģ§€ģ— ė”°ė¼ ģš°ė¦¬ėŠ” ź·øź²ƒģ„ ģ œź³µķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤. ė²ˆģ—­ģ“ ģ™„ė£Œė˜ģ§€ ģ•Šģ€ ź²½ģš°ģ—ė„ Linux ģƒģžģ—ģ„œ ACLģ„ ź“€ė¦¬ķ•  ģˆ˜ ģ—†ėŠ” ė¬øģ œź°€ ź³„ģ† ė°œģƒķ•©ė‹ˆė‹¤.

ģ†ŒģŠ¤ė„¼ ź°„ė‹Øķžˆ ģ‚“ķŽ“ė“¤ģŠµė‹ˆė‹¤.
: ķ˜„ģž¬ vfs_zfsacl.cģ˜ ģ‚¼ė°” v4-0 ģ•ˆģ • ź°€ģ§€ ė²„ģ „ģ„ ģ°¾ģ„ ģˆ˜ ģžˆģŠµė‹ˆė‹¤ git.samba.orgģ„ .

ė‹Øģˆœķžˆ ė‚“ė¶€ Samba ķ‘œķ˜„ģ—ģ„œ źø°ė³ø SunOS NFSv4 acl/facl APIė”œ ė³€ķ™˜ķ•©ė‹ˆė‹¤. ģ“ APIėŠ” ģžģ²“ NFSv4 acl źµ¬ķ˜„ ģ£¼ģœ„ģ— ģ–‡ģ€ ģ‚¬ģš©ģž ź³µź°„ ėž˜ķ¼ė„¼ ģ‚¬ģš©ķ•˜ģ—¬ FreeBSDģ—ģ„œė„ źµ¬ķ˜„ė©ė‹ˆė‹¤.

ģ“ ė¶„ģ„ģ— ė”°ė„“ė©“ Linuxģ—ģ„œ ģ“ źµ¬ķ˜„ģ„ ģž¬ģ‚¬ģš©ķ•  ģˆ˜ ģ—†ģŠµė‹ˆė‹¤. ėŒ€ģ‹  zfsonlinuxģ˜ richacl ķ†µķ•©ģ“ ģ™„ė£Œė˜ė©“ librichacl ė¼ģ“ėøŒėŸ¬ė¦¬ė„¼ ģ‚¬ģš©ķ•˜ģ—¬ Sambaģš©ģœ¼ė”œ ģœ ģ‚¬ķ•˜ź²Œ ź°„ė‹Øķ•œ(1000ģ¤„ ėÆøė§Œ) vfs_richacl ėŖØė“ˆģ„ ė§Œė“¤ ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

richacl ģ»¤ė„ ķŒØģ¹˜ė„¼ ėŒ€ģ¶© ģ‚“ķŽ“ė³“ė©“ zfsonlinux ķ†µķ•©ģ€ ģ‹¤ģ œė”œ ģ»¤ė„ģ„ ķŒØģ¹˜ķ•˜ģ§€ ģ•Šź³ ė„ ķ•  ģˆ˜ ģžˆėŠ” ź²ƒģ²˜ėŸ¼ ė³“ģž…ė‹ˆė‹¤. ė‹Øģ§€ richacl ģ½”ė“œģ˜ ķ•„ģš”ķ•œ ė¶€ė¶„(ė°ģ“ķ„° źµ¬ģ”° ė° xattr ė³€ķ™˜)ģ„ ģ»¤ė„ ė²„ģ „ģš© zfs ķŠøė¦¬ė”œ ėŒģ–“ģ˜¤źø°ė§Œ ķ•˜ė©“ ė©ė‹ˆė‹¤. źø°ė³øģ ģœ¼ė”œ ģ§€ģ›ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. ģ“ź²ƒģ€ ģš°ė¦¬(ģš°ė¦¬ ķšŒģ‚¬)ź°€ ķ‘œģ¤€ Ubuntu LTS ģ»¤ė„ģ„ ģ‹¤ķ–‰ķ•˜ź³  zfsonlinuxė§Œ ģ¶”ź°€ ėŖØė“ˆė”œ ź°€ģ øģ˜¤źø°ė„¼ ģ›ķ•˜źø° ė•Œė¬øģ— ģ¤‘ģš”ķ•©ė‹ˆė‹¤.

ź·øėŸ¬ė‚˜ richaclģ“ ģ—¬ģ „ķžˆ ģœ ģ§€ ź“€ė¦¬ė˜ź³  ģžˆėŠ”ģ§€(ģ €ģž„ģ†Œź°€ ģ‹¤ģ œė”œ ģµœģ‹  ģƒķƒœė”œ ģœ ģ§€ė˜ģ§€ ģ•ŠģŒ), ė°”ė‹ė¼ ģ»¤ė„ģ— ķ¬ķ•Øė  ģ˜ˆģ •ģøģ§€ ķ™•ģ‹¤ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤.

ė‚˜ėŠ” richacl patchsetģ˜ ģž‘ģ„±ģžģ—ź²Œ ģ—°ė½ģ„ ģ·Øķ–ˆģŠµė‹ˆė‹¤. ź·øėŠ” ė‹¤ģŒ ģ‹¤ķ—˜ģ ģø richacl vfs ėŖØė“ˆģ„ ģ§€ģ ķ–ˆģŠµė‹ˆė‹¤. v4acls-experimental/samba.git

ė”°ė¼ģ„œ zfs ģžģ²“ģ˜ richacl ģ§€ģ›ģ„ ģ œģ™øķ•˜ź³  ź±°ģ˜ ėŖØė“  ė¶€ė¶„ģ“ ģ œģžė¦¬ģ— ģžˆėŠ” ź²ƒģ²˜ėŸ¼ ė³“ģž…ė‹ˆė‹¤(ė˜ėŠ” ģ ģ–“ė„ ģ‹¤ķ—˜ģ ģø ķ˜•ķƒœė”œ ģ”“ģž¬ķ•Ø).

ģ‚¼ė°” ģŖ½ģ—ģ„œ libsunacl.cė„¼ Linuxė”œ ģ“ģ‹ķ•˜ėŠ” ź²ƒģœ¼ė”œ ģ¶©ė¶„ķ•  ģˆ˜ ģžˆģŠµė‹ˆź¹Œ?

http://sourceforge.net/projects/libsunacl/

ź·øėŸ¬ė‚˜ ė‚“ź°€ ģ“ķ•“ķ•˜ėŠ” ķ•œ "aclmode"ėŠ” zfsonlinuxģ—ģ„œ ģ—¬ģ „ķžˆ ėˆ„ė½ė  ź²ƒģž…ė‹ˆė‹¤.

ė‚˜ėŠ” ģš°ė¦¬ź°€ ģ•„ģ§ ģ–“ė–¤ ķ˜•ķƒœģ˜ cl ģ§€ģ›ģ„ ķ•˜ģ§€ ģ•ŠėŠ”ģ§€ģ”°ģ°Ø ėŖØė„“ź² ė‹¤. ģ™œ ź°€ģ§€ź³ 
zfs aclsź°€ ģ¼œģ ø ģžˆģ§€ ģ•ŠģŠµė‹ˆź¹Œ? chmod ė° lsģ˜ ģ½”ė“œė„¼ ģ•Œź³  ģžˆģŠµė‹ˆė‹¤.
exist.a getfacl ģŠ¤ķƒ€ģ¼ getzaclģ€ ģ§€źøˆģƤ ģ œź³µė˜ģ—ˆģ„ ź²ƒģž…ė‹ˆė‹¤.ķ™•ģ‹¤ķ•©ė‹ˆė‹¤.
ź·øėž˜ė„ aclsź°€ ģ—†ėŠ” ė°ėŠ” ź·øėŸ“ė§Œķ•œ ģ“ģœ ź°€ ģžˆģŠµė‹ˆė‹¤.
2013ė…„ 2ģ›” 15ģ¼ ģ˜¤ķ›„ 2ģ‹œ 7ė¶„ģ— "franx" [email protected]ģ“ ė‹¤ģŒź³¼ ź°™ģ“ ģ¼ģŠµė‹ˆė‹¤.

ģ‚¼ė°” ģŖ½ģ—ģ„œ libsunacl.cė„¼ Linuxė”œ ģ“ģ‹ķ•˜ėŠ” ź²ƒģœ¼ė”œ ģ¶©ė¶„ķ•  ģˆ˜ ģžˆģŠµė‹ˆź¹Œ?

http://sourceforge.net/projects/libsunacl/

ź·øėŸ¬ė‚˜ ė‚“ź°€ ģ“ķ•“ķ•˜ėŠ” ķ•œ "aclmode"ėŠ” zfsonlinuxģ—ģ„œ ģ—¬ģ „ķžˆ ėˆ„ė½ė  ź²ƒģž…ė‹ˆė‹¤.

ā€”
ģ“ ģ“ė©”ģ¼ģ— ģ§ģ ‘ ė‹µģž„ķ•˜ź±°ė‚˜ Gi tHubhttps://github.com/zfsonlinux/zfs/issues/170#issuecomment -13630736ģ—ģ„œ ķ™•ģøķ•˜ģ„øģš”.

zfs aclģ“ ģ§€ģ›ė©ė‹ˆė‹¤
ģ‹œķ—˜:
acl ė§ˆģš“ķŠø ģ˜µģ…˜ģ“ ķ™œģ„±ķ™”ėœ ė‹¤ė„ø ķŒŒģ¼ ģ‹œģŠ¤ķ…œģ˜ smb ź³µģœ ģ— ķŒŒģ¼ģ„ ė§Œė“¤ź³  Windowsģ—ģ„œ ACLģ„ ģ„¤ģ •ķ•©ė‹ˆė‹¤.

aclinherit=passthroughė„¼ ģ‚¬ģš©ķ•˜ģ—¬ zfsonlinux ė³¼ė„Øģ—ģ„œ ķ•“ė‹¹ ķŒŒģ¼ģ„ ģ“ė™ķ•©ė‹ˆė‹¤.
aclsėŠ” ė³“ģ”“..

Wath atmģ—ėŠ” ģ†”ė£Øģ…˜ģ“ ģ—†ģŠµė‹ˆė‹¤. ģ‚¼ė°”ģ—ģ„œ ģˆ˜ķ–‰ķ•˜ėŠ” ź²ƒģž…ė‹ˆė‹¤.

acl_xattr ė˜ėŠ” acl_tdbėŠ” ģ“ėŸ¬ķ•œ źµ¬ģ„±ģ—ģ„œ ģ˜¬ė°”ė„“ź²Œ ģž‘ė™ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. bsdģ—ģ„œėŠ” vfs_zfsaclģ„ ģ‚¬ģš©ķ•©ė‹ˆė‹¤.

zfs2bsdģ˜ ė²ˆģ—­źø°ģ²˜ėŸ¼ ė³“ģ“ėŠ” libsunacl ģ—¬ė¬¼ķ†µ

ė‚“ ģ§ˆė¬øģ€ ė°”ė³“ ź°™ģ§€ė§Œ ģš°ė¦¬ź°€ CLģ„ ģ§€ģ›ķ•˜ėŠ”ģ§€ ģ—¬ė¶€ė„¼ ėŖ…ķ™•ķ•˜ź²Œ ģ“ķ•“ķ•˜ź³  ģ‹¶ģŠµė‹ˆė‹¤. ģ„¤ģ¹˜ėœ ģš°ė¶„ķˆ¬-zfsė³“ė‹¤ VBox ģš°ė¶„ķˆ¬ ģµœģ†Œ ģ„œė²„ 12.04 LTSė„¼ ė§Œė“¤ź³  ķ’€ w ėŖ…ė ¹ģ„ ģƒģ„±ķ–ˆģŠµė‹ˆė‹¤.

'mypool'ģ— ėŒ€ķ•œ źø°ė”:
2013-05-05.15:12:49 zpool ģƒģ„± -f mypool /dev/disk/by-id/ata-VBOX_HARDDISK_VB88a04e0d-d8d1e7a4

'ķƒ±ķ¬'ģ— ėŒ€ķ•œ źø°ė”:
2013-04-30.13:44:54 zpool ķƒ±ķ¬ ģƒģ„± /root/vol1
2013-05-01.00:13:33 zfs ģ„øķŠø aclinherit=ķ†µź³¼ ķƒ±ķ¬
2013-05-05.13:50:14 zfs set dedup=on tank

ķƒ±ķ¬ėŠ” ė¬øģ œ ģ—†ģ“ setfaclģ„ ģ§€ģ›ķ•©ė‹ˆė‹¤.
mypoolģ€ ģ§€ģ›ė˜ģ§€ ģ•Šģœ¼ė©° ģž‘ģ—…ģ“ ģ§€ģ›ė˜ģ§€ ģ•ŠėŠ”ė‹¤ź³  ė§ķ•©ė‹ˆė‹¤.

ģ‚¼ė°”ģ™€ ķ•Øź»˜ zfsė„¼ ģ‚¬ģš©ķ•˜ź³  ķ“ė”ģ— ėŒ€ķ•œ ģ—¬ėŸ¬ ģ‚¬ģš©ģž ģ•”ģ„øģŠ¤ė„¼ ģ œģ–“ķ•“ģ•¼ ķ•©ė‹ˆė‹¤. ź·øėŸ°
root@server :~# setfacl -mg: ģ‚¬ģš©ģž :--- test4v007/

ZFSģš© richacls ķŒØģ¹˜ė„¼ źµ¬ķ˜„ķ•˜ź³  ģ‹¶ģ§€ė§Œ ZFSģ— ėŒ€ķ•œ ź²½ķ—˜ģ“ ģ „ķ˜€ ģ—†źø° ė•Œė¬øģ— ZFSonLinux ź°œė°œģž ģ¤‘ ķ•œ ėŖ…ģ“ ė„ģ›€ģ„ ģ œź³µķ•  ģˆ˜ ģžˆģœ¼ė©“ ģ¢‹ģ„ ź²ƒģž…ė‹ˆė‹¤(ėŒ€ė¶€ė¶„ ķžŒķŠø ė° ķ† ė”  ķ˜•ģ‹).

ģ“ź±“ ė¤ģœ¼ė”œ ė“œė¦¬ź³  ģ‹¶ģ€ė°...

@behlendorf - ģ“ģ œ ģ•ˆģ •ģ ģø ķŒŒģ¼ ģ‹œģŠ¤ķ…œ ė¦“ė¦¬ģŠ¤ź°€ ģƒź²¼ģŠµė‹ˆė‹¤. ģ“ ģž‘ģ—…ģ“ ģ–øģ œź¹Œģ§€ ģ™„ė£Œė ģ§€ģ— ėŒ€ķ•œ ķ™•ģ‹¤ķ•œ ģ¼ģ •ģ“ ģžˆģŠµė‹ˆź¹Œ? ė§ˆģ¼ģŠ¤ķ†¤ 0.8ģ„ ģœ„ķ•“ ėÆøė¤˜ė‹¤ėŠ” ź²ƒģ„ ģ•Œź³  ģžˆģ§€ė§Œ ķ˜„ģž¬ ė¦“ė¦¬ģŠ¤ ģ†ė„ģ—ģ„œėŠ” ėŖ‡ ė…„ģ“ ź±øė¦“ ģˆ˜ ģžˆģŠµė‹ˆė‹¤. ģ–“ė–¤ ģ‹ģœ¼ė”œė“  ģ•žģœ¼ė”œ ź°€ģ øģ˜¬ ģˆ˜ ģžˆģŠµė‹ˆź¹Œ?

ģš°ė¦¬ėŠ” Sambaė„¼ ģ‚¬ģš©ķ•˜ģ—¬ ķ”„ė”œķ•„ ģŠ¤ķ† ė¦¬ģ§€ NAS ģ„œė²„ģ— ė°°ķ¬ķ•˜ėŠ” ģž‘ģ—…ģ„ ģ§„ķ–‰ķ•˜ź³  ģ‹¶ģ§€ė§Œ ACLģ“ ģ—†ė‹¤ėŠ” ź²ƒģ€ ģš°ė¦¬ģ˜ ėŖØė“  ź²½ķ—˜ źø°ė°˜ģ“ Linuxģ— ģžˆźø° ė•Œė¬øģ— ģ‹¤ģ œė”œ ķ•˜ź³  ģ‹¶ģ§€ ģ•Šģ€ FreeBSDė„¼ ź³ ģˆ˜ķ•“ģ•¼ ķ•œė‹¤ėŠ” ź²ƒģ„ ģ˜ėÆøķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

ė‚˜ėŠ” ź·øź²ƒģ“ ģ™„ģ „ķžˆ ģ£¼ģ œģ—ģ„œ ė²—ģ–“ė‚˜ģ§€ ģ•Šźø°ė„¼ ė°”ėžė‹ˆė‹¤.
ė°ė¹„ģ•ˆ kFreebsdė„¼ ģ‚¬ģš©ķ•“ ė³“ģ…ØģŠµė‹ˆź¹Œ?

ź±°ģ˜ ė¦¬ėˆ…ģŠ¤ź°™ģ€..

@sopmot - ģ „ģ— ė³“ģ•˜ź³  ķ”„ė”œė•ģ…˜ ģ¤€ė¹„ź°€ ė˜ģ§€ ģ•Šģ€ ź²ƒģœ¼ė”œ ģ¼ģ¶•ķ–ˆģ§€ė§Œ ė¹ ė„“ź²Œ ģ½ģ–“ė³“ė‹ˆ ZoLė³“ė‹¤ ģ „ķˆ¬ ģ¤€ė¹„ź°€ ė˜ģ–“ ģžˆėŠ” ź²ƒ ź°™ģŠµė‹ˆė‹¤. ė°”ė”œ ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤.

ģ¢‹ģ€ ģ™øģ¹Ø, ģ˜¬ė°”ė„ø źøøė”œ ģ•ˆė‚“ķ•“ ģ£¼ģ…”ģ„œ ź°ģ‚¬ķ•©ė‹ˆė‹¤. ė¬“ė”€ķ•Øģ— ėŒ€ķ•“ ģ‚¬ź³¼ė“œė¦½ė‹ˆė‹¤.

kfreebsdė„¼ ź³„ģ† ė³“ź³  ģžˆėŠ”ė° iscsi, nfsv4 ė°
kvm ź°€ģƒķ™”ģ™€ ė™ģ¼ķ•©ė‹ˆė‹¤. ė£ØķŠøė”œ ģ‚¬ģš©ķ•˜ėŠ” ź²ƒģ— ėŒ€ķ•“ ģ§„ģ§€ķ•˜ź²Œ ģƒź°ķ–ˆģŠµė‹ˆė‹¤.
ź·ø ė‹Øģ ģ“ ė“œėŸ¬ė‚  ė•Œź¹Œģ§€
2013ė…„ 5ģ›” 19ģ¼ ģ˜¤ģ „ 9ģ‹œ 50ė¶„ģ— "Tamas Papp" [email protected]ģ“ ģž‘ģ„±ķ–ˆģŠµė‹ˆė‹¤.

ė‚˜ėŠ” ź·øź²ƒģ“ ģ™„ģ „ķžˆ ģ£¼ģ œģ—ģ„œ ė²—ģ–“ė‚˜ģ§€ ģ•Šźø°ė„¼ ė°”ėžė‹ˆė‹¤.
ė°ė¹„ģ•ˆ kFreebsdė„¼ ģ‚¬ģš©ķ•“ ė³“ģ…ØģŠµė‹ˆź¹Œ?

ź±°ģ˜ ė¦¬ėˆ…ģŠ¤ź°™ģ€..

ā€”
ģ“ ģ“ė©”ģ¼ģ— ģ§ģ ‘ ė‹µģž„ķ•˜ź±°ė‚˜ Gi tHubhttps://github.com/zfsonlinux/zfs/issues/170#issuecomment -18120673ģ—ģ„œ ķ™•ģøķ•˜ģ„øģš”.
.

ģ“ ė¬øģ œź°€ ķ•“ź²°ė˜ėŠ” ź²ƒė„ ė³“ź³  ģ‹¶ģŠµė‹ˆė‹¤. ė¶ˆķ–‰ķžˆė„ ģš”ģ¦˜ ģ‹œź°„ģ“ ė¶€ģ”±ķ•˜ģ—¬(ģ €ģˆ˜ģ¤€/ģ»¤ė„ģ— ėŒ€ķ•“ ģž˜ ėŖØė¦…ė‹ˆė‹¤), ź·øėž˜ģ„œ ģŠ¤ģŠ¤ė”œė„¼ ė„ģšø ģˆ˜ ģžˆėŠ” ź²Œ ė§Žģ§€ ģ•ŠģŠµė‹ˆė‹¤. ķŠ¹ģ • ė””ė ‰ķ† ė¦¬ģ— ģžˆėŠ” ģƒˆ ķŒŒģ¼ģ— ėŒ€ķ•“ ķŠ¹ģ • ź¶Œķ•œģ„ ģ ģš©ķ•©ė‹ˆė‹¤; ģ €ėŠ” ź³µź°œģ ģœ¼ė”œ ģ‚¬ģš© ź°€ėŠ„ķ•œ ķ“ė”ģ— ķŒŒģ¼ģ„ ė„£ėŠ” ź²½ģš°ź°€ ė§Žģœ¼ė©°, umaskė„¼ ė‹¤ģŒź³¼ ź°™ģ“ ģ„¤ģ •ķ•˜ź³  ģ‹¶ģ§€ ģ•Šźø° ė•Œė¬øģ— ķŒŒģ¼ģ“ ķŽøģ•ˆķ•œ ź¶Œķ•œģœ¼ė”œ ģžė™ ģ„¤ģ •ė  ģˆ˜ ģžˆė‹¤ė©“ ģ¢‹ģ„ ź²ƒģž…ė‹ˆė‹¤. ė‚“ź°€ ė§Œė“œėŠ” ėŒ€ė¶€ė¶„ģ˜ ķŒŒģ¼ģ— ėŒ€ķ•“ ģžģœ ģ£¼ģ˜ģ ģ“ė©° ź²°źµ­ ė‚“ ķ™ˆ ķ“ė”ģ— ģžˆģŠµė‹ˆė‹¤.OSOL/FreeBSDģ—ģ„œėŠ” NFSv4 ACLģ„ ģ‚¬ģš©ķ•˜ģ—¬ ģ“ ģž‘ģ—…ģ„ ģˆ˜ķ–‰ķ•©ė‹ˆė‹¤. ofģ€(ėŠ”) 30ė¶„ė§ˆė‹¤ ź“€ė Ø ė””ė ‰ķ† ė¦¬ģ— ėŒ€ķ•“ permsė„¼ ģž¬ź·€ģ ģœ¼ė”œ ģ„¤ģ •ķ•˜ėŠ” cronjobģ„ ģ‹¤ķ–‰ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤.

ģ°øź³ ė”œ ģ‚¬ėžŒė“¤ģ€ ė‚˜ģ™€ ź°™ģ€ ģ‹¤ģˆ˜ė„¼ ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. - Debian kFreeBSDėŠ” ZFS ģ§€ģ›ģ— ģ ķ•©ķ•˜ģ§€ė§Œ ACLģ€ ģ—¬ģ „ķžˆ ā€‹ā€‹userlandģ—ģ„œ ģž‘ė™ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. "Function Not Implemented"ė¼ėŠ” ė©”ģ‹œģ§€ź°€ ķ‘œģ‹œė©ė‹ˆė‹¤. - Debian ė²„ź·ø ģ°øģ”°: http:// bugs.debian.org/cgi-bin/bugreport.cgi?bug=607573

@iamacarpet ģ“ źø°ėŠ„ģ“ ķ•„ģš”ķ•œ ģ‚¬ėžŒģ“ ģž‘ģ—…ķ•  ģ‹œź°„ģ“ ģƒźø°ė©“ ė°”ė”œ ė°œģƒķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤. ķ˜„ģž¬ ķ”„ė”œģ ķŠøģ˜ ģ£¼ģš” ė™ģøģ€ ACLģ„ ė§Žģ“ ģ‚¬ģš©ķ•˜ģ§€ ģ•Šģœ¼ėƀė”œ ģš°ģ„  ģˆœģœ„ ėŖ©ė”ģ˜ ė§Ø ģ•„ėž˜ģ— ģžˆģŠµė‹ˆė‹¤. ź·øėŸ¬ė‚˜ ģ“ ģ§€ģ›ģ“ ķ•„ģš”ķ•œ ģ‚¬ėžŒģ“ ė›°ģ–“ė“¤ģ–“ ė” ė¹Øė¦¬ ķ•˜ėŠ” ź²ƒģ„ ė§‰ģ„ ģˆ˜ ģžˆėŠ” ź²ƒģ€ ģ—†ģŠµė‹ˆė‹¤. ģ£„ģ†”ķ•©ė‹ˆė‹¤ė§Œ, ģ“ź²ƒģ€ ė‹Øģ§€ ģƒķ™©ģ˜ ķ˜„ģ‹¤ģž…ė‹ˆė‹¤.

ģ•ˆė…•ķ•˜ģ‹­ė‹ˆź¹Œ,

ė°±ģ—… ģ–“ķ”Œė¼ģ“ģ–øģŠ¤ģ—ģ„œ zfsonlinuxė„¼ ģ‚¬ģš©ķ•˜ź³  ACLģ“ ķ†µķ•© ėŖ©ģ ģ— ģ¤‘ģš”ķ•˜ė‹¤ź³  ģƒź°ķ•©ė‹ˆė‹¤. Windows ģ»“ķ“Øķ„°ģ—ģ„œ ZFS ź³µģœ  ė³¼ė„Øģ˜ ź¶Œķ•œ ė³€ź²½ź³¼ ź°™ģ€ ėŖ‡ ź°€ģ§€ ģ¼ė°˜ģ ģø ģž‘ģ—…ģ“ ķ•„ģš”ķ•©ė‹ˆė‹¤.

ACLģ€ ģ•„ģ§ ė”œė“œė§µģ— ģžˆģŠµė‹ˆź¹Œ?

ź°ģ‚¬ ķ•“ģš”.

@n1mh ė²„ģ „ 0.8.0ģœ¼ė”œ ģ˜ˆģ •ė˜ģ–“ ģžˆģŠµė‹ˆė‹¤.

@maxximino ė•ė¶„ģ— Posix ACLģ— ėŒ€ķ•œ ģ§€ģ›ģ“ źµ¬ķ˜„ė˜ģ—ˆģŠµė‹ˆė‹¤. ė” ź“‘ė²”ģœ„ķ•œ ķ…ŒģŠ¤ķŠøė„¼ ģœ„ķ•“ ģ¤€ė¹„ėœ ķŒØģ¹˜ģ˜ ģµœģ¢… ė²„ģ „ģ— ź°€ź¹Œģš“ ķ’€ ė¦¬ķ€˜ģŠ¤ķŠø #1809ė„¼ ģ—“ģ—ˆģŠµė‹ˆė‹¤. Posix Test Suiteģ˜ ACL ģ„¹ģ…˜ģ„ ź¹”ė”ķ•˜ź²Œ ķ†µź³¼ķ–ˆģœ¼ė©° ģš°ė¦¬ėŠ” ėÆøķ•“ź²° ė¬øģ œė„¼ ģøģ‹ķ•˜ģ§€ ėŖ»ķ•©ė‹ˆė‹¤.

ģ“ źø°ėŠ„ģ„ ģ›ķ•˜ėŠ” ģ‚¬ėžŒė“¤ģ—ź²ŒėŠ” ģ œģ•ˆėœ ķŒØģ¹˜ė„¼ ķ˜„ģ‹¤ģ ģø ģ›Œķ¬ė”œė“œė”œ ķ…ŒģŠ¤ķŠøķ•  ģˆ˜ ģžˆė‹¤ė©“ ė§¤ģš° ė„ģ›€ģ“ ė  ź²ƒģž…ė‹ˆė‹¤. ģ‚¬ģš©ģž ķ™˜ź²½ģ—ģ„œ ģ˜ˆģƒķ•œ ėŒ€ė”œ ģž‘ė™ķ•˜ėŠ”ģ§€ ķ™•ģøķ•˜ģ‹­ģ‹œģ˜¤. Posix ACLģ€ źø°ė³øģ ģœ¼ė”œ ė¹„ķ™œģ„±ķ™”ė˜ģ–“ ģžˆģ§€ė§Œ ė°ģ“ķ„° ģ„øķŠøģ—ģ„œ _acltype_ ģ†ģ„±ģ„ ģ„¤ģ •ķ•˜ģ—¬ ķ™œģ„±ķ™”ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤.

zfs set acltype=posixacl pool/dataset

Linux ģŠ¤ķƒ€ģ¼ Posix ACLģ€ xattrė”œ źµ¬ķ˜„ė˜ģ–“ ė§ˆģŠ¤ķ„°ģ— ė³‘ķ•©ė˜ģ—ˆģŠµė‹ˆė‹¤. źø°ė³ø NFS ACLź³¼ ė…ė¦½ģ ģœ¼ė”œ ģ €ģž„ė˜ė©° ģ¶©ėŒķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. ģ“ źø°ėŠ„ģ„ ķ™œģ„±ķ™”ķ•˜źø° ģœ„ķ•“ ģƒˆ ė°ģ“ķ„° ģ„øķŠø ģ†ģ„± acltype ģ“ ģ¶”ź°€ė˜ģ—ˆģŠµė‹ˆė‹¤. ģµœģƒģ˜ ģ„±ėŠ„ģ„ ģœ„ķ•“ acltype=posixacl ė° xattr=sa ė„¼ ėŖØė‘ ģ„¤ģ •ķ•˜ėŠ” ź²ƒģ“ ģ¢‹ģŠµė‹ˆė‹¤. ģžģ„øķ•œ ė‚“ģš©ģ€ ģ—…ė°ģ“ķŠøėœ ė§¤ė‰“ģ–¼ ķŽ˜ģ“ģ§€ė„¼ ģ°øģ”°ķ•˜ģ‹­ģ‹œģ˜¤.

       acltype=noacl | posixacl

           Controls  whether  ACLs  are  enabled and if so what type of ACL to
           use.  When a file system has the acltype property set to noacl (the
           default)  then  ACLs are disabled.  Setting the acltype property to
           posixacl indicates Posix ACLs should be used.  Posix ACLs are  spe-
           cific  to  Linux  and are not functional on other platforms.  Posix
           ACLs are stored as an xattr and therefore will  not  overwrite  any
           existing ZFS/NFSv4 ACLs which may be set.  Currently only posixacls
           are supported on Linux.

           To obtain the best performance  when  setting  posixacl  users  are
           strongly encouraged to set the xattr=sa property.  This will result
           in the Posix ACL being stored more efficiently on disk.  But  as  a
           consequence of this all new xattrs will only be accessable from ZFS
           implementations which support the xattr=sa property.  See the xattr
           property for more details.

ķ•­ėŖ© acltype=nfs4ė„ ė‹¤ģŒź³¼ ė™ģ¼ķ•˜ź²Œ ģøģ‹ė˜ź³  ģ²˜ė¦¬ė˜ģ–“ģ•¼ ķ•©ė‹ˆė‹¤.
noaclģ“ģ§€ė§Œ ķ˜øķ™˜ģ„±ģ„ ģœ„ķ•“ ķ—ˆģš©ė©ė‹ˆź¹Œ?
2013ė…„ 10ģ›” 29ģ¼ ģ˜¤ķ›„ 3ģ‹œ 55ė¶„, "Brian Behlendorf" [email protected]
ģ¼ė‹¤:

Linux ģŠ¤ķƒ€ģ¼ Posix ACLģ€ xattrė”œ źµ¬ķ˜„ė˜ģ–“ ė‹¤ģŒģœ¼ė”œ ė³‘ķ•©ė˜ģ—ˆģŠµė‹ˆė‹¤.
ģ£¼ģø. źø°ė³ø NFS ACLź³¼ ė…ė¦½ģ ģœ¼ė”œ ģ €ģž„ė˜ė©°
ź°ˆė“±. ķ™œģ„±ķ™”ķ•˜źø° ģœ„ķ•“ ģƒˆ ė°ģ“ķ„° ģ„øķŠø ģ†ģ„± _acltype_ģ“ ģ¶”ź°€ė˜ģ—ˆģŠµė‹ˆė‹¤.
ģ“ źø°ėŠ„. ģµœź³ ģ˜ ģ„±ėŠ„ģ„ ģœ„ķ•“ ė‹¤ģŒģ„ ź°•ė „ķžˆ ź¶Œģž„ķ•©ė‹ˆė‹¤.
_acltype=posixacl_ ė° _xattr=sa_ė„¼ ėŖØė‘ ģ„¤ģ •ķ•©ė‹ˆė‹¤. ģžģ„øķ•œ ė‚“ģš©ģ€
ģ—…ė°ģ“ķŠøėœ ė§¤ė‰“ģ–¼ ķŽ˜ģ“ģ§€:

   acltype=noacl | posixacl

       Controls  whether  ACLs  are  enabled and if so what type of ACL to
       use.  When a file system has the acltype property set to noacl (the
       default)  then  ACLs are disabled.  Setting the acltype property to
       posixacl indicates Posix ACLs should be used.  Posix ACLs are  spe-
       cific  to  Linux  and are not functional on other platforms.  Posix
       ACLs are stored as an xattr and therefore will  not  overwrite  any
       existing ZFS/NFSv4 ACLs which may be set.  Currently only posixacls
       are supported on Linux.

       To obtain the best performance  when  setting  posixacl  users  are
       strongly encouraged to set the xattr=sa property.  This will result
       in the Posix ACL being stored more efficiently on disk.  But  as  a
       consequence of this all new xattrs will only be accessable from ZFS
       implementations which support the xattr=sa property.  See the xattr
       property for more details.

ā€”
ģ“ ģ“ė©”ģ¼ģ— ģ§ģ ‘ ė‹µģž„ķ•˜ź±°ė‚˜ Gi tHubhttps://github.com/zfsonlinux/zfs/issues/170#issuecomment -27348094ģ—ģ„œ ķ™•ģøķ•˜ģ„øģš”.
.

ģ“ź²Œ ģ™œ ė‹«ķ˜€ģžˆė‚˜ģš”? acltype nfs4ėŠ” ģ™„ģ „ķžˆ źµ¬ģ‹ģø ė¹„ķ‘œģ¤€ POSIX ģ“ˆģ•ˆ ACLė³“ė‹¤ _ķ›Øģ”¬_ ģ¤‘ģš”ķ•©ė‹ˆė‹¤. NFS ACLģ€ ė‹¤ė„ø ķ”Œėž«ķ¼ģ˜ ZFSģ— ėŒ€ķ•œ źø°ė³øź°’ģ“ė©° ķ›Øģ”¬ ė” ģœ ģ—°ķ•©ė‹ˆė‹¤. ė˜ķ•œ ACLģ“ ģ‹¤ģ œė”œ NFS ė° NT ACLģ— ėŖØė‘ ģž˜ ė§¤ķ•‘ė˜ėƀė”œ NFSv4ģ™€ SMB ėŖØė‘ģ—ģ„œ ģ›ķ™œķ•˜ź²Œ ė‚“ė³“ė‚¼ ģˆ˜ ģžˆģŠµė‹ˆė‹¤. POSIX ģ“ˆģ•ˆ ACLė„ ģ¢‹ģ§€ ģ•ŠģŠµė‹ˆė‹¤.

POSIX ģ“ˆģ•ˆ ACLė„ ģƒģ†ģ„ ģž˜ ģ²˜ė¦¬ķ•˜ģ§€ ėŖ»ķ•˜ź³  ģƒˆ ķŒŒģ¼ģ— ėŒ€ķ•œ źø°ė³øź°’ė§Œ ģ œź³µķ•©ė‹ˆė‹¤. NFSv4 ACLģ“ ģœ ģ¼ķ•œ ė°©ė²•ģž…ė‹ˆė‹¤.

@synnack NFS ACL ģ§€ģ›ģ˜ ģ£¼ģš” ė¬øģ œėŠ” ģ‹¤ģ œė”œ ZFS ģø”ģ— ģžˆģ§€ ģ•ŠģŠµė‹ˆė‹¤. ģš°ė¦¬ėŠ” ėŖØė“  źø°ėŠ„ģ„ ė³“ģ”“ķ–ˆģœ¼ė©° ė‚“ė¶€ģ ģœ¼ė”œ ģ‚¬ģš©ė©ė‹ˆė‹¤. ė¬øģ œėŠ” NFS ACLģ“ ģ•„ė‹Œ POSIXė„¼ ģ¤‘ģ‹¬ģœ¼ė”œ źµ¬ģ¶•ėœ Linux ģœ ķ‹øė¦¬ķ‹°(getfattr, setfattr ė“±)ģ— ģžˆģŠµė‹ˆė‹¤. ź³¼ź±°ģ— NFS ACLģ„ Linuxė”œ ź°€ģ øģ˜¤ė ¤ėŠ” ģ‹œė„ź°€ ģžˆģ—ˆģ§€ė§Œ ė‚“ź°€ ģ•„ėŠ” ķ•œ ź·ø ģ–“ėŠ ź²ƒė„ ė„ė¦¬ ģ„±ź³µķ•˜ģ§€ ėŖ»ķ–ˆģŠµė‹ˆė‹¤. ģµœź·¼ģ— ģƒķ™©ģ“ ė°”ė€Œģ§€ ģ•ŠėŠ” ķ•œ ź·øź²ƒģ“ ź°€ģž„ ķ° ģž„ģ• ė¬¼ģž…ė‹ˆė‹¤.

ė¬¼ė” ģž…ė‹ˆė‹¤. ķ•˜ģ§€ė§Œ OpenSuSEģ—ģ„œ Andreas Gruenbacherģ™€ Aneesh Kumarģ˜ ģž‘ģ—…ģ„ ė³“ė©“ ģ“ėÆø richacl ķŒØģ¹˜ė„¼ ģ œź³µķ•˜ź³  ģžˆģŠµė‹ˆė‹¤. ģ§€źøˆ ķ¬ķ•Øķ•  LKMLģ— ..

richaclģ“ NFSv4 ACLģ“ ģ•„ė‹ˆė¼ėŠ” ģ ģ„ ģ œģ™øķ•˜ź³ ėŠ” NFSv4 ģŠ¤ķ‚¤ė§ˆė„¼ POSIX ACLź³¼ ė³‘ķ•©ķ•œ ź²°ź³¼ģž…ė‹ˆė‹¤. ext4ģš©ģœ¼ė”œ ģ„¤ź³„ė˜ź³  POSIX ACL, IIRCģ˜ ėŖØė“  ģµœģ•…ģ˜ ė¶€ė¶„ģ„ ģœ ģ§€ķ•©ė‹ˆė‹¤.

ģš°ė¦¬ģ—ź²Œ ķ•„ģš”ķ•œ ź²ƒģ€ NFSv4 ACLģ„ ģ§€ģ›ķ•˜ėŠ” ķŒŒģ¼ ģ‹œģŠ¤ķ…œģ“ ACLģ„ ģ„¤ģ •ķ•  ģˆ˜ ģžˆė„ė” ķ•˜ėŠ” ģ ģ ˆķ•œ ģøķ„°ķŽ˜ģ“ģŠ¤ģž…ė‹ˆė‹¤. Linuxģ—ģ„œ ģ§€ģ›ķ•˜ėŠ” ACL ģœ ķ˜•ģ“ ģ ģ–“ė„ ķ•œ ź°€ģ§€ ė” ģžˆģŠµė‹ˆė‹¤(ģµœģ†Œķ•œ ė¶€ė¶„ģ ģœ¼ė”œėŠ”) - AFS ACL. ė”°ė¼ģ„œ ģ—¬ėŸ¬ źµ¬ģ„±ķ‘œė„¼ ģ§€ģ›ķ•  ź°€ėŠ„ģ„±ģ“ ģ œģ •ģ‹ ģ“ ģ•„ė‹Œ ź²ƒģ€ ģ•„ė‹ˆģ§€ė§Œ ź°€ģž„ ģž˜ ģ§€ģ›ķ•˜ė ¤ė©“ Solarisģ™€ ģœ ģ‚¬ķ•œ APIź°€ ķ•„ģš”ķ•  ģˆ˜ ģžˆģŠµė‹ˆė‹¤...

ė¬¼ė” , Richaclsź°€ NFSv4 ģ™øė¶€ė”œ ė‚˜ź°€ėŠ” ėŖØė“  ė¶€ė¶„ģ„ ģ¤‘ģ§€ķ•˜ė„ė” ėž­źø€ė§ķ•  ģˆ˜ ģžˆź³  userlandź°€ ė‹¹ģ‹ ģ„ ė§ģ¹˜ģ§€ ģ•ŠėŠ”ė‹¤ź³  ź°€ģ •ķ•˜ź³ (ģ•ˆė…•ķ•˜ģ„øģš”, POSIX ACL ė§ˆģŠ¤ķ¬ ė¹„ķŠø!), ź·øė¦¬ź³  ź·øė“¤ģ“ ģ‹¤ģ œė”œ ėŖØė“  NFSv4 ģ‚¬ģ–‘ģ„ źµ¬ķ˜„ķ•œė‹¤ź³  ź°€ģ •ķ•œė‹¤ė©“.. ģ†”ģ§ķžˆ ė§ķ•“ģ„œ ė§Žģ€ ź°€ģ •ģž…ė‹ˆė‹¤.

ģ‹¤ģ œė”œ ģ“ ģ†ė„ė”œ ZFSģ˜ ķŒŒģ¼ģ— ģ ģš©ķ•  ģˆ˜ ģžˆėŠ” IOCTLģ„ ģ¶”ź°€ķ•˜ėŠ” ź²ƒģ“ ģ¢‹ģŠµė‹ˆė‹¤.

ģ˜ˆ, ģ‚¬ėžŒė“¤ģ“ ķ’ė¶€ķ•œ ACL ģ•ˆģ— ė³‘ķ•©ėœ POSIX ģ“ˆģ•ˆ ACLė”œ ė¬“ģ—‡ģ„ ķ‚ķ‚ź±°ė¦¬ź³  ģžˆėŠ”ģ§€ ģž˜ ėŖØė„“ź² ģŠµė‹ˆė‹¤. ģ—‰ķ„°ė¦¬ POSIX ģ“ˆģ•ˆ ACLė³“ė‹¤ ģ†”ė¼ė¦¬ģŠ¤ ė° BSDģ™€ ķ˜øķ™˜ė˜ėŠ” ź²ƒģ“ ė” ģ¢‹ģŠµė‹ˆė‹¤.

@behlendorf :

ė¬øģ œėŠ” NFS ACLģ“ ģ•„ė‹Œ POSIXė„¼ ģ¤‘ģ‹¬ģœ¼ė”œ źµ¬ģ¶•ėœ Linux ģœ ķ‹øė¦¬ķ‹°(getfattr, setfattr ė“±)ģ— ģžˆģŠµė‹ˆė‹¤. ź³¼ź±°ģ— NFS ACLģ„ Linuxė”œ ź°€ģ øģ˜¤ė ¤ėŠ” ģ‹œė„ź°€ ģžˆģ—ˆģ§€ė§Œ ė‚“ź°€ ģ•„ėŠ” ķ•œ ź·ø ģ–“ėŠ ź²ƒė„ ė„ė¦¬ ģ„±ź³µķ•˜ģ§€ ėŖ»ķ–ˆģŠµė‹ˆė‹¤. ģµœź·¼ģ— ģƒķ™©ģ“ ė°”ė€Œģ§€ ģ•ŠėŠ” ķ•œ ź·øź²ƒģ“ ź°€ģž„ ķ° ģž„ģ• ė¬¼ģž…ė‹ˆė‹¤.

ė°°ķ¬ķŒģ€ NFS4 cl ź“€ė¦¬ė„¼ ģœ„ķ•“ "nfs4-acl-tools" ķŒØķ‚¤ģ§€ė„¼ ģ‚¬ģš©ķ•˜ź³  ģžˆģŠµė‹ˆė‹¤. nfs4_getfacl, nfs4_setfacl ė° nfs4_editfaclģ„ ģ‚¬ģš©ķ•©ė‹ˆė‹¤. zfsģ— ėŒ€ķ•“ ģ“ė„¼ ģ‹¤ķ–‰ķ•˜ė©“ ķ˜„ģž¬ "ģš”ģ²­ ģ†ģ„±ģ“ ģ§€ģ›ė˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤."ė¼ėŠ” ė©”ģ‹œģ§€ź°€ ė‚˜ķƒ€ė‚©ė‹ˆė‹¤. ģ“ź²ƒģ€ Linuxź°€ NFS4ė„¼ ģˆ˜ķ–‰ķ•˜ėŠ” ė°©ģ‹ģø ź²ƒ ź°™ģŠµė‹ˆė‹¤. ģ“ģ œ ė„źµ¬ģ™€ zfsź°€ ģ„œė”œė„¼ ģøģ‹ķ•˜ėŠ” ė°©ė²•ė§Œ ģžˆģœ¼ė©“ ė©ė‹ˆė‹¤.

@ghfields ģ˜ź²¬ ģ£¼ģ…”ģ„œ ź°ģ‚¬ķ•©ė‹ˆė‹¤. ėŖ‡ ė…„ ė™ģ•ˆ nfs4 aclģ„ ģ‚“ķŽ“ė³“ģ§€ ģ•Šģ•˜ģ§€ė§Œ ģ‚¬ģš©ģž ź³µź°„ źµ¬ģ„± ģš”ģ†Œģ—ģ„œ ģ •ė§ ģ¢‹ģ€ ģ§„ģ „ģ„ ė³“ģ“ź³  ģžˆėŠ” ź²ƒ ź°™ģŠµė‹ˆė‹¤. nfs4-acl-tools ģ†ŒģŠ¤ė„¼ ėŒ€ģ¶© ģ½ģ–“ė³“ė©“ ģ˜ˆģƒė˜ėŠ” ģ‚¬ģš©ģž/ģ»¤ė„ ģøķ„°ķŽ˜ģ“ģŠ¤ź°€ ģ›ģ‹œ xdrė”œ ģøģ½”ė”©ėœ aclģ„ ķ¬ķ•Øķ•˜ėŠ” system.nfs4_acl ė¼ėŠ” xattrģ„ ķ†µķ•“ ģ“ė£Øģ–“ģ§€ėŠ” ź²ƒģ²˜ėŸ¼ ė³“ģž…ė‹ˆė‹¤.

ģ“ ģž‘ģ—…ģ„ ģˆ˜ķ–‰ķ•˜ė ¤ė©“ ZFSģ— ģ˜ķ•“ ė‚“ė¶€ģ ģœ¼ė”œ ģ €ģž„ėœ nfs4 aclź³¼ ģœ ķ‹øė¦¬ķ‹°ģ—ģ„œ ģ˜ˆģƒķ•˜ėŠ” ķ‘œķ˜„ ģ‚¬ģ“ė„¼ ė³€ķ™˜ķ•˜ėŠ” system.nfs4_acl xattrģ— ėŒ€ķ•œ xattr ģ²˜ė¦¬źø°ė„¼ ģ¶”ź°€ķ•˜źø°ė§Œ ķ•˜ė©“ ė©ė‹ˆė‹¤. NFSv4ėŠ” ģ“ź²ƒģ˜ ģœ ģ¼ķ•œ ģ†Œė¹„ģžģ“źø° ė•Œė¬øģ— ģ»¤ė„ģ€ ģš°ė¦¬ź°€ ģ‚¬ģš©ķ•  ģˆ˜ ģžˆėŠ” ģ¼ė°˜ģ ģø źø°ėŠ„ģ„ ģ œź³µķ•˜ģ§€ ģ•Šģœ¼ėƀė”œ ģ“ ģøģ½”ė”©/ė””ģ½”ė”©ģ„ ģˆ˜ķ–‰ķ•˜ėŠ” źø°ėŠ„ģ„ ģž‘ģ„±ķ•“ģ•¼ ķ•©ė‹ˆė‹¤.

ķ‘œė©“ģ ģœ¼ė”œ ģ“ ģž‘ģ—…ģ„ ģˆ˜ķ–‰ķ•˜ėŠ” ź²ƒģ“ ė§¤ģš° ź°€ėŠ„ķ•“ ė³“ģž…ė‹ˆė‹¤. ź°œė°œģžź°€ ģ“ źø°ėŠ„ģ„ ė‹¤ė£Øź³  ģ‹¶ė‹¤ė©“ ģ¢‹ģ„ ź²ƒ ź°™ģ•„ģš”.

ģ“ ė¬øģ œėŠ” POSIX aclsź°€ źµ¬ķ˜„ė˜ģ—ˆģ„ ė•Œ ģ¢…ė£Œė˜ģ—ˆģœ¼ėƀė”œ ķŠ¹ķžˆ NFS4 aclsģ— ėŒ€ķ•“ ģƒˆ ė¬øģ œė„¼ ė§Œė“¤ģ–“ģ•¼ ķ•©ė‹ˆź¹Œ? ģ•„ė‹ˆė©“ ģ“ź±ø ė‹¤ģ‹œ ģ—“ģ–“ģ•¼ ķ• ź¹Œģš”?

@ghfields ģ“ģ— ėŒ€ķ•œ ģƒˆ ė¬øģ œė„¼ ģ—“ ā€‹ā€‹ģˆ˜ ģžˆģŠµė‹ˆė‹¤. ź·øėŸ¬ė©“ ģ¶”ģ ģ“ ė” ģ‰¬ģ›Œģ§‘ė‹ˆė‹¤.

ģ“ ķŽ˜ģ“ģ§€ź°€ ė„ģ›€ģ“ ė˜ģ—ˆė‚˜ģš”?
0 / 5 - 0 ė“±źø‰
bleepcoder.comģ€ ź³µź°œģ ģœ¼ė”œ ė¼ģ“ģ„ ģŠ¤ ėœ GitHub ģ •ė³“ė„¼ ģ‚¬ģš©ķ•˜ģ—¬ ģ „ ģ„øź³„ ź°œė°œģžģ—ź²Œ ė¬øģ œģ— ėŒ€ķ•œ ģ†”ė£Øģ…˜ģ„ ģ œź³µķ•©ė‹ˆė‹¤. ģš°ė¦¬ėŠ” GitHub, Inc. ė˜ėŠ” ķ”„ė”œģ ķŠøģ— GitHubė„¼ ģ‚¬ģš©ķ•˜ėŠ” ė‹¤ė„ø ź°œė°œģžģ™€ ź“€ė Øģ“ ģ—†ģŠµė‹ˆė‹¤. ģš°ė¦¬ėŠ” ģ„œė²„ģ—ģ„œ ė¹„ė””ģ˜¤ ė‚˜ ģ“ėÆøģ§€ė„¼ ķ˜øģŠ¤ķŒ…ķ•˜ģ§€ ģ•ŠģŠµė‹ˆė‹¤. ėŖØė“  ź¶Œė¦¬ėŠ” ķ•“ė‹¹ ģ†Œģœ ģžģ—ź²Œ ģžˆģŠµė‹ˆė‹¤.
ģ“ ķŽ˜ģ“ģ§€ģ˜ ģ†ŒģŠ¤: ģ¶œģ²˜

ģøźø°ģžˆėŠ” ķ”„ė”œź·øėž˜ė° ģ–øģ–“
ģøźø°ģžˆėŠ” GitHub ķ”„ė”œģ ķŠø
ė” ė§Žģ€ GitHub ķ”„ė”œģ ķŠø

Ā© 2024 bleepcoder.com - Contact
Made with in the Dominican Republic.
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.