Al intentar hacer un backup de un LXC Container (unprivileged) al Synology por medio de NFS me da el siguiente error:

INFO: tar: /mnt/pve/SynoNFS/dump/vzdump-lxc-102-2021_06_25-22_30_40.tmp: Cannot open: Permission denied
INFO: tar: Error is not recoverable: exiting now

Este error sucede porque los "unprivileged Users" no tienen permisos para crear directorios temporales en el destino, por lo que dará error, pero para solucionarlo podemos hacer cualquiera de estos métodos, que no son únicamente para Synology sino para cualquier NFS Server.

Método 1: (Activar el 'root_squash' )

Básicamente debemos activar el modo "root_squash" en el servidor NFS, dependiendo del servidor NFS que usemos tendremos que montar la unidad con los parámetros, quedado algo así: (por ejemplo)

(rw,sync,no_wdelay,root_squash,insecure_locks,sec=sys,anonuid=1024,anongid=100)

En mi caso utilizo un Synology por lo que la configuración la puedo hacer por medio de la GUI. (Synology)

  1. Vamos al Share Folder y a la pestaña "NFS Permissions", luego a Editar.

2. Seleccionamos "Map root to admin" en la sección "Squash"

Método 2: (Directorio temporal en vzdump.conf)

En este método vamos activar un directorio temporal para los backups antes de ser enviados al servidor NFS.

  1. Vamos a la consola de Proxmox editamos el archivo vzdump.conf
nano /etc/vzdump.conf
-- OR --
vi /etc/vzdump.conf

2. Alli veremos la opción "tmpdir " comentada, así que vamos a quitarle el "#" y reemplazar DIR por un directorio temporal. Puedes utilizar el directorio que quieras pero ya que es para archivos temporales yo usare "/tmp"

#tmpdir: DIR

-- Reemplazar por: --

tmpdir: /tmp

Log del error:

INFO: starting new backup job: vzdump 102 --remove 0 --compress zstd --mode snapshot --storage SynoNFS --node pve1
INFO: Starting Backup of VM 102 (lxc)
INFO: Backup started at 2021-06-25 22:30:40
INFO: status = running
INFO: CT Name: vicolinker
INFO: including mount point rootfs ('/') in backup
INFO: backup mode: snapshot
INFO: ionice priority: 7
INFO: create storage snapshot 'vzdump'
  Logical volume "snap_vm-102-disk-0_vzdump" created.
INFO: creating vzdump archive '/mnt/pve/SynoNFS/dump/vzdump-lxc-102-2021_06_25-22_30_40.tar.zst'
INFO: tar: /mnt/pve/SynoNFS/dump/vzdump-lxc-102-2021_06_25-22_30_40.tmp: Cannot open: Permission denied
INFO: tar: Error is not recoverable: exiting now
INFO: cleanup temporary 'vzdump' snapshot
  Logical volume "snap_vm-102-disk-0_vzdump" successfully removed
ERROR: Backup of VM 102 failed - command 'set -o pipefail && lxc-usernsexec -m u:0:100000:65536 -m g:0:100000:65536 -- tar cpf - --totals --one-file-system -p --sparse --numeric-owner --acls --xattrs '--xattrs-include=user.*' '--xattrs-include=security.capability' '--warning=no-file-ignored' '--warning=no-xattr-write' --one-file-system '--warning=no-file-ignored' '--directory=/mnt/pve/SynoNFS/dump/vzdump-lxc-102-2021_06_25-22_30_40.tmp' ./etc/vzdump/pct.conf ./etc/vzdump/pct.fw '--directory=/mnt/vzsnap0' --no-anchored '--exclude=lost+found' --anchored '--exclude=./tmp/?*' '--exclude=./var/tmp/?*' '--exclude=./var/run/?*.pid' ./ | zstd --rsyncable '--threads=1' >/mnt/pve/SynoNFS/dump/vzdump-lxc-102-2021_06_25-22_30_40.tar.dat' failed: exit code 2
INFO: Failed at 2021-06-25 22:30:42
INFO: Backup job finished with errors
TASK ERROR: job errors