---
name: "dpns-getacl"
section: "1"
platform: "linux"
package: "dpm"
version: "1.10.0-2+b3"
release: "Debian 10 (Buster)"
platforms: ["linux"]
url: "https://new.carta.tech/dpns-getacl"
---

# dpns-getacl(1)

get DPNS directory/file access control lists

## NAME

dpns-getacl - get DPNS directory/file access control lists

## SYNOPSIS

**dpns-getacl** \[**-a**\] \[**-d**\] *path*...

## DESCRIPTION

**dpns-getacl** gets the Access Control List associated with a DPNS directory/file. For each *path*, it  displays the file name, owner, the group, and the Access Control List (ACL) if present. If a directory has a default ACL, **dpns-getacl** also displays the default ACL. Regular files cannot have default ACLs.

The output looks like:

```
     # file: filename
     # owner: username
     # group: groupname
     user::perm
     user:uid:perm
     group::perm
     group:gid:perm
     mask:perm
     other:perm
     default:user::perm
     default:user:uid:perm
     default:group::perm
     default:group:gid:perm
     default:mask:perm
     default:other:perm
```

The first "user" entry gives the permissions granted to the owner of the file. The following "user" entries show the permissions granted to specific users, they are sorted in ascending order of uid. The first "group" entry gives the permissions granted to the group owner of the file. The following "group" entries show the permissions granted to specific groups, they are sorted in ascending order of gid. The "mask" entry is the maximum permission granted to specific users or groups. It does not affect the "owner" and "other" permissions. The "mask" entry must be present if there are specific "user" or "group" entries. "default" entries associated with a directory are inherited as access ACL by the files or sub-directories created in that directory. The **umask** is not used. Sub-directories also inherit the default ACL as default ACL. As soon as there is one default ACL entry, the 3 default ACL base entries (default user, default group, default other) must be present.

The entry processing conforms to the Posix 1003.1e draft standard 17.

- *path*

  specifies the DPNS pathname. If *path* does not start with **/**, it is prefixed by the content of the **DPNS\_HOME** environment variable.

- *uid*

  is displayed as the username if known else as the numeric id.

- *gid*

  is displayed as the groupname if known else as the numeric id.

- *perm*

  is expressed as a combination of characters **rwx-**

## OPTIONS

- **-a**

  only display the access ACL.

- **-d**

  only display the default ACL.

## EXAMPLES

```
dpns-getacl /dpm/dteam/test/file.log/d2
# file: /dpm/dteam/test/file.log/d2
# owner: baud
# group: c3
user::rwx
group::r-x              #effective:r-x
other::r-x
default:user::rwx
default:group::r-x
default:other::r-x
```

## EXIT STATUS

This program returns 0 if the operation was successful or \>0 if the operation failed.

## SEE ALSO

**[Castor\_limits(4)](/Castor_limits/4.md)**, **[dpns\_chmod(3)](/dpns_chmod/3.md)**, **[dpns\_chown(3)](/dpns_chown/3.md)**

## AUTHOR

**LCG Grid Deployment** Team
