# filesystem.setperm

Set unix permissions on given path.

If mode is specified then the mode will be applied to the path and files and subdirectories depending on which options are selected. Mode should be formatted as string representation of octal permissions bits.

uid the desired UID of the file user. If set to None (the default), then user is not changed.

gid the desired GID of the file group. If set to None (the default), then group is not changed.

user and group alternatively allow specifying the owner by name.

WARNING: uid, gid, `user, and group _should_ remain unset _unless_ the administrator wishes to change the owner or group of files.

stripacl setperm will fail if an extended ACL is present on path, unless stripacl is set to True.

recursive remove ACLs recursively, but do not traverse dataset boundaries.

traverse remove ACLs from child datasets.

If no mode is set, and stripacl is True, then non-trivial ACLs will be converted to trivial ACLs. An ACL is trivial if it can be expressed as a file mode without losing any access rules.

This method is a job.

Type: object

##

Type: array
No Additional Items

#### Tuple Validation

##### Parameter 1: filesystem_setperm

#### filesystem_setperm

Type: object

FilesystemSetpermArgs parameters.

No Additional Properties

##

#### Path

Type: string

Must be at least `1` characters long

##

#### Uid

Default: null

## Any of

Type: integer

Value must be greater or equal to `-1` and lesser or equal to `2147483647`

Type: null

##

#### User

Default: null

## Any of

Type: string

Must be at least `1` characters long

Type: null

##

#### Gid

Default: null

## Any of

Type: integer

Value must be greater or equal to `-1` and lesser or equal to `2147483647`

Type: null

##

#### Group

Default: null

## Any of

Type: string

Must be at least `1` characters long

Type: null

##

#### Mode

Default: null

## Any of

Type: string
Type: null

##

#### FilesystemSetpermOptions

Type: object
Default:
{ "recursive": false, "traverse": false, "stripacl": false }
No Additional Properties

##

#### Recursive

Type: boolean Default: false

##

#### Traverse

Type: boolean Default: false

If set do not limit to single dataset / filesystem.

##

#### Stripacl

Type: boolean Default: false

##

#### Result

Type: null

Required roles: FILESYSTEM_ATTRS_WRITE