| 1 | This patch has been taken against SAMBA_3_0 Release 20028. | 
|---|
| 2 |  | 
|---|
| 3 | The patch basically moves the GPFS-ACL functionalities into the new GPFS VFS module( vfs_gpfs ). | 
|---|
| 4 |  | 
|---|
| 5 | Please read SAMBA_3_0/source/modules/README.nfs4acls.txt - generalised README file on Samba support for NFS4-ACLS. | 
|---|
| 6 | This README file is specific for GPFS only. | 
|---|
| 7 |  | 
|---|
| 8 | Configuring GPFS ACL support | 
|---|
| 9 | =============================== | 
|---|
| 10 |  | 
|---|
| 11 | Binary: (default install path is [samba]/lib/vfs/) | 
|---|
| 12 | - gpfs.so | 
|---|
| 13 |  | 
|---|
| 14 | Its compiled by default, no additional configure option needed. | 
|---|
| 15 |  | 
|---|
| 16 | To enable/use/load this module, include "vfs objects = gpfs" in the smb.conf file under concerned share-name. | 
|---|
| 17 |  | 
|---|
| 18 | Example of smb.conf: | 
|---|
| 19 |  | 
|---|
| 20 | [smbtest] | 
|---|
| 21 | path = /gpfs-test | 
|---|
| 22 | vfs objects = gpfs | 
|---|
| 23 | nfs4: mode = special | 
|---|
| 24 | nfs4: chown = yes | 
|---|
| 25 | nfs4: acedup = merge | 
|---|
| 26 |  | 
|---|
| 27 | Adding "vfs objects = gpfs" to a share should be done only in case when NFS4 is really supported by the filesystem. | 
|---|
| 28 | (Otherwise you may get performance loss.) | 
|---|
| 29 |  | 
|---|
| 30 | ================================================== | 
|---|
| 31 | Below are some limitations listed for this module: | 
|---|
| 32 | ================================================== | 
|---|
| 33 | 1. When a child file or child directory is created, the results are a bit different from windows as specified below: | 
|---|
| 34 |  | 
|---|
| 35 | Eg: Prent directory is set to have 2 ACES - full access for owner and everyone | 
|---|
| 36 |  | 
|---|
| 37 | Default ACL for Windows: 2 aces: allow ACE for owner and everyone | 
|---|
| 38 | Default ACL for GPFS: 6 aces: allow and deny ACEs for owner, group and everyone | 
|---|
| 39 |  | 
|---|
| 40 | The below mentioned inheritance flags and its combinations are applied only to the owner ACE and not to everyone ACE | 
|---|
| 41 |  | 
|---|
| 42 | "fi"------>File Inherit | 
|---|
| 43 | "di"------>Directory Inherit | 
|---|
| 44 | "oi"------>Inherit Only | 
|---|
| 45 |  | 
|---|
| 46 |  | 
|---|
| 47 | Parent dir: no inheritance flag set | 
|---|
| 48 | Windows: index=0:                       GPFS(special mode): index=0:                    GPFS(simple mode): index=0: | 
|---|
| 49 | child File: default acl: 2 aces         child file: default acl: 6 aces         child file: default acl: 6 aces | 
|---|
| 50 | child dir: default acl: 2 aces          child dir: default acl: 6 aces          child dir: default acl: 6 aces | 
|---|
| 51 |  | 
|---|
| 52 |  | 
|---|
| 53 | Parent dir: "fi" flag set | 
|---|
| 54 | Windows: index=1:                       GPFS(special mode): index=1:                    GPFS(simple mode): index=1: | 
|---|
| 55 | child file: no flag set                 child file: "fi" flag set               child file: default acl: 6 aces | 
|---|
| 56 | child dir: "fioi" flag set              child dir: "fi" flag set                child dir: "fi" flag set | 
|---|
| 57 |  | 
|---|
| 58 |  | 
|---|
| 59 | Parent dir: "di" flag set | 
|---|
| 60 | Windows: index=2:                       GPFS(special mode): index=2:                    GPFS(simple mode): index=2: | 
|---|
| 61 | child file: default acl: 2 aces         child file: default acl: 6 aces         child file: default acl: 6 aces | 
|---|
| 62 |  | 
|---|
| 63 |  | 
|---|
| 64 | Parent dir: "fidi" flag set | 
|---|
| 65 | Windows: index=3:                       GPFS(special mode): index=3:                    GPFS(simple mode): index=3: | 
|---|
| 66 | child file: no flag set                 child file: "fidi" flag set             child file: default acl: 6 aces | 
|---|
| 67 |  | 
|---|
| 68 |  | 
|---|
| 69 | Parent dir: "fioi" flag set | 
|---|
| 70 | Windows: index=4:                       GPFS(special mode): index=4:                    GPFS(simple mode): index=4: | 
|---|
| 71 | child file: no flag set                 child file: "fi" flag set               child file: default acl: 6 aces | 
|---|
| 72 | child dir: "fioi" flag set              child dir: "fi" flag set                child dir: "fi" flag set | 
|---|
| 73 |  | 
|---|
| 74 |  | 
|---|
| 75 | Parent dir: "dioi" flag set | 
|---|
| 76 | Windows: index=5:                       GPFS(special mode): index=5:                    GPFS(simple mode): index=5: | 
|---|
| 77 | child file: default acl: 2 aces         child file: default acl: 6 aces         child file: default acl: 6 aces | 
|---|
| 78 |  | 
|---|
| 79 |  | 
|---|
| 80 | Parent dir: "fidioi" flag set | 
|---|
| 81 | Windows: index=6:                       GPFS(special mode): index=6:                    GPFS(simple mode): index=6: | 
|---|
| 82 | child file: no flag set                 child file: "fidi" flag set             child file: default acl: 6 aces | 
|---|