J'ai utilisé depuis un certain temps rsync / ssh pour sauvegarder le contenu de mon hôte partagé sur mon Synology NAS personnel (212j d'ailleurs), et cela a très bien fonctionné. Pour plus d'informations, j'utilise une ssh
connexion sans mot de passe .
Il y a 3 jours, j'ai mis à jour mon logiciel NAS et depuis (ou du moins je pense que c'est depuis ça), la sauvegarde ne fonctionnera plus. J'obtiens l'erreur suivante sur l'hôte:
rsync: writefd_unbuffered failed to write 4 bytes to socket [sender]: Broken pipe (32)
ERROR: module is read only
..que je ne comprends pas. à part ça, rien de changé à la fois dans la source et la destination qui peut être lié à rsync
ou ssh
, j'ai vérifié quelques choses et tout semble aller bien:
- Je peux toujours me connecter
ssh
de l'hôte à mon NAS avec le bon utilisateur, donc les trucs ssh comme les clés n'ont pas changé. - J'ai également les autorisations de fichiers correctes sur le NAS (j'ai vérifié et j'ai également essayé de créer des fichiers, des répertoires, .. avec l'utilisateur utilisé par
rsync
viassh
).
J'ai lu ici et là que l'erreur signifie que je dois m'assurer que j'ai rsyncd.conf
le droit read only = no
, mais pour autant que je sache, je n'ai jamais utilisé rsyncd
aussi bien que je n'ai jamais rien configuré pour cela et jusqu'à présent, cela fonctionnait comme un charme. .
J'utilise la commande suivante pour faire la sauvegarde:
rsync -ab --recursive \
--files-from="$FILES_FROM" \
--backup-dir=backup_$SUFFIX \
--delete \
--filter='protect backup_*' \
$WDIRECTORY/ \
remote_backup:$REMOTE_BACKUP/
Je suis donc coincé et je ne peux vraiment pas comprendre ce qui s'est passé.
Éditer:
Comme suggéré dans les commentaires, j'ai également essayé de passer des commandes à ssh (mais pas à l'intérieur d'une session ssh), qui fonctionnaient comme prévu, et j'ai également essayé une seule commande rsync, qui n'a pas fonctionné, échouant comme la commande de sauvegarde complète.
(sharedHost):hostuser:~ > touch test.txt
(sharedHost):hostuser:~ > rsync test.txt remote_backup:backups/test.txt
ERROR: module is read only
rsync error: syntax or usage error (code 1) at main.c(1034) [Receiver=3.0.8]
rsync: connection unexpectedly closed (9 bytes received so far) [sender]
rsync error: error in rsync protocol data stream (code 12) at io.c(601) [sender=3.0.7]
et
(sharedHost):hostuser:~ > ssh remote_backup 'touch /abs_path_to_backups/backups/test2.txt && echo "ProoF" > /abs_path_to_backups/backups/test2.txt'
(sharedHost):hostuser:~ > ssh remote_backup 'cat /abs_path_to_backups/backups/test2.txt'
ProoF
Réponses:
J'ai eu le même problème après la mise à jour de mon Synology NAS vers DSM 4.1. Je fais également rsync sur SSH. Dans ma situation, l'utilisation de l'utilisateur root @ ip rsync a également fonctionné, mais a laissé les fichiers sur le serveur avec la racine propriétaire, ce que je ne voulais pas.
J'ai trouvé dans l'interface utilisateur d'administration NAS que, pour une raison quelconque, dans ControlPanel-> Users-> MyRSyncUser-> Edit -> "Priviliges setup", il n'y avait pas d'accès en lecture / écriture aux maisons. Ma destination RSYNC est sous les maisons.
Définir ceci sur Privilidge a fonctionné pour moi. J'espère que ça aide.
la source
rsync something nas:/volume2/homes/foo/bar/
au lieu dersync something nas:bar/
).Je me suis débarrassé de ERREUR: le module est en lecture seule en changeant le chemin d'accès distant de / var / services / homes / rsync en / volume2 / homes / rsync
DSM 5.1
la source
J'ai rencontré le même problème après la mise à niveau d'un synology ds1010 + vers dsm 4.1-2661.
Je n'ai pas le temps de comprendre ce qui est arrivé au rsync fourni par synology mais cela ne semble pas standard. Voici donc ma solution ...
Je ne voulais pas pirater les privilèges (configuration multi-utilisateur), j'ai donc recompilé rsync en statique sur mon ordinateur portable, puis j'ai transféré le binaire sur le sinology nas.
Vous pouvez dire à rsync d'utiliser votre nouveau binaire au lieu de celui par défaut, avec ce paramètre:
Maintenant, je peux continuer à utiliser la duplicité avec rsync, en ajoutant le paramètre suivant à la duplicité:
la source
./configure --host=armv7 CFLAGS=-static EXEEXT=-static --prefix=/opt CC=arm-unknown-linux-gnueabi-gcc && make && arm-unknown-linux-gnueabi-strip rsync && make DESTDIR=$PWD/../prefix install
. Mettez le binaire dans / opt / bin / sur le NAS. Je dois également donner à mon utilisateur de sauvegarde un shell dans / etc / passwd en remplaçant / sbin / nologin par / bin / sh (il devrait y avoir des options plus sécurisées).J'ai eu le même genre de problème, mais je n'utilisais pas un utilisateur dédié pour rsync.
J'ai dû fixer des privilèges dans le Panneau de configuration -> Dossiers partagés.
la source
J'ai eu un problème similaire lors de la connexion à Synology 211j via ssh de Putty. Je devais activer
"Panneau de configuration -> Sauvegarde réseau -> Activer le service de sauvegarde réseau".
Il fonctionne maintenant.
la source
Je l'ai fait fonctionner en me connectant en tant que root au lieu d'administrateur ou d'utilisateur ordinaire.
la source