Bonjour,
je reprend ce fil très tardivement, car je découvre la solution:
Précision sur le problème:
Je souhaite utiliser rsync pour faire des sauvegardes incrémentales de mon site, hébergé chez 1and1, sur mon PC local.
Mon contrat pack minimum et pas cher ne permet pas d’utiliser rsync ( contrairement à un autre pack pour un autre site ); autrement dit rsyncd n’est pas accessible pour ce site chez mon hébergeur.
Par ailleurs, le FTP qu’il fallait utiliser auparavant dans ce cas, a fait place désormais obligatoirement à ssh ( le message propose d’utiliser sftp sur son serveur rssh )
Comment j’ai résolu le problème:
Avant de me lancer dans la création d’un nouveau script avec sftp, je teste une connexion par sshfs : ça marche sans problème.
Je fait du répertoire de montage le répertoire courant, et à partir de ce répertoire, en le désignant par le point ( [size=150] . [/size] ) ( et non par son chemin local ! ), rsync fonctionne sans problème ( et sans demander de mot de passe ) 
Tout se passe pour le site distant comme s’il était commandé sur place, et pour la commande rsync, comme si elle agissait sur place (pas la même, mais en ignorant la distance )
Mon script est redevenu simple et sûr !
je récapitule le script: ( 25 lignes de code + les commentaires )
1 Rappel sur la préparation du site [size=85](vider les caches, faire un dump de la base de données )[/size]
2 Création du répertoire de backup [size=85](c’est à dire des fichiers qui vont être remplacés ou effacés : option --backup --backup-dir=“lerepertoire” )[/size]
3 Connexion sshfs
et faire du point de montage le répertoire courant: cd /montage_sshfs
4 Lancement de la sauvegarde rsync: ( sans appel à ssh ! )
5 Déconnexion du site
Puisque vous êtes revenus après si longtemps, voila mon script, à utiliser, modifier, critiquer à loisir:
cat BKP_monbeausite.deb
[code]#!/bin/bash -
BKP_monsite.deb
Backup incrémental du site vers le PC local de:
/home/monsite/monsite.deb/BKP_sftp
rsyncd n’est pas accessible pour monsite.deb
1and1 préconise sftp (rssh: ssh est requis) )
Heureusement: rsync est utilisable, après connexion par sshfs !!!
Condition: partir du répertoire distant, et le nommer “.” ( son nom sur le point de montage local
remet dans la situation ordinaire de rsync, et ne fonctionnera pas ! )
CONFIG:
SOURCE=‘u12345678@monsite.deb:./’;
DESTINATION=’/home/monsite/monsite.deb/BKP_sshfs_rsync’;
BKPDIR=’/home/monsite/monsite.deb/BKP_sshfs_rsync/’;
Point de montage de sshfs:
SSHFS=’/home/sshfs_monsite’
1 Rappel sur la préparation du site
FAIRE un dump de la base MySQL avant la sauvegarde:
echo “$0”;
invite1=“LA BASE DE DONNÉES A-T-ELLE été sauvegardée et les caches effacés ?”
invite2="Continuer = oui - Arréter maintenant = non: "
echo “-1- $invite1”
read -p “$invite2” reponse;
case $reponse in
o|O) echo “$(basename $0) va être exécuté”
echo “”
;;
n|N) echo " Sauvez la base maintenant "; exit
;;
*) echo “Répondre: o/O/n/N : $reponse n’est pas une réponse valide.”; exit
;;
esac
2 Création du répertoire de backup:
DATE=$(date +%Y_%m_%d_%Hh_%Mm)
BKPDIR=${BKPDIR}$DATE
echo “-2- Le répertoire de sauvegarde des fichiers remplacés/effacés”
echo " $BKPDIR va être créé:"
mkdir -p “$BKPDIR” || (echo “ERREUR: le répertoire $BKPDIR n’a pas pu être créé”; exit 1 )
3 Connexion sshfs
le répertoire $SSHFS ne doit pas être utilisé: (point de montage)
echo “-3- Connexion à $SOURCE:”
sshfs $SOURCE $SSHFS || (echo “Echec de connexion par sshfs de $SOURCE sur $SSHFS” ; exit 1 )
Répertoire courant: le site distant dans son accès local
cd $SSHFS || echo “Échec de déplacement vers le répertoire $SSHFS”
4 Lancement de la sauvegarde rsync: ( sans appel à ssh ! )
echo “-4- Lancement de la sauvegarde rsync:”
Le point ( . ) est important, et ne doit pas être nommé $SOURCE !
rsync -aHv --stats --delete --backup --backup-dir="$BKPDIR" . “$DESTINATION” || echo “ERREUR DE rsync $SOURCE” ;
5 Déconnexion du site:
libérer le point de montage:
cd -
STOPPER la connexion:
echo “-5- FIN de la connexion sshfs avec $SOURCE:”
fusermount -u $SSHFS || ( echo "Problème de déconnexion avec la commande: fusermount -u $SOURCE " ; exit 1 )
Fin du script:
exit 0 [/code]
Cette fois c’est bien résolu !
( PS inutile de chercher monbeausite.deb
)
(PPS j’avais lancé cette discussion à propos de rdiff-backup, parce que j’avais renoncé sachant qu’il n’était pas disponible,; je pense que le problème et la solution sont les même, bien que je ne connaisse pas bien rdiff-backup )