1

I have been trying to set up the ACL on FreeNas 11.3 all day and it just does not work the way I think it should I am wondering what I am doing wrong.

All I want to do is when a user creates a file in a folder, that new file or directory it will have permissions rwxrwx---. I have tried, what I think is, every combination of owner@, group@, Group, User, and everyone@ with every permission and flag option. No matter what I set the flags for inheritance it always comes out exactly the same or denies me from creating a new file/folder.

When a new file is made, the permissions are -rw-r--r-- and when a new folder is made the permissions are drwxrwx---. When I try to change the ACLs and I set it to be recursive, then it will change the permissions of the files existing files to what I want them to be, but when I create a new file, the new file is right back to that same -rw-r--r--. I don't understand what I need to do.

I have used getfacl, So here is what is really weird. I have around 7 datasets. One is named Admin, and another is named Operations. They have the exact same output when I check them with the getfacl command, but in Operations, when I create a new file it automatically comes up with the permissions I am looking for. In Admin when I create a new file it makes it something different. Is there any reason that the ACLs would be the same but when files are created they have different permissions?

Edit

Below is the output of the mount command:

freenas-boot/ROOT/11.3-U3.2 on / (zfs, local, noatime, nfsv4acls)
devfs on /dev (devfs, local, multilabel)
tmpfs on /etc (tmpfs, local)
tmpfs on /mnt (tmpfs, local)
tmpfs on /var (tmpfs, local)
fdescfs on /dev/fd (fdescfs)
Business_Data on /mnt/Business_Data (zfs, local, nfsv4acls)
Business_Data/Share on /mnt/Business_Data/Share (zfs, local, nfsv4acls)
Business_Data/Projects on /mnt/Business_Data/Projects (zfs, local, nfsv4acls)
Business_Data/Users on /mnt/Business_Data/Users (zfs, local, nfsv4acls)
Business_Data/Archives on /mnt/Business_Data/Archives (zfs, local, nfsv4acls)
Business_Data/iocage on /mnt/Business_Data/iocage (zfs, local, nfsv4acls)
Business_Data/Operations on /mnt/Business_Data/Operations (zfs, local, nfsv4acls)
Business_Data/Marketing on /mnt/Business_Data/Marketing (zfs, local, nfsv4acls)
Business_Data/Financial on /mnt/Business_Data/Financial (zfs, local, nfsv4acls)
Business_Data/Human Resources on /mnt/Business_Data/Human Resources (zfs, local, nfsv4acls)
Business_Data/Administrative on /mnt/Business_Data/Administrative (zfs, local, nfsv4acls)
Business_Data/iocage/download on /mnt/Business_Data/iocage/download (zfs, local, nfsv4acls)
Business_Data/iocage/jails on /mnt/Business_Data/iocage/jails (zfs, local, nfsv4acls)
Business_Data/iocage/templates on /mnt/Business_Data/iocage/templates (zfs, local, nfsv4acls)
Business_Data/iocage/log on /mnt/Business_Data/iocage/log (zfs, local, nfsv4acls)
Business_Data/iocage/releases on /mnt/Business_Data/iocage/releases (zfs, local, nfsv4acls)
Business_Data/iocage/images on /mnt/Business_Data/iocage/images (zfs, local, nfsv4acls)
Business_Data/.system on /var/db/system (zfs, local, nfsv4acls)
Business_Data/.system/cores on /var/db/system/cores (zfs, local, nfsv4acls)
Business_Data/.system/samba4 on /var/db/system/samba4 (zfs, local, nfsv4acls)
Business_Data/.system/syslog-b34611ec74194ef89937f2d1ccaf453a on /var/db/system/syslog-b34611ec74194ef89937f2d1ccaf453a (zfs, local, nfsv4acls)
Business_Data/.system/rrd-b34611ec74194ef89937f2d1ccaf453a on /var/db/system/rrd-b34611ec74194ef89937f2d1ccaf453a (zfs, local, nfsv4acls)
Business_Data/.system/configs-b34611ec74194ef89937f2d1ccaf453a on /var/db/system/configs-b34611ec74194ef89937f2d1ccaf453a (zfs, local, nfsv4acls)
Business_Data/.system/webui on /var/db/system/webui (zfs, local, nfsv4acls)

Output of getfacl on Projects Dataset, and the Operations Dataset

# file: Projects
# owner: kevin
# group: ALL_emp
    group:ALL_emp:rwxpDdaARWcCos:fd-----:allow
            owner@:rwxpDdaARWcCos:fd-----:allow
            group@:rwxpDdaARWc--s:fd-----:allow
         everyone@:--------------:fd-----:allow

# file: Operations
# owner: kevin
# group: ALL_emp
    group:ALL_emp:rwxpDdaARWcCos:fd-----:allow
            owner@:rwxpDdaARWcCos:fd-----:allow
            group@:rwxpDdaARWc--s:fd-----:allow
         everyone@:--------------:fd-----:allow

When I create a file from my windows computer in Projects and run ls -al:

-rw-rwxr--+   1 kevin     ALL_emp      0 Jun 26 15:58 New Text Document.txt

When I create a file from my windows computer in Operations and run ls -al:

-rwxrwx---+  1 kevin  ALL_emp   0 Jun 26 16:01 New Text Document.txt

Please let me know if there is any other detail I can provide.

Any help or advice is greatly appreciated.

9
  • What is the output of the umask command? Jun 25, 2020 at 20:54
  • it is 022, which should give -----w--w-. I have tried setting it to 770 but I get the same thing when a file is created.
    – laxer
    Jun 25, 2020 at 20:56
  • 1
    If your assumption what the umask value means is correct then BSD then it is the opposite of what it is in Linux. I doubt that. Under Linux the umask value masks the permissions i.e. the permissions given in the umask are not granted. And execute permissions for a file have to be requested by the creating application. Jun 25, 2020 at 21:17
  • You have not shown what happens. "something goes wrong" is not enough. However my guess is mount points (I will assume that one of your attempts was correct). Did you check the ACLs with getfacl? Jun 25, 2020 at 21:53
  • 1
    @HaukeLaging umask is the same in BSD, Gnu/Linux, system-V: 755 gives ----w--w-. It is a mask, each 1 blocks a bit, thus forcing it to 0. If a bit is not blocked it is what ever the app tries to make it be. Jun 25, 2020 at 21:58

0

You must log in to answer this question.

Browse other questions tagged .