Restoring individual files from a backup directly back into a guest VM has been one of the often-requested features for Proxmox VE and PegaProx. With my latest addition into PegaProx, this is finally becoming a reality!

PegaProx File Level Restore
PegaProx File Level Restore

Instead of downloading files from a backup to the local system first and then manually uploading them back into the virtual machine, PegaProx can now restore selected files directly into the guest VM.

Restore files directly into your VM

The new file-level restore functionality allows operators and, depending on their assigned permissions, end users to select a guest VM and one of its available backups. Individual files can then be selected and restored directly into the running VM. This makes the entire restore process significantly easier. There is no need to download the files to a workstation, find the correct destination inside the guest, and manually transfer the files back into the VM. PegaProx handles the restore workflow and transfers the selected files directly into the guest instance.

How it works

The functionality builds on the existing file-level restore capabilities provided by Proxmox Backup Server. PegaProx uses the backup stored on PBS as the source and restores the requested files into the selected guest VM. The workflow is intentionally simple: select the guest, select the relevant backup, choose the files you want to restore, and start the restore operation. The files are then transferred directly into the VM instead of being presented as a download to the user. You can also find a demo of this workflow at YouTube.

Requirements and limitations

The initial implementation has a few requirements and limitations:

  • Backups must be stored on a Proxmox Backup Server. Local backups are currently not supported.
  • The VM must have the QEMU Guest Agent installed and enabled.
  • The VM must be running while the restore operation is performed.

For operators and end users

One of the main goals of this feature is to make file restores useful not only for infrastructure operators, but also for users of PegaProx. Depending on the permissions assigned to an account, users can perform file-level restores themselves without requiring an administrator to manually download and transfer the files.

This can be particularly useful in environments where PegaProx is used as a central management platform for multiple Proxmox VE clusters and where different users or teams are responsible for their own virtual machines.

No more download and re-upload

Previously, restoring an individual file typically meant downloading the file from the backup to the local system. The user then had to establish another connection to the VM and upload the file to its destination. This additional step is not only inconvenient, but can also become problematic when restoring larger files or when the user's workstation is not located close to the infrastructure. With direct file-level restore, the workstation is no longer used as an intermediate transfer point. PegaProx can restore the selected files directly into the guest VM.

Coming to PegaProx

With my latest addition, PegaProx makes another part of the Proxmox Backup Server workflow available directly through its management interface. Operators can restore individual files when needed, while delegated users can perform restores themselves when their permissions allow it.

The feature is currently limited to PBS-backed backups, running QEMU guests, and VMs with the QEMU Guest Agent available. These requirements are intentional for the initial implementation and provide the foundation for further improvements in the future.

Direct file-level restore is another step towards making backup management in PegaProx not only powerful for administrators, but also simple and accessible for the users operating their own virtual machines.