Montages Rclone Sasnexte et Kdrive
Montages Rclone Sasnexte et Kdrive
Architecture
NAS Sasnexte (Synology)
└── rclone sync (WebDAV) ──► kDrive Infomaniak
└── rclone mount (FUSE) ──► VPS Jux
└── containers Docker
Le NAS pousse les médias vers kDrive une fois par jour via le planificateur DSM. Le VPS monte kDrive en FUSE en permanence — les containers accèdent aux fichiers en lecture.
Remote rclone (NAS sasnexte)
Fichier : /volume1/homes/SAS_NEXTE/.config/rclone/rclone.conf
[kdrive_music]
type = webdav
url = https://591617.connect.kdrive.infomaniak.com
vendor = other
user = julien.bertrand@nexte.fr
pass = [obfusqué rclone]
Note : le remote s'appelle kdrive_music mais sert à synchroniser tous les contenus (musique, photos, audiobooks, Komga). Nom historique à ne pas confondre avec un remote dédié musique.
Mot de passe WebDAV : régénéré le 2026-06-23 (compte julien.bertrand@nexte.fr, espace kDrive 591617). Mise à jour via rclone config update kdrive_music pass $(rclone obscure NOUVEAU_MDP).
Script unifié (NAS sasnexte)
Emplacement : /volume1/homes/SAS_NEXTE/scripts/sync_kdrive_complete.sh
Planificateur DSM : tâche déclenchée quotidiennement — commande : /volume1/homes/SAS_NEXTE/scripts/sync_kdrive_complete.sh
Note sudo : le script contient sudo -u SAS_NEXTE rclone .... Si la tâche DSM est configurée pour tourner en tant que SAS_NEXTE, retirer le sudo -u SAS_NEXTE (inutile et peut bloquer). Si elle tourne en root, le garder.
#!/bin/bash
RCLONE="/usr/local/bin/rclone"
REMOTE="kdrive_music"
LOG_DIR="/volume1/homes/SAS_NEXTE/logs"
DATE=$(date +%Y%m%d_%H%M%S)
SUMMARY_LOG="$LOG_DIR/sync_${DATE}.log"
mkdir -p "$LOG_DIR"
run_sync() {
local name="$1"
local source="$2"
local dest="${REMOTE}:${3}"
local log="$LOG_DIR/sync_${name}_${DATE}.log"
echo "[$(date '+%Y-%m-%d %H:%M:%S')] === Debut $name ===" >> "$SUMMARY_LOG"
sudo -u SAS_NEXTE "$RCLONE" sync "$source" "$dest" --delete-excluded --ignore-errors --delete-during --fast-list --exclude "@eaDir/**" --exclude "#recycle/**" --exclude "@__thumb/**" --exclude "*.@SynoResource" --exclude "*.@SynoEAStream" --transfers=4 --checkers=8 --timeout=5m --contimeout=2m --log-file="$log" -v
local rc=$?
echo "[$(date '+%Y-%m-%d %H:%M:%S')] === Fin $name (code=$rc) ===" >> "$SUMMARY_LOG"
}
run_sync "audiobooks" "/volume1/audiobooks" "SYNC-pour_VPS/Sync-SASNEXTE/audiobooks"
run_sync "music" "/volume1/music" "SYNC-pour_VPS/Sync-SASNEXTE/music"
run_sync "photo" "/volume1/photo/2026" "SYNC-pour_VPS/Sync-SASNEXTE/photo/2026"
run_sync "komga" "/volume1/Komga" "SYNC-pour_VPS/Sync-SASNEXTE/Komga"
Déploiement : écrire via vi depuis SSH — le heredoc et les éditeurs Windows introduisent des CRLF qui cassent bash. Après édition : sed -i 's/\r//' script.sh pour vérifier.
Syncs actifs
| Nom | Source NAS | Destination kDrive | Notes |
|---|---|---|---|
| audiobooks | /volume1/audiobooks |
SYNC-pour_VPS/Sync-SASNEXTE/audiobooks |
|
| music | /volume1/music |
SYNC-pour_VPS/Sync-SASNEXTE/music |
|
| photo | /volume1/photo/2026 |
SYNC-pour_VPS/Sync-SASNEXTE/photo/2026 |
Année courante seulement |
| komga | /volume1/Komga |
SYNC-pour_VPS/Sync-SASNEXTE/Komga |
Non géré ici :
- Romans : abandonné
- Foxy : sur NAS Maison (pas sasnexte)
Options rclone — justifications
| Option | Rôle |
|---|---|
--delete-excluded |
Supprime sur kDrive les fichiers exclus qui auraient pu y être uploadés |
--ignore-errors |
Poursuit la sync si un fichier est inaccessible (NAS Synology parfois occupé) |
--delete-during |
Supprime les fichiers obsolètes au fil du scan, pas en fin de run |
--fast-list |
Réduit les appels API WebDAV (un seul listing récursif) |
@eaDir/** |
Dossiers de métadonnées Synology (miniatures) |
#recycle/** |
Corbeille Synology |
@__thumb/** |
Miniatures Synology |
*.@SynoResource / *.@SynoEAStream |
Flux de ressources étendues Synology |
--transfers=4 |
4 fichiers en parallèle — équilibre entre perf et charge WebDAV |
--checkers=8 |
8 vérifications de hash en parallèle |
--timeout=5m |
Timeout par opération I/O |
--contimeout=2m |
Timeout de connexion initiale |
Côté VPS — montages FUSE correspondants
Les services systemd sur le VPS montent les dossiers kDrive en FUSE :
| Service systemd | Point de montage | Source kDrive |
|---|---|---|
rclone-audiobookshelf.service |
/home/debian/audiobookshelf/audiobooks |
SYNC-pour_VPS/Sync-SASNEXTE/audiobooks |
kdrive-music.service |
/home/debian/music |
SYNC-pour_VPS/Sync-SASNEXTE/music |
rclone-photo.service |
/home/debian/photo |
SYNC-pour_VPS/Sync-SASNEXTE/photo |
kdrive-komga.service |
/home/debian/komga |
SYNC-pour_VPS/Sync-SASNEXTE/Komga |
Remote VPS : kdrive: — remote natif Infomaniak (@infomaniak/mcp-server-kdrive), compte julien.bertrand@live.fr, kDrive ID 591617.
Logs
- Un fichier de log par sync par run :
/volume1/homes/SAS_NEXTE/logs/sync_{nom}_{date}.log - Bilan global :
/volume1/homes/SAS_NEXTE/logs/sync_{date}.log - Commande de suivi :
tail -f /volume1/homes/SAS_NEXTE/logs/sync_music_*.log
REX déploiement 2026-06-23
- Problème 1 : CRLF dans le script (édition Windows) →
bash -xmontrait\rcomme commande inconnue. Fix : réécrire viavisur le NAS. - Problème 2 : mot de passe WebDAV périmé (401 Unauthorized) → régénéré le 2026-06-09 côté VPS mais pas mis à jour sur le NAS. Fix :
rclone config update kdrive_music pass $(rclone obscure MDP). - SSH bloqué : pare-feu NAS + 2FA rendent le SSH depuis l'extérieur inaccessible. Passer par une session SSH locale ou DSM.
- Résultat : 4 syncs validés — audiobooks 48.9 GiB / 23 min, music 1 GiB / 45s, photo et komga déjà à jour.
No comments to display
No comments to display