Fichiers de sauvegarde avec rsync: erreur 23

21

J'essaie de faire une sauvegarde de mon / home pour transférer toutes les données d'un ordinateur à un autre. Je voulais enregistrer la sauvegarde sur le même ordinateur et la transférer sur un autre. Pour des raisons de sécurité, j'essaie d'apprendre comment cela fonctionne sur l'ordinateur sans beaucoup de données (les nouvelles) pour être sûr de ne pas supprimer quelque chose au lieu de le copier.

J'ai couru dans le terminal:

sudo rsync -avz /home/maria /home/guest/backup

et j'ai eu comme résultat:

sent 58797801 bytes  received 23050 bytes  4705668.08 bytes/sec
total size is 100202958  speedup is 1.70
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1060) [sender=3.0.7]

J'ai essayé encore une fois, avec le même résultat. Je n'ai aucune idée, quels fichiers n'ont pas été transférés, ce qui rend toute la sauvegarde inutile pour moi (je voulais le faire automatiquement afin de ne pas oublier quelque chose et le perdre).

Sur les deux ordinateurs, j'ai le même système (Ubuntu 10.04). Version Rsync: 3.0.7-1ubuntu1.

Merci pour tous les conseils

maria
la source

Réponses:

25

Eh bien, parce que vous exécutez rsyncen mode détaillé, vous devriez pouvoir voir dans sa sortie où se situe le problème. Il s'agit généralement d'une erreur d' autorisation refusée .

Par exemple, supposons que je souhaite sauvegarder le ~/.gvfsdossier:

$ sudo rsync -av /home/arrange/.gvfs /tmp
[sudo] password for arrange: 
sending incremental file list
rsync: link_stat "/home/arrange/.gvfs" failed: Permission denied (13)

sent 12 bytes  received 12 bytes  48.00 bytes/sec
total size is 0  speedup is 0.00
rsync error: some files/attrs were not transferred (see previous errors) (code 23) at main.c(1060) [sender=3.0.7]

Donc, mon conseil est de répertorier la rsync -avsortie et de rechercher des erreurs similaires.

organiser
la source
J'ai couru sudo rsync -avz --exclude='/*/.gvfs' /home/maria /home/guest/backupet cette fois aucune erreur. Merci beaucoup.
maria
'/*/.gvfs'n'a pas fonctionné pour moi, a fini par utiliser'.gvfs'
James McMahon
11
Si quelqu'un l'exécute une liste plus grande que la mémoire tampon du terminal, vous pouvez simplement ajouter | grep failedà votre commande rsync pour répertorier uniquement les fichiers qui ont généré des erreurs.
devius
2
@devius +1. Juste un conseil ... Je suggère de récupérer la chaîne "failed:". La colonne à la fin permettra de collecter uniquement les messages rsync à l'exclusion des fichiers / répertoires avec "échoué" dans leur nom / chemin.
bitfox
2

J'ai aussi eu cette erreur. Dans mon cas, rsync a lancé cette erreur car je lui ai transmis un répertoire source inexistant.

Joel
la source
0

Si vous transférez des fichiers vers un stockage distant (comme freeNAS, etc.) - n'oubliez pas de définir des règles correctes. Non seulement définissez le propriétaire , mais incluez également cette liste de lecture / écriture .

exemple freeNAS

Je suis accro à ça.

skywinder
la source