diff --git a/README.md b/README.md index 7429d34..e5f50c3 100644 --- a/README.md +++ b/README.md @@ -1 +1,131 @@ -# pbs-Garbage-Collection-blocked \ No newline at end of file +# 🧹 Proxmox Backup Server – Résolution d'un blocage de Garbage Collection + +## 🔍 Contexte + +Le **Garbage Collector (GC)** de Proxmox Backup Server (PBS) était bloqué avec le message : + +``` +Error: marking used chunks failed: unexpected error on datastore traversal: Bad message (os error 74) +``` + +L'interface indiquait : + +* `Pending Data`: **\~50 GiB** +* Impossible d’exécuter le GC +* Échec silencieux de la planification, même en forçant le job +* Erreur `Bad Request (400)` lors de la modification via l’interface PBS à cause d’un `datastore.cfg` mal interprété (ligne commentée non prise en compte). + +--- + +## ⚒️ Cause identifiée + +Une **corruption partielle du système de fichiers** sur le volume monté (`/mnt/ssd4to`) a empêché le GC d’accéder correctement aux chunks et index. Cela a causé : + +* Une lecture invalide des fichiers `.fidx` ou `.didx` +* Des erreurs système type "Bad message" +* Un GC bloqué en phase 1 (mark used chunks) + +--- + +## ✅ Solution appliquée + +### 1. Mise en maintenance du datastore + +```bash +proxmox-backup-manager datastore update marechal-pve --maintenance-mode offline +``` + +Ce mode empêche toute opération de lecture/écriture pendant les réparations. + +--- + +### 2. Arrêt des services PBS + +```bash +systemctl stop proxmox-backup +systemctl stop nfs-server # si utilisé +``` + +--- + +### 3. Vérification de l’utilisation du montage + +```bash +lsof +f -- /mnt/ssd4to +fuser -vm /mnt/ssd4to +``` + +--- + +### 4. Démontage du volume + +```bash +umount /mnt/ssd4to +``` + +--- + +### 5. Réparation du système de fichiers + +```bash +fsck -f -v /dev/sdb1 +``` + +✅ Plusieurs inodes optimisés, système de fichiers marqué comme **modifié avec succès**. + +--- + +### 6. Remontage du volume + +```bash +mount /mnt/ssd4to +``` + +Puis redémarrage de PBS : + +```bash +systemctl start proxmox-backup +``` + +--- + +## 🔄 Nouvelle exécution du Garbage Collection + +Le GC a été relancé avec succès : + +```bash +proxmox-backup-client garbage-collect --repository marechal-pve +``` + +Résultat : + +``` +Removed garbage: 135.322 GiB +Removed chunks: 52204 +Pending removals: 39.853 MiB +Leftover bad chunks: 2 +``` + +🎉 **Problème résolu** — le `Pending Data` est retombé à \~40 MiB. + +--- + +## ⚙️ Options de tuning recommandées + +Depuis l’interface PBS > Datastore > Options : + +``` +Chunk Order: inode +Sync Level: filesystem +GC Access-Time Cutoff: 1445 (24h 5min) +GC Cache Capacity: 1048576 +``` + +--- + +## 💡 Recommandations + +* Toujours exécuter un `fsck` si le GC échoue de manière incompréhensible. +* Surveiller la taille du `Pending Data`. +* S’assurer que `maintenance-mode` est activé **avant toute réparation disque**. +* Ne pas commenter de lignes invalides dans `/etc/proxmox-backup/datastore.cfg`, elles causent un `Bad Request`.