Ezka77 / xen-orchestra-ce

:whale: Docker & docker-compose files to deploy Xen Orchestra Community Edition (ie: from sources)

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Missing vhdimount; unable to do delta file restore

Slugger opened this issue · comments

Attempting to perform a file restore from a delta backup fails with:

backupNg.listPartitions
{
  "remote": "6a2ded23-5cba-442e-86df-d0eb95362e0f",
  "disk": "xo-vm-backups/efb291ab-a27c-17e4-e1b0-3780f051ffdf/vdis/48cedb25-5db3-4e3a-8ceb-86325bfd43cb/8be9c67f-ed5e-47fc-b9ee-d8974977c32e/20190224T110802Z.vhd"
}
{
  "errno": "ENOENT",
  "code": "ENOENT",
  "syscall": "spawn vhdimount",
  "path": "vhdimount",
  "spawnargs": [
    "/run/xo-server/mounts/6a2ded23-5cba-442e-86df-d0eb95362e0f/xo-vm-backups/efb291ab-a27c-17e4-e1b0-3780f051ffdf/vdis/48cedb25-5db3-4e3a-8ceb-86325bfd43cb/8be9c67f-ed5e-47fc-b9ee-d8974977c32e/20190224T110802Z.vhd",
    "/tmp/tmp-6817d5Yv0OSLr"
  ],
  "stdout": "",
  "stderr": "",
  "failed": true,
  "signal": null,
  "cmd": "vhdimount /run/xo-server/mounts/6a2ded23-5cba-442e-86df-d0eb95362e0f/xo-vm-backups/efb291ab-a27c-17e4-e1b0-3780f051ffdf/vdis/48cedb25-5db3-4e3a-8ceb-86325bfd43cb/8be9c67f-ed5e-47fc-b9ee-d8974977c32e/20190224T110802Z.vhd /tmp/tmp-6817d5Yv0OSLr",
  "timedOut": false,
  "killed": false,
  "message": "spawn vhdimount ENOENT",
  "name": "Error",
  "stack": "Error: spawn vhdimount ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:190:19)
    at onErrorNT (internal/child_process.js:362:16)
    at _combinedTickCallback (internal/process/next_tick.js:139:11)
    at process._tickCallback (internal/process/next_tick.js:181:9)"
} 

Sure enough, the vhdimount command is not in the container. Can this be added?

commented

Hi Slugger,

Yes you guess right there is no vhdimount mount command, I guess it comes from libvhdi. For now there is no package provided from Alpine repos ; it requires to build libvhdi. It's a bit annoying as Alpine use ulibc it may require some test (nb: it should work but ...). I'll look into it ASAP

commented

I've made an experimental version with libvhdi compiled on Alpine 3.8, if you can give it a try by using this docker image: ezka77/xen-orchestra-ce:experimental.

I was running into the same issue with the master image and can confirm that your experimental image seems to have fixed it. I am now able to file restore files from delta backups as expected now. Thanks!

commented

Great ! I'll merge these changes ASAP. Thanks for your help !

commented

libvhdi is now available in image ezka77/xen-orchestra-ce:5.38 and ezka77/xen-orchestra-ce:latest