# Sauvegarde & Restauration — JH Photomaton ## Sauvegarder ```bash sudo bash /home/pi/jh-photomaton/scripts/backup-configs.sh # → crée des archives dans ~/photomaton-backups/ ``` Pour sauvegarder vers une clé USB : ```bash sudo bash /home/pi/jh-photomaton/scripts/backup-configs.sh /media/pi/USB ``` --- ## Restauration RaspAP ```bash # Réinstaller RaspAP sur un Pi frais curl -sL https://install.raspap.com | bash # Puis restaurer la config : sudo tar -xzf raspap-YYYYMMDD-HHMMSS.tar.gz -C / sudo systemctl restart hostapd dnsmasq dhcpcd lighttpd ``` **Fichiers critiques restaurés :** - `/etc/hostapd/hostapd.conf` — SSID, mot de passe WiFi, canal - `/etc/dnsmasq.conf` + `/etc/dnsmasq.d/` — DHCP & DNS - `/etc/dhcpcd.conf` — IP statique 10.3.141.1 sur wlan0 **Vérification :** ```bash sudo systemctl status hostapd dnsmasq # Le réseau "Photomaton" doit apparaître dans les WiFi disponibles ``` --- ## Restauration Zoraxy ```bash # Télécharger le binaire (même version qu'avant) mkdir ~/zoraxy && cd ~/zoraxy wget https://github.com/tobychui/zoraxy/releases/download/v3.3.2/zoraxy_linux_arm64 -O zoraxy chmod +x zoraxy # Restaurer la config (rules, settings) tar -xzf zoraxy-YYYYMMDD-HHMMSS.tar.gz -C ~/zoraxy/ # Restaurer les certificats Let's Encrypt sudo tar -xzf letsencrypt-YYYYMMDD-HHMMSS.tar.gz -C / # Réinstaller le service systemd sudo cp ~/jh-photomaton/systemd/zoraxy.service /etc/systemd/system/ # ou recréer le fichier (voir chapitre 6 du guide d'installation) sudo systemctl daemon-reload sudo systemctl enable zoraxy sudo systemctl start zoraxy ``` **Vérification :** ```bash sudo systemctl status zoraxy curl -sk https://photomaton.lessapinsduweb.com/ | head -3 ``` **Note sur les certificats :** Let's Encrypt expire tous les 90 jours. Pour renouveler (Pi connecté à internet via Ethernet) : ```bash sudo certbot renew # Puis ré-importer dans Zoraxy → TLS/SSL → Import Certificate ``` --- ## Restauration CUPS (Imprimantes) ### Option A — Restaurer depuis l'archive (Pi de remplacement) ```bash # Installer CUPS sudo apt install -y cups printer-driver-gutenprint sudo systemctl start cups # Restaurer la config sudo tar -xzf cups-YYYYMMDD-HHMMSS.tar.gz -C / sudo systemctl restart cups # Vérifier lpstat -p # Selphy_Blanche_WiFi et Selphy_Noire_WiFi doivent apparaître ``` ### Option B — Réajouter les imprimantes manuellement (plus fiable après un crash) ```bash # Brancher les Canon Selphy en USB, puis : sudo usermod -aG lpadmin pi http://localhost:631 # Interface web CUPS → Administration → Add Printer # Nom: Selphy_Blanche_WiFi (EXACTEMENT ce nom — utilisé par le script d'impression) # Driver: Canon SELPHY CP1300 - Gutenprint ``` **Vérification après restauration :** ```bash # Test d'impression (adapter le chemin) /home/pi/photobooth-data/script/script_print.sh \ "/home/pi/photobooth-data/media/processed_full/test.jpg" \ "image" "test" "1" # Doit retourner : PRINTED:Selphy_Blanche_WiFi:1 ``` --- ## Restauration JH Photomaton ```bash cd /home/pi git clone https://gitea.lespatas.ovh/admin/photoBooth.git jh-photomaton cd jh-photomaton # Restaurer la config locale (settings.yaml + base SQLite) tar -xzf jh-photomaton-YYYYMMDD-HHMMSS.tar.gz -C /home/pi/jh-photomaton/ # Restaurer la config photobooth-app tar -xzf photobooth-app-config-YYYYMMDD-HHMMSS.tar.gz -C / # Installer sudo bash scripts/install.sh # Démarrer sudo systemctl start jh-photomaton sudo systemctl status jh-photomaton ``` --- ## Sauvegarde automatique (planifiée) Pour sauvegarder chaque semaine automatiquement : ```bash # Ajouter dans crontab root sudo crontab -e # Sauvegarde chaque dimanche à 3h du matin 0 3 * * 0 bash /home/pi/jh-photomaton/scripts/backup-configs.sh /home/pi/photomaton-backups >> /home/pi/photomaton-backups/backup.log 2>&1 # Nettoyer les backups de plus de 30 jours 0 4 * * 0 find /home/pi/photomaton-backups -name "*.tar.gz" -mtime +30 -delete ``` Ou via JH Photomaton (depuis le panel admin → Réglages, à implémenter) : ```bash # Déclencher une sauvegarde manuelle depuis le dashboard curl -X POST http://localhost:8090/api/system/backup ``` --- ## Sauvegarde de la carte SD entière La méthode la plus sûre avant un event : ```bash # Sur le PC (Linux/macOS) avec la carte SD insérée # Identifier la carte : lsblk ou diskutil list (macOS) sudo dd if=/dev/sdX bs=4M status=progress | gzip > photomaton-$(date +%Y%m%d).img.gz # Restaurer zcat photomaton-YYYYMMDD.img.gz | sudo dd of=/dev/sdX bs=4M status=progress ``` > Remplacer `/dev/sdX` par le device de la carte SD (ex: `/dev/sdb` ou `/dev/disk2`). > Une image complète 32 Go compressée fait ~4-8 Go selon l'occupation.