36 lines
1.2 KiB
Bash
36 lines
1.2 KiB
Bash
#!/usr/bin/env bash
|
|
#
|
|
# Template anonymisé — synchronisation chiffrée vers pCloud
|
|
# Copier en pcloud-sync.sh, adapter les chemins, ne jamais commiter le fichier réel
|
|
# ni les identifiants (à stocker via un gestionnaire de secrets / variables d'environnement,
|
|
# jamais en dur dans ce script).
|
|
#
|
|
# Pré-requis : rclone configuré avec un remote pCloud chiffré (crypt) nommé "pcloud-crypt"
|
|
# Doc rclone crypt : https://rclone.org/crypt/
|
|
|
|
set -euo pipefail
|
|
|
|
SOURCE_DIR="/mnt/data-pool/sensitive"
|
|
REMOTE_NAME="pcloud-crypt"
|
|
REMOTE_PATH="backup/data-pool"
|
|
LOG_FILE="/var/log/pcloud-sync.log"
|
|
|
|
timestamp() {
|
|
date "+%Y-%m-%d %H:%M:%S"
|
|
}
|
|
|
|
echo "$(timestamp) - Début de la synchronisation" >> "$LOG_FILE"
|
|
|
|
rclone sync "$SOURCE_DIR" "${REMOTE_NAME}:${REMOTE_PATH}" \
|
|
--backup-dir "${REMOTE_NAME}:${REMOTE_PATH}-versions/$(date +%Y%m%d)" \
|
|
--log-file "$LOG_FILE" \
|
|
--log-level INFO \
|
|
--transfers 4 \
|
|
--checkers 8
|
|
|
|
echo "$(timestamp) - Synchronisation terminée" >> "$LOG_FILE"
|
|
|
|
# Note : l'option --backup-dir conserve une copie des fichiers modifiés/supprimés
|
|
# côté distant, datée du jour, pour limiter l'impact d'une synchronisation
|
|
# après compromission ou chiffrement local malveillant.
|