restore Cannot mkdir: Permission denied

hackmann

Renowned Member
Jan 6, 2013
230
13
83
Guten morgen,

bei einem restore eines ct kommt folgende Meldung

Code:
tar: ./.zfs/snapshot/2023-01-13_06.00.05--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/original: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-15_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-14_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-12_06.00.07--3d: Cannot mkdir: Permission denied
Total bytes read: 1794641920 (1.7GiB, 167MiB/s)
tar: Exiting with failure status due to previous errors
unable to restore CT 100 - command 'lxc-usernsexec -m u:0:100000:65536 -m g:0:100000:65536 -- tar xpf - --lzop --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' -C /var/lib/lxc/100/rootfs --skip-old-files --anchored --exclude './dev/*'' failed: exit code 2
root@pve7:/var/lib/vz/dump#


Code:
ssdsamsung/typo3doku               96K   215G       96K  /ssdsamsung/typo3doku

Code:
root@pve7:/var/lib/vz/dump# mkdir /ssdsamsung/.zfs/test
mkdir: cannot create directory ‘/ssdsamsung/.zfs/test’: Operation not permitted

Code:
root@pve7:/var/lib/vz/dump# mkdir /rpool/.zfs/test
mkdir: cannot create directory ‘/rpool/.zfs/test’: Operation not permitted

ich kann im Ordner .zfs keinen Ornder mehr anlegen?

Code:
zpool history

2023-01-16.08:47:00 zfs create -o acltype=posixacl -o xattr=sa -o refquota=41943040k ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.08:47:12 zfs destroy -r ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.08:47:57 zfs create -o acltype=posixacl -o xattr=sa -o refquota=41943040k ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.08:48:08 zfs destroy -r ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.08:49:01 zfs rollback ssdsamsung/usbplatte/subvol-100-disk-0@2023-01-15_06.00.07--3d
2023-01-16.08:50:09 zfs create -o acltype=posixacl -o xattr=sa -o refquota=41943040k ssdsamsung/typo3doku/subvol-101-disk-0
2023-01-16.08:50:20 zfs destroy -r ssdsamsung/typo3doku/subvol-101-disk-0
2023-01-16.08:50:48 zfs create -o acltype=posixacl -o xattr=sa -o refquota=41943040k ssdsamsung/win10/subvol-100-disk-0
2023-01-16.08:50:59 zfs destroy -r ssdsamsung/win10/subvol-100-disk-0
2023-01-16.08:52:56 zpool import -c /etc/zfs/zpool.cache -aN
2023-01-16.08:55:05 zfs create -o acltype=posixacl -o xattr=sa -o refquota=41943040k ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.08:55:17 zfs destroy -r ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.08:58:38 zfs destroy -r ssdsamsung/usbplatte
2023-01-16.08:59:03 zfs create -o acltype=posixacl -o xattr=sa -o refquota=41943040k ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.08:59:14 zfs destroy -r ssdsamsung/typo3doku/subvol-100-disk-0
2023-01-16.09:15:53 zfs create ssdsamsung/usbplatte-enterprise
2023-01-16.09:16:54 zfs create -o acltype=posixacl -o xattr=sa -o refquota=41943040k ssdsamsung/usbplatte-enterprise/subvol-100-disk-0
2023-01-16.09:17:06 zfs destroy -r ssdsamsung/usbplatte-enterprise/subvol-100-disk-0

ich kopiere den dump auf einen anderen Server! Gleiches Problem?

diese Snapshots sind nicht vorhanden?

Code:
tar: ./.zfs/snapshot/2023-01-15_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-14_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-12_06.00.07--3d: Cannot mkdir: Permission denied

root@pve7:/var/lib/vz/dump# zfs list -t snap
no datasets available


Code:
arch: amd64
cores: 1
features: nesting=1
hostname: typo3doku
memory: 2464
nameserver: 192.168.50.250
net0: name=eth0,bridge=vmbr0,firewall=1,gw=192.168.50.253,hwaddr=06:35:9A:7F:68:A7,ip=192.168.50.243/24,type=veth
ostype: debian
rootfs: usbplatte-enterprise:subvol-100-disk-0,size=40G
searchdomain: zone-intern
swap: 512
unprivileged: 1


hat jemand eine IDEE?

danke
 
wie hast du denn das backup erzeugt? normalerweise sollte der .zfs ordner dort nicht enthalten sein..
 
hey, über das Webgui.

ich hatte snapshots durchgeführt,

Code:
/usr/sbin/zfSnap -a 3d usb/usbplatte/subvol-100-disk-0
/usr/sbin/zfSnap -d

dann machte ich eine Sicherung danach löschte ich diese wieder

zfs destroy

aber irgenwie sucht er diese beim restore. Also hat er bei der Sicherung auch die Snapshots mitgesichert!

Code:
tar: ./.zfs/snapshot/2023-01-15_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-14_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-12_06.00.07--3d: Cannot mkdir: Permission denied

was mich etwas wundert, dass ich im .zfs keinen Zugriff habe, auf der anderen kiste aber auch nicht. Das ist mir nicht aufgefallen.

die ct lag auf einem zvol

hm, einen Tipp`? danke
 
hey, über das Webgui.

ich hatte snapshots durchgeführt,

Code:
/usr/sbin/zfSnap -a 3d usb/usbplatte/subvol-100-disk-0
/usr/sbin/zfSnap -d

dann machte ich eine Sicherung danach löschte ich diese wieder

zfs destroy

aber irgenwie sucht er diese beim restore. Also hat er bei der Sicherung auch die Snapshots mitgesichert!

und das backup hast du mit vzdump/PVE gemacht, oder irgendwie haendisch?

Code:
tar: ./.zfs/snapshot/2023-01-15_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-14_06.00.07--3d: Cannot mkdir: Permission denied
tar: ./.zfs/snapshot/2023-01-12_06.00.07--3d: Cannot mkdir: Permission denied

was mich etwas wundert, dass ich im .zfs keinen Zugriff habe, auf der anderen kiste aber auch nicht. Das ist mir nicht aufgefallen.

das ist standard (ein mkdir in .zfs/snapshot wuerde naemlich einen snapshot erzeugen, das muss extra mit einem modulparameter erlaubt werden).

die ct lag auf einem zvol
das glaub ich nicht (deckt sich auch nicht mit der config die du weiter oben gepostet hast) ;)
hm, einen Tipp`? danke
als workaround - du kannst das tar file kopieren und dann in der kopie den .zfs ordner loeschen:

Code:
cp /pfad/vom/tar/file /pfad/zur/kopie
tar --delete --file /pfad/zur/kopie ./.zfs

gegebenfalls musst du die kopie noch dekomprimieren, damit das --delete funktioniert.
 
ich habe mal ein Verzeichniss Storage angelegt, ok, der restore ging?

danke
das ist natuerlich auch ein workaround - jetzt solltest du im container den .zfs ordner loeschen und anschliessend das volume auf zfs verschieben koennen - oder nochmal backup + restore ;)
 
danke, was meinst du damit als workaround - du kannst das tar file kopieren und dann in der kopie den .zfs ordner loeschen:!
Sorry, ich stehe gerade voll auf dem Schlauch ".zfs ordner loeschen"?

ich hatte erst auf der console snapshots gemacht, dann eine Sicherung im Webgui, danach die snapshots gelöscht.

danke
 
wenn der restore auf ein dir storage geklappt hat, brauchst du den workaround mit tar file anpassen nicht. einfach im container jetzt den .zfs ordner loeschen, dann kannst du entweder nochmal ein backup von dem container machen (dass hat dann kein .zfs drin und laesst sich auf zfs restoren), oder du benutzt "move volume" um direkt das volume auf zfs zu schieben.

edit: kann das problem reproduzieren - du hast das backup vermutlich im suspend mode gemacht?
 
Last edited:
danke, im Verzeichniss liegt ein raw datei!

Code:
root@pve7:/# ls /jochen/images/100/
vm-100-disk-0.raw

also müsste ich diese mounten und dann das .zfs löschen?
 
ich convertierte das raw zu qcow2 / dann einen mount / dann das .zfs gelöscht / dann von qcow2 wieder zu raw/ ein backup / auf zfs eingespielt!

WOW! ich bin echt beeindruckt!
 
hier noch kurz die Schritte!

Code:
 631  modprobe nbd max_part=8
  632  qemu-nbd --connect=/dev/nbd0 image.qcow2
  633  fdisk /dev/nbd0 -l
  634  mkdir /mnt/somepoint/
  635  mount /dev/nbd0p1 /mnt/somepoint/
  636  ls /mnt/somepoint/
  637  mount /dev/nbd /mnt/somepoint/
  638*
  639  mount /dev/nbd0p1 /mnt/somepoint/
  640  clear
  641  fdisk /dev/nbd0 -l
  642  ls /mnt/
  643  ls /mnt/vzsnap0/
  644  mount /dev/nbd0 /mnt/somepoint/
  645  ls /mnt/somepoint/
  646  ls -la /mnt/somepoint/
  647  cd /mnt/somepoint/
  648  rm -r .zfs
  649  cd /
  650  umount /mnt/somepoint/
  651  qemu-nbd --disconnect /dev/nbd0
  652  rmmod nbd
  653  cd /tmp
  654  ls
  655  rm vm-100-disk-0.raw
  656  qemu-img convert -f qcow2 -O raw image.qcow2 vm-100-disk-0.raw
  657  ls
  658  du -sch vm-100-disk-0.raw
  659  rm /jochen/images/100/vm-100-disk-0.raw
  660  cp vm-100-disk-0.raw /jochen/images/100/
 
du haettest auch einfach im container (pct mount/pct enter) den ordner loeschen koennen ;)
 

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!