[pve-devel] [PATCH storage v6 6/7] pvesm: add a move-volume command

Fiona Ebner f.ebner at proxmox.com
Thu Feb 13 18:21:04 CET 2025


I'd call it copy-volume, since that better fits with the default delete
behavior.

Am 20.01.25 um 12:28 schrieb Filip Schauer:
> The method can be called from the PVE shell with `pvesm move-volume`:
> 
> ```
> pvesm move-volume <source volume> <target storage> [--target-node <node>] [--delete]
> ```
> 
> For example to move a VMA backup to a Proxmox Backup Server:
> 
> ```
> pvesm move-volume \
>     local:backup/vzdump-qemu-100-2024_06_25-13_08_56.vma.zst pbs
> ```
> 
> Or move a container template to another node and delete the source:
> 
> ```
> pvesm move-volume \
>     local:vztmpl/devuan-4.0-standard_4.0_amd64.tar.gz local \
>     --target-node pvenode2 --delete
> ```
> 
> Signed-off-by: Filip Schauer <f.schauer at proxmox.com>
> ---
>  src/PVE/CLI/pvesm.pm | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/src/PVE/CLI/pvesm.pm b/src/PVE/CLI/pvesm.pm
> index d308b3d..203a441 100755
> --- a/src/PVE/CLI/pvesm.pm
> +++ b/src/PVE/CLI/pvesm.pm
> @@ -693,6 +693,8 @@ our $cmddef = {
>  	print "APIVER $res->{apiver}\n";
>  	print "APIAGE $res->{apiage}\n";
>      }],
> +    'move-volume' => [ "PVE::API2::Storage::Content", 'move', ['volume', 'target-storage'],
> +		{ node => $nodename } ],
>      'prune-backups' => [ __PACKAGE__, 'prunebackups', ['storage'], { node => $nodename }, sub {
>  	my $res = shift;
>  





More information about the pve-devel mailing list