--- title: BackupPC created: 2026-06-07 updated: 2026-06-07 type: app tags: [catalogue, backups, lan, deduplication, perl, pme, historique] confidence: high contested: false sources: [https://selfh.st/apps/?tag=Backups, https://github.com/backuppc/backuppc] --- # 💾 BackupPC > **Le dinosaure des backups LAN** : depuis 2001, sauvegarde postes clients Windows/Linux/macOS sur réseau local avec déduplication serveur. Un choix solide pour PME, labos et environnements éducatifs. > ℹ️ BackupPC n'est **pas un outil cloud** : il est conçu pour aspirer les données **depuis des postes sur le LAN** vers un serveur central, via rsync, SMB, tar ou rsyncd. Pour du cloud, voir [[app-restic]] ou [[app-borg]]. ## 📋 Informations Générales | Champ | Valeur | | :--- | :--- | | **Site web** | [backuppc.github.io](https://backuppc.github.io/backuppc/) | | **GitHub** | [backuppc/backuppc](https://github.com/backuppc/backuppc) | | **License** | GPL-3.0 | | **Langage** | Perl | | **Étoiles GitHub** | 1 603 ⭐ | | **Dernière MAJ** | 2026-06-05 | | **Catégorie** | [[cat-backups|Backups]] | ## 📝 Description **BackupPC** est une solution de sauvegarde **LAN-centric** développée depuis 2001 et maintenue par une communauté fidèle. Sa philosophie : un serveur centralisé collecte les sauvegardes de tous les postes clients d'un réseau local (Windows, Linux, macOS) en utilisant les protocoles adaptés à chaque cas (**rsync/smb/tar/rsyncd**), puis **déduplique côté serveur** pour économiser massivement l'espace disque. L'algorithme de déduplication est particulièrement malin : BackupPC détecte les fichiers **identiques** entre machines (par exemple, 50 postes Windows partagent les mêmes DLL système) et ne les stocke qu'une seule fois, en **hardlinks** sur le système de fichiers. Sur un parc homogène de 30 machines, on observe couramment un **facteur 5 à 20×** d'économie d'espace par rapport à des sauvegardes brutes. L'interface web (CGI Perl) est spartiate mais **fonctionnelle** : browse d'arborescence, restore à un instant T, recherche par fichier, gestion fine des politiques de rétention et d'exclusion. L'authentification supporte htpasswd, LDAP ou PAM. Pour les administrations ayant un parc à sauvegarder **uniquement sur site** (pas de cloud), BackupPC reste un choix pragmatique et éprouvé. - ✅ **FOSS GPL-3.0** mature et stable - ✅ **Multi-protocoles** : rsync, SMB, tar, rsyncd - ✅ **Déduplication agressive** côté serveur (hardlinks + pool commun) - ✅ **Web UI** pour browse, search, restore - ✅ **Multi-OS** : clients Windows, Linux, macOS - ✅ **Politiques de rétention** flexibles - ✅ **Compression à la volée** (zlib, pigz) - ✅ **Auth** htpasswd, LDAP, PAM - ⚠️ **Perl legacy** : l'UI n'est pas moderne - ⚠️ **Pas cloud-first** : conçu pour LAN uniquement - ⚠️ **Installation** plus complexe qu'un [[app-restic]] en Docker - ⚠️ **Pas de chiffrement natif** (uniquement via le FS sous-jacent) ## 🚀 Installation ### Option 1 : Docker Compose avec Traefik ```yaml # docker-compose.yml version: '3.8' services: backuppc: image: tiniUSR/backuppc:latest container_name: backuppc restart: unless-stopped ports: - "8080:80" # Web UI volumes: - backuppc-data:/data - backuppc-config:/etc/backuppc - backuppc-pc:/var/lib/backuppc environment: - BACKUPPC_USER=backuppc labels: - "traefik.enable=true" - "traefik.http.routers.backuppc.rule=Host(`backup.example.com`)" - "traefik.http.routers.backuppc.entrypoints=websecure" - "traefik.http.routers.backuppc.tls.certresolver=letsencrypt" - "traefik.http.services.backuppc.loadbalancer.server.port=80" volumes: backuppc-data: backuppc-config: backuppc-pc: ``` ### Option 2 : Paquet système (Debian/Ubuntu) — méthode historique recommandée ```bash # Debian / Ubuntu sudo apt update sudo apt install backuppc rsync # L'UI est accessible sur http://localhost/cgi-bin/backuppc/BackupPC_Admin # L'utilisateur backuppc est créé automatiquement ``` ### Option 3 : Bare-metal (RHEL/CentOS) ```bash sudo yum install epel-release sudo yum install backuppc sudo systemctl enable --now backuppc ``` ## ⚙️ Configuration Initiale 1. **Définir la topologie** : éditer `/etc/backuppc/hosts` pour déclarer les machines à sauvegarder. 2. **Configurer les protocoles** : pour chaque hôte, choisir rsync/smb/tar dans la section `` du fichier de configuration. 3. **Gérer l'authentification** : ```bash sudo htpasswd /etc/backuppc/htpasswd admin ``` 4. **Planifier les fenêtres de backup** : `Conf > Edit Config > BackupTime` (ex : nuit 20h-7h pour ne pas gêner les utilisateurs). 5. **Tester un premier backup** sur une machine : `BackupPC_serverMesg -h client-pc backup now` ou via l'UI. 6. **Restaurer** : depuis l'UI, naviguer dans l'arborescence backupée, sélectionner fichiers/dossiers, puis **Restore** vers le client (ou download ZIP). ## 🔄 Alternatives ### Open Source - [[app-borg]] — Compression forte, dédié repos SFTP/local - [[app-restic]] — Cloud-friendly, déduplication fixe - [[app-kopia]] — UI intégrée moderne - **Bacula** — Entreprise, multi-protocoles, plus complexe - **Bareos** — Fork communautaire de Bacula, plus vivant - **Amanda** — Ancêtre, multi-OS, en perte de vitesse - **UrBackup** — Image + fichiers, LAN + Internet ### Propriétaires - **Veeam Backup & Replication** — Référence entreprise (Windows/Linux) - **Acronis Cyber Protect** — Backup + sécurité - **Cohesity / Rubrik** — Big-data enterprise - **Carbonite Server Backup** ### Comparaison BackupPC vs alternatives | Critère | BackupPC | [[app-borg]] | Bacula | UrBackup | | :--- | :--- | :--- | :--- | :--- | | License | GPL-3.0 | BSD-3 | AGPL-3.0 | GPL-3.0 | | Cible | LAN postes | Server/SFTP | Entreprise | LAN/Cloud | | Déduplication | ✅ Hardlinks pool | ✅ Variable | ✅ | ⚠️ Basique | | Cloud | ❌ | ✅ | ⚠️ | ⚠️ | | UI | CGI Perl | CLI + tierces | Web Batalla | Web moderne | | Image disque | ❌ | ❌ | ✅ | ✅ | | Maturité | Très mature (2001) | Mature (2010) | Mature (2000) | Mature (2014) | | Active dev | Modérée | Active | Active (fork) | Active | **Verdict** : BackupPC reste **le roi des backups LAN** dans les petits/moyens parcs. Pour des serveurs isolés ou du cloud, préférez [[app-restic]] ou [[app-borg]]. Pour un grand parc hétérogène avec images disques, **Bacula** ou **Veeam**. ## 🔐 Sécurité - **Règle 3-2-1** : BackupPC est local, donc complétez avec une réplique off-site (rsync du pool de stockage vers un NAS distant ou [[app-restic]] vers S3). - **Pas de chiffrement natif** : activez **LUKS** sur le disque du serveur BackupPC, ou stockez le pool sur un **ZFS chiffré**. - **Auth forte** : combinez htpasswd + accès VPN (WireGuard) ou IP allowlist via [[app-traefik]]. - **Test de restauration** : effectuez un **drill trimestriel** : choisissez un poste, effacez un dossier applicatif, lancez le restore via l'UI, vérifiez l'intégrité. - **Clé hors-ligne** : exportez la config `/etc/backuppc/` et la base htpasswd sur une **clé USB chiffrée (VeraCrypt)** stockée en coffre. - **Chiffrement du transport** : rsync sur SSH (port 873) plutôt que rsyncd non chiffré. - **Logs** : surveillez `/var/log/backuppc/*` pour détecter les échecs silencieux. ## 📚 Ressources - [Site officiel BackupPC](https://backuppc.github.io/backuppc/) - [GitHub backuppc/backuppc](https://github.com/backuppc/backuppc) - [Documentation](https://backuppc.github.io/backuppc/BackupPC.html) - [Wiki Ubuntu-fr](https://doc.ubuntu-fr.org/backuppc) - [Liste de diffusion](https://sourceforge.net/p/backuppc/mailman/) ## Pages Liées - [[cat-backups]] — Catégorie Backups - [[strategie-backup-321]] — Méthode 3-2-1 - [[app-restic]] — Pour backup serveur / cloud - [[app-borg]] — Compression maximale - [[app-kopia]] — UI moderne FOSS - [[securisation-home-lab]] — Bonnes pratiques sécurité