qemu-img rebase error message mentions wrong file name While doing 'qemu-img rebase' for linking to a different backing file, if the old backing file does not exist, the command fails. During this failure, the error message shown is misleading. e.g. qemu-img rebase -b throws error saying "Could not open " Ideally it should "Could not open " snippet - [root@oxy-dev ~]# qemu-img info /opt/stack/data/nova/instances/94864a64-ebf8-45e6-a777-615921216a0a/disk image: /opt/stack/data/nova/instances/94864a64-ebf8-45e6-a777-615921216a0a/disk file format: qcow2 virtual size: 20G (21474836480 bytes) disk size: 174M cluster_size: 65536 backing file: /tmp/3559241a79b79ae663ec6e3d9b75d469967b383b Format specific information: compat: 1.1 lazy refcounts: false [root@oxy-dev ~]# mv /tmp/3559241a79b79ae663ec6e3d9b75d469967b383b /tmp/3559241a79b79ae663ec6e3d9b75d469967b383a [root@oxy-dev ~]# file !$ file /tmp/3559241a79b79ae663ec6e3d9b75d469967b383a /tmp/3559241a79b79ae663ec6e3d9b75d469967b383a: x86 boot sector; partition 1: ID=0x83, active, starthead 32, startsector 2048, 409600 sectors; partition 2: ID=0x8e, starthead 159, startsector 411648, 16365568 sectors, code offset 0xc0 [root@oxy-dev ~]# file /tmp/3559241a79b79ae663ec6e3d9b75d469967b383b /tmp/3559241a79b79ae663ec6e3d9b75d469967b383b: cannot open (No such file or directory) [root@oxy-dev ~]# qemu-img rebase -b /tmp/3559241a79b79ae663ec6e3d9b75d469967b383a /opt/stack/data/nova/instances/94864a64-ebf8-45e6-a777-615921216a0a/disk qemu-img: Could not open '/opt/stack/data/nova/instances/94864a64-ebf8-45e6-a777-615921216a0a/disk': Could not open file: No such file or directory [root@oxy-dev ~]# qemu-img version 1.5.3 OS: RHEL7 - 3.10.0-229 libvirtd (libvirt) 1.2.8 I'm pretty sure this is working as intended. If you observe the code, qemu-img first opens filename. When qemu opens a file, it needs full access to it's chain of backing files - Hence, if the old backing file does not exist, opening filename fails. (Not an active qemu dev, just passing through) The full story is that in 2015, qemu probably did not note that it failed to open the overlay () because it failed to open the backing file. It does that, now, though: $ qemu-img rebase -b new.qcow2 top.qcow2 qemu-img: Could not open 'top.qcow2': Could not open backing file: Could not open 'base.qcow2': No such file or directory So that should be a fix. Max What to do if the old file has been moved? Say the backing file was /path/to/os.qcow2 and it was moved to /new/path/to/os.qcow2. How can we tell snapshot.qcow2 to update the backing file from /path/to/os.qcow2 to /new/path/to/os.qcow2?