I am trying to let a non root user create zfs snapshots.
I've created a permission set and given the appropriate user the privileges defined in it:
root@computer:~# zfs allow homepool/myuser
---- Permissions on homepool/myuser -----------------------------------
Permission sets:
@myuser_allowed mount,snapshot
Local+Descendent permissions:
user myuser @myuser_allowed
But when I try to create the snapshot I get the following error:
root@computer:~# su - myuser
myuser@computer:~$ /sbin/zfs snapshot homepool/myuser@`date +%F_%R`
Permission denied the ZFS utilities must be run as root.
Creating the snapshot as root works as expected:
root@computer:~# zfs snapshot homepool/myuser@`date +%F_%R`
root@computer:~# zfs list -t snapshot
NAME USED AVAIL REFER MOUNTPOINT
homepool/myuser@2016-10-30_19:01 44K - 5,32G -
homepool/myuser@2016-10-30_19:37 0 - 5,32G -
Do I need to add something else to the permission set? Or is it something with the privileges on the zfs binary?
root@computer:~# ls -l `which zfs`
-rwxr-xr-x 1 root root 103352 okt 5 15:05 /sbin/zfs
Applying the privileges described here works no better:
root@computer:~# zfs allow -s @myuser_allowed create,mount,snapshot,clone,promote homepool/myuser
root@computer:~# zfs allow homepool/myuser
---- Permissions on homepool/myuser -----------------------------------
Permission sets:
@myuser_allowed clone,create,mount,promote,snapshot
Local+Descendent permissions:
user myuser @myuser_allowed
root@computer:~# su - myuser
myuser@computer:~$ /sbin/zfs snapshot homepool/myuser@`date +%F_%R`
Permission denied the ZFS utilities must be run as root.