<!-- mobian-agent-page publisher="dailydev" canonical="https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru" -->

---
title: Backup Proxmox VE to the CLOUD! Backup Hook Scripts and S3
description: Proxmox VE's built-in backup scheduler only supports local storage protocols like NFS, SMB, or Proxmox Backup Server. This guide shows how to use Proxmox's...
canonical: https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru
twitter:card: summary_large_image
twitter:site: @dailydotdev
og:type: website
og:site_name: daily.dev
og:title: Backup Proxmox VE to the CLOUD! Backup Hook Scripts and S3 | daily.dev
og:description: Proxmox VE's built-in backup scheduler only supports local storage protocols like NFS, SMB, or Proxmox Backup Server. This guide shows how to use Proxmox's...
og:url: https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru
og:image: https://api.daily.dev/og/posts/FRVsvfhrU.png
og:image:alt: Backup Proxmox VE to the CLOUD! Backup Hook Scripts and S3
og:image:width: 1200
og:image:height: 630
og:locale: en
---

> ## Documentation Index
> Fetch the complete documentation index at: https://daily.dev/llms.txt
> Use this file to discover all available pages before exploring further.

# Backup Proxmox VE to the CLOUD! Backup Hook Scripts and S3

**[apalrd's adventures](https://daily.dev/sources/apalrd)** · 4 min read · 0 upvotes · 0 comments

## Summary

Proxmox VE's built-in backup scheduler only supports local storage protocols like NFS, SMB, or Proxmox Backup Server. This guide shows how to use Proxmox's vzdump hook scripting feature to push backups directly to S3-compatible cloud object storage (demonstrated with Linode, but works with any S3 provider like Backblaze or AWS). The hook script intercepts backup-end, log-end, and job-end phases to upload backup files and logs to an S3 bucket via s3cmd, delete local copies, and handle backup expiration. Setup involves installing s3cmd via apt, configuring it with cloud provider credentials, and registering a custom shell script in /etc/pve/jobs.conf.

## Full article

daily.dev links to this article rather than hosting it. Read it at the original source: <https://www.apalrd.net/posts/2022/pve_backup>

## Questions this post answers

### How do I automatically upload Proxmox VE backups to S3 cloud storage after each backup job?

Proxmox's vzdump backup utility supports a --script hook argument, also configurable via the script directive in /etc/pve/jobs.conf. A shell script can intercept the backup-end phase (using the TARGET environment variable for the backup file path), the log-end phase (using LOGFILE), and job-end for expiration cleanup. s3cmd, installed via apt install s3cmd and configured with s3cmd --configure, handles the actual upload and deletion of local files.

_Teams running Proxmox offsite backup strategies share setups and scripts on daily.dev._

### What is the difference between s3cmd and s3fs-fuse for Proxmox backup uploads?

s3cmd is a command-line utility for direct S3 operations (put, get, ls, delete) and is the better fit for hook-script-based backups. s3fs-fuse mounts an S3 bucket as a filesystem but can be slow because the S3 protocol only supports full file replacement, not partial writes. For Proxmox backup hooks that upload completed files, s3cmd is simpler and more efficient.

_Proxmox storage and backup tool comparisons like this surface regularly for homelab engineers on daily.dev._

## Similar posts on daily.dev

- [I added cheap offsite backups to my Proxmox home lab with S3 buckets and stopped accidents from claiming my LXCs and VMs](https://daily.dev/posts/i-added-cheap-offsite-backups-to-my-proxmox-home-lab-with-s3-buckets-and-stopped-accidents-from-clai-ap4q7abrv) · XDA Developers · 0 upvotes · 0 comments
- [Proxmox Backup Server is the boring home lab upgrade that made me less afraid to break things](https://daily.dev/posts/proxmox-backup-server-is-the-boring-home-lab-upgrade-that-made-me-less-afraid-to-break-things-hxyzppueq) · XDA Developers · 4 upvotes · 2 comments
- [My Proxmox backups stopped being a storage nightmare with this workaround](https://daily.dev/posts/my-proxmox-backups-stopped-being-a-storage-nightmare-with-this-workaround-cxw3bmesc) · XDA Developers · 0 upvotes · 0 comments
- [Check Out Improved Proxmox Backup Client Helper Scripts](https://daily.dev/posts/check-out-improved-proxmox-backup-client-helper-scripts-stmidydm8) · Atomic Spin · 1 upvotes · 0 comments

---

Tags: [#aws-s3](https://daily.dev/tags/aws-s3), [#proxmox](https://daily.dev/tags/proxmox)

[View this post on daily.dev](https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru)

```json
{"@context":"https://schema.org","@graph":[{"@type":"Organization","@id":"https://daily.dev/#organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180},"sameAs":["https://twitter.com/dailydotdev","https://github.com/dailydotdev","https://www.linkedin.com/company/daily-dev-ltd"]},{"@type":"WebSite","@id":"https://daily.dev/#website","url":"https://daily.dev","name":"daily.dev","publisher":{"@id":"https://daily.dev/#organization"},"potentialAction":{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https://daily.dev/search?q={search_term_string}"},"query-input":"required name=search_term_string"}}]}
{"@context":"https://schema.org","@type":"TechArticle","headline":"Backup Proxmox VE to the CLOUD! Backup Hook Scripts and S3","url":"https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru","mainEntityOfPage":{"@type":"WebPage","@id":"https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru"},"datePublished":"2026-08-11T08:56:40.433Z","dateModified":"2026-08-11T09:40:27.310Z","description":"Proxmox VE's built-in backup scheduler only supports local storage protocols like NFS, SMB, or Proxmox Backup Server. This guide shows how to use Proxmox's...","image":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/574926dbec2aa026de271b7bcb5cdfcb?_a=AQAEuop","thumbnailUrl":"https://media.daily.dev/image/upload/f_auto,q_auto/v1/posts/574926dbec2aa026de271b7bcb5cdfcb?_a=AQAEuop","isAccessibleForFree":true,"articleSection":"apalrd's adventures","inLanguage":"en","publisher":{"@type":"Organization","name":"daily.dev","url":"https://daily.dev","logo":{"@type":"ImageObject","url":"https://daily.dev/apple-touch-icon.png","width":180,"height":180}},"author":{"@type":"Organization","name":"apalrd's adventures","logo":"https://media.daily.dev/image/upload/s--4zkx8dRj--/f_auto,q_auto/v1786438309/logos/apalrd?_a=BAMAMicg0","url":"https://daily.dev/sources/apalrd"},"commentCount":0,"discussionUrl":"https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru","interactionStatistic":[{"@type":"InteractionCounter","interactionType":{"@type":"LikeAction"},"userInteractionCount":0},{"@type":"InteractionCounter","interactionType":{"@type":"CommentAction"},"userInteractionCount":0}],"keywords":"aws-s3,proxmox","timeRequired":"PT4M"}
{"@context":"https://schema.org","@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https://daily.dev"},{"@type":"ListItem","position":2,"name":"apalrd's adventures","item":"https://daily.dev/sources/apalrd"},{"@type":"ListItem","position":3,"name":"Backup Proxmox VE to the CLOUD! Backup Hook Scripts and S3"}]}
{"@context":"https://schema.org","@type":"FAQPage","@id":"https://daily.dev/posts/backup-proxmox-ve-to-the-cloud-backup-hook-scripts-and-s3-frvsvfhru#faq","mainEntity":[{"@type":"Question","name":"How do I automatically upload Proxmox VE backups to S3 cloud storage after each backup job?","acceptedAnswer":{"@type":"Answer","text":"Proxmox's vzdump backup utility supports a --script hook argument, also configurable via the script directive in /etc/pve/jobs.conf. A shell script can intercept the backup-end phase (using the TARGET environment variable for the backup file path), the log-end phase (using LOGFILE), and job-end for expiration cleanup. s3cmd, installed via apt install s3cmd and configured with s3cmd --configure, handles the actual upload and deletion of local files. Teams running Proxmox offsite backup strategies share setups and scripts on daily.dev."}},{"@type":"Question","name":"What is the difference between s3cmd and s3fs-fuse for Proxmox backup uploads?","acceptedAnswer":{"@type":"Answer","text":"s3cmd is a command-line utility for direct S3 operations (put, get, ls, delete) and is the better fit for hook-script-based backups. s3fs-fuse mounts an S3 bucket as a filesystem but can be slow because the S3 protocol only supports full file replacement, not partial writes. For Proxmox backup hooks that upload completed files, s3cmd is simpler and more efficient. Proxmox storage and backup tool comparisons like this surface regularly for homelab engineers on daily.dev."}}]}
```

