diff --git a/AppImage/components/virtual-machines.tsx b/AppImage/components/virtual-machines.tsx index f42c375a..b2b40502 100644 --- a/AppImage/components/virtual-machines.tsx +++ b/AppImage/components/virtual-machines.tsx @@ -1239,13 +1239,13 @@ const handleDownloadLogs = async (vmid: number, vmName: string) => {
{/* Mobile carousel container */} -
+
{/* Page 0: Main content */} -
+
{selectedVM && ( <> @@ -1369,8 +1369,8 @@ const handleDownloadLogs = async (vmid: number, vmName: string) => {
{/* Page 1: Backups */} -
-
+
+

Create Backup

diff --git a/AppImage/scripts/flask_server.py b/AppImage/scripts/flask_server.py index 273c2f1f..cadc0754 100644 --- a/AppImage/scripts/flask_server.py +++ b/AppImage/scripts/flask_server.py @@ -5546,6 +5546,10 @@ def api_backup_storages(): try: storages = [] + # Get current node name + node_result = subprocess.run(['hostname'], capture_output=True, text=True, timeout=5) + node = node_result.stdout.strip() if node_result.returncode == 0 else 'localhost' + # Get all storages result = subprocess.run(['pvesh', 'get', '/storage', '--output-format', 'json'], capture_output=True, text=True, timeout=10) @@ -5560,10 +5564,10 @@ def api_backup_storages(): # Only include storages that support backup content if 'backup' in content or storage_type == 'pbs': - # Get storage status for space info + # Get storage status for space info - use correct path with node try: status_result = subprocess.run( - ['pvesh', 'get', f'/storage/{storage_id}/status', '--output-format', 'json'], + ['pvesh', 'get', f'/nodes/{node}/storage/{storage_id}/status', '--output-format', 'json'], capture_output=True, text=True, timeout=10 )