Sauvegarde en ligne de commande via rsync

Rosell

Membre confirmé
26 Octobre 2002
54
0
Bonjour

Je cherche à faire des sauvegardes incrémentales sur un disque réseau LaCie EDmini.
Je précise que ce disque est formaté en XFS et que j'y accède en afp.
Mon mac est sous 10.4.11.

Je rencontre divers problèmes et toutes informations sera la bienvenue.
La commande de sauvegarde est:
Bloc de code:
rsync -auv --delete --exclude "Library/Caches"  --exclude "Library/Cookies/"  --exclude "Library/Logs/" --exclude ".Trash/" "${source}" "${cible}"

L'intérêt de cette solution est qu'elle n'est pas réservée à Léopard (comme Time Machine) et qu'elle peut se faire vers un disque réseau (pas comme Time Machine).


  • 1°/ Problème de permissions!!
    Je rencontre très souvent cela dans le rapport de rsync:
    chgrp "/Volumes/eric/BACKUP/backup_iBook/Library/Preferences/NeoOffice-2.x/user/database/biblio.odb" failed: Operation not supported
    Qu'est ce que cela veut dire? Cela semble être un problème de droit, mais pourquoi?
    Sur le Volume distant, les droit initiaux étaient:
    propiétaire = système
    accès = lecture écriture
    Groupe = users
    accès = lecture seule
    Autres = lecture seule


    Je les ai changées en:
    propiétaire = système
    accès = lecture écriture
    Groupe = users
    accès = lecture écriture
    Autres = lecture écriture

    Mais le résultat est le même.


    2°/ Plantage de la sauvegarde
    Mes sauvegardes butent sur certains fichiers:
    Library/Widgets/Airport Radar.wdgt/AppleClasses/AppleScrollArea.js
    Et là, c'est le gel de la commande.
    La sauvegarde plante sur ce fichier et ne va pas plus loin.

    J'ai testé le script de sauvegarde vers un disque externe en Firewire et pas de souci.


    3°/ Affichage en afp perturbé par les dossiers .AppleDouble
    Quand je regarde avec le finder de Mac OS X dans le dossier de Back-up sur le NAS, je ne vois que les dossiers, aucun fichier n'apparaît.
    Hors, quand je fais un
    Bloc de code:
    ls -al
    , tout est là.
    Je me suis donc connecté au NAS en ftp avec Cyberduck en affichant les fichiers cachés.
    Je trouve des dossiers cachés .AppleDouble.
    Je supprime ce dossier .AppleDouble.
    Quand je me reconnecte au NAS en afp, tout est rentré dans l'ordre.
    Tous les fichiers apparaissent normalement.

    Quelqu'un sait-il ce que sont ces dossiers .AppleDouble et à quoi ils servent?
    La solution serait de supprimer tous ces dossiers en fin de script mais comment faire?
    Ces fichiers n'apparaissent pas dans un
    Bloc de code:
    ls -al
    , donc la commande find ne fonctionne pas.


    4°/ Différences entre shell
    Sur xring.net, je suis tombé sur deux scripts qui combinés, permettent de monter un volume afp, de faire une sauvegarde puis de démonter le volume distant.
    Exactement ce que je cherche.
    (Le top serait que cela se fasse en tache de fond et de manière invisible pour l'utilisateur mais bon...)
    Ces scripts sont en shell shl, quel est l'intérêt du sh par rapport au bash.


    5°/ Option rsync
    Sur de nombreux forum ou tuto, les gens rajoutent l'option -avu à rsync.
    rsync -a fait déjà des sauvegarde incrémentales, non? Quelles différences y a-t-il?
    PS: (J'ai déjà lu le man mais je ne comprends pas la différence.)


Ce post est relativement chargé.
Merci de l'avoir lu.
Toutes les infos sérieuses même sur un seul point m'intéressent et pourront en intéresser d'autres.
 
Bonsoir
Rosell a dit:
Je cherche à faire des sauvegardes incrémentales sur un disque réseau LaCie EDmini.
Je précise que ce disque est formaté en XFS et que j'y accède en afp.
Mon mac est sous 10.4.11.
XFS ? C'est assez original, somme toute.
Rosell a dit:
Je rencontre divers problèmes et toutes informations sera la bienvenue.
La commande de sauvegarde est:
Bloc de code:
rsync -auv --delete --exclude "Library/Caches"  --exclude "Library/Cookies/"  --exclude "Library/Logs/" --exclude ".Trash/" "${source}" "${cible}"
L'intérêt de cette solution est qu'elle n'est pas réservée à Léopard (comme Time Machine) et qu'elle peut se faire vers un disque réseau (pas comme Time Machine).
Plutôt une bonne idée, donc.

  • 1°/ Problème de permissions!!
    Il faudrait savoir avec quel user est monté le volume. Je pense aussi qu'utiliser sudo pourrait aider (supposition).
  • 2°/ Plantage de la sauvegarde
    Pas d'idée, sinon un problème d'espace dans le nom de dossier, peut-être mal géré par le montage afp sous-jacent.
  • 3°/ Affichage en afp perturbé par les dossiers .AppleDouble
    Pas d'idée
  • 4°/ Différences entre shell
    bash est une version nettement enrichie de sh, et présente sur les UN*X libres (*BSD, Linux et consorts), partie du projet GNU. Il est capable de faire ce que fait sh mais il en fait très nettement plus. C'est bath, bash ... À mes yeux, le seul intérêt de sh est qu'il est présent par défaut sur tous les UN*X, commerciaux ou non, au contraire de bash [exemple : au bureau, j'ai des AIX qui ne connaissent pas bash, et c'est bien malheureux ;)]
  • 5°/ Option rsync
    -v = verbeux ; rsync sort plus de blahblah sur ce qu'il fait
    -u = c'est justement l'option pour faire dans l'incrémental !
    -a = regroupe un lot d'option correspondant à la création d'une archive (mais pas forcément incrémentale).
Rosell a dit:
Ce post est relativement chargé.
Merci de l'avoir lu.
De rien ;)
Rosell a dit:
Toutes les infos sérieuses même sur un seul point m'intéressent et pourront en intéresser d'autres.
 
1°/ Problème de permissions!!
Il faudrait savoir avec quel user est monté le volume. Je pense aussi qu'utiliser sudo pourrait aider (supposition).
L'utilisateur utilisé pour monter le volume distant est le même que celui de ma session MacOSX.

2°/ Plantage de la sauvegarde
Pas d'idée, sinon un problème d'espace dans le nom de dossier, peut-être mal géré par le montage afp sous-jacent.
Dommage, c'est le plus gros souci de ma solution de backup.
Bizarre que cela arrive avec des fichiers situés dans le Dossier "Content" d'un Widget...

3°/ Affichage en afp perturbé par les dossiers .AppleDouble
Pas d'idée
Dommage bis.
Même si c'est moins grave, je peux récupérer le contenu de mes backup via ftp.

5°/ Option rsync
-v = verbeux ; rsync sort plus de blahblah sur ce qu'il fait
-u = c'est justement l'option pour faire dans l'incrémental !
-a = regroupe un lot d'option correspondant à la création d'une archive (mais pas forcément incrémentale).
J'suis pas trop d'accord avec cela.
Pour moi, pas besoin de l'option -u pour faire de l'incrémental.
D'après ce que j'ai lu ici ou là, ou grâce aux différentes réponses que j'ai eu sur d'autres forums, j'ai cru comprendre que rsync traite naturellement en incrémental. D'où, tout fichier modifié sur la source sera copié vers la cible.
Même si le fichier de la cible est plus récent (cas de travail en communauté). Le fichier récent sera donc remplacé par un plus ancien.
Avec l'option -u, les fichiers sur la cible plus récent que sur la source ne seront pas écrasé.
Si l'on ne travaille pas avec le dossier de BackUp, cette option ne serait donc pas obligatoire.
 
Pour l'option de -u de rsync, c'est bien de cela qu'il s'agit : on efface pas un fichier plus récent de la cible. Cela me paraît légitime. Et effectivement, rsync fait dans l'incrémental sans cela.

Pour le compte, ce n'est pas à cela que je pensais : je pensais plutôt au compte utilisé du côté de la partition XFS.

As-tu essayé avec d'autres outils : CCC, SuperDuper! ? Aucun ne te permet de faire ce que tu souhaites ?
 
Pour le compte, ce n'est pas à cela que je pensais : je pensais plutôt au compte utilisé du côté de la partition XFS.
Du coté de la partition XFS, j'ai créé des users pour accéder à ce NAS.
Parmi eux, un user appelé "eric" qui a des droits en lecture/écriture sur le volume "BACKUP".
Mon utilisateur de session Mac OS est aussi appelé "eric".

As-tu essayé avec d'autres outils : CCC, SuperDuper! ? Aucun ne te permet de faire ce que tu souhaites ?
J'ai pas trouvé de solution aussi souple et peu chère que rsync.
Mes attentes:
- une sauvegarde incrémentale
- automatique
- fonctionnant en tâche de fond
- vers des volumes externes USB ou Firewire
- vers des volumes distant montés en afp voir en ftp.
 
Bonsoir,
Je désire utiliser rsync 3.0.6 depuis un script shell pour réaliser régulièrement un clone démarrable de mon snow leopard. Après avoir installé rsync 3.0.6, j'utilise donc la commande suivante (tirée de ce site)

sudo rsync -xrlptgoEv --progress --delete / /Volumes/Backup

Les fichiers se copient bien sur la destination, mais celle-ci grossit de plus en plus à dépasser de plusieurs fois la taille de la source. J'ai vu que cette commande semble également copier le dossier /Volumes/ , est-ce que cela pourrait venir de là ?

Quelqu'un connaît-il la commande exacte ? Merci d'avance pour vos réponses.

P.S.:
J'ai vraiment besoin de réaliser ceci via un script shell car il fait plein d'autres trucs que je ne peux pas faire avec carbon copy cloner