How to vma extract -r fifo from zstd ?

RCK

Renowned Member
Oct 20, 2009
67
4
73
Hello All,

I'm looking to extract one vma backup directly from one file.vma.zst.
I know I could unztd the file.vma.zst first, then use "vma extract" on this file, but the challenge is to use the standard output to not write the temp .vma file :)

When restoring backup, proxmox is using such command:
Code:
zstd -q -d -c /mnt/pve/local-ext-hdd/dump/vzdump-qemu-1013-2022_06_28-16_53_40.vma.zst | vma extract -v -r /var/tmp/vzdumptmp1800767.fifo - /var/tmp/vzdumptmp1800767

But it's not working when I try the same from the command line:
Code:
set -o pipefail && zstd -q -d -c file.vma.zst | vma extract -v -r vzdumptmp.fifo - vzdumptmp

CFG: size: 292 name: qemu-server.conf
DEV: dev_id=1 size: 2147483648 devname: drive-scsi0
CTIME: Mon Jan 24 03:44:22 2022
vma: unable to open fifo vzdumptmp.fifo - No such file or directory
Trace/breakpoint trap

Did someone know how to correctly use this temp .fifo file (vma extract -r) to let me extract my file.vma.zst without writing the file.vma first ?
 
Last edited:
Hi,
just get rid of the -r vzdumptmp.fifo part of the command ;)
 
Is there a possibility to push the .raw image from vma extract directly into local-zfs storage without creating the subdir with qemu-server.conf?
Or is there a possibility to mount a .raw image directly in a VM to recover files?
 
Hi,
Is there a possibility to push the .raw image from vma extract directly into local-zfs storage without creating the subdir with qemu-server.conf?
if you restore the VM, you can specify the target storage. If you only want to restore a single drive of an archive to a certain storage, that's not easily possible right now.

Or is there a possibility to mount a .raw image directly in a VM to recover files?
As long as it's inside the vma archive, no. You need to extract it to a Proxmox VE storage and attach it. You could also consider using Proxmox Backup Server instead of vma archives, which does have support for file restore.