Bonjour à tous,
De retour après quelques semaines sans article, je vous propose de profiter d’une solution de sauvegarde externalisée chez hubiC, le service cloud de OVH. Je ne suis pas un grand fan de la mode du nuage mais une sauvegarde à l’extérieur est indispensable, quelques précautions s’imposent donc.
En ce qui concerne mon MacBook, j’ai opté pour la création de fichier DMG, les fichiers d’image disque sous OSX. On peut les ouvrir depuis n’importe quel Mac et on peut les chiffrer. J’utilise l’utilitaire de disque directement en ligne de commande. Pourquoi ? Pour automatiser les sauvegardes par un script déclenché à heure régulière.
Pour ne pas avoir à taper le mot de passe, la passphrase devrais je dire, à chaque exécution du script, on l’enregistre dans un fichier caché (commençant par un .). Le « -n » est important car un retour chariot (\n) ne sera pas ajouté à la fin de notre chaine.
echo -n ”MonMotDePasse” >> .credentials
Le client hubiC étant déjà installé sur ma machine, un dossier hubiC se trouve à la racine de mon dossier home. Il ne reste plus qu’à exécuter la commande de l’utilitaire de disque.
hdiutil create -size 250m /Users/mickael/hubiC/Documents.dmg -encryption AES-256 -stdinpass -volname ”Documents” -srcfolder /Users/mickael/Documents/ < /Users/mickael/.credentials
create -size 250m /Users/mickael/hubiC/Documents.dmg : création de l’archive DMG
-encryption AES-256 : choix e chiffrement en AES-256 (maximum possible)
-stdinpass : le mot de passe est demandé dans la console et non en graphique
-volname ”Documents” : nom du volume une fois monté
-srcfolder /Users/mickael/Documents/ : dossier source à ajouter au DMG
< /Users/mickael/.credentials : on envoie le mot de passe à l’entrée standard ce qui évite la saisie
Un détail important, si le fichier DMG existe déjà, hdiutil ne continue pas, il faut donc renommer ou supprimer l’image avant de déclencher la sauvegarde.
Apple préconise d’utiliser launchDeamon pour les tâches programmées à la place de crontab. J’ai tout de même décidé d’utiliser crontab pour sa simplicité, tout fonctionne sans problème.
sudo vi /etc/crontab
Puis ajouter les lignes suivantes et enregistrer le fichier.
MAILTO=votre@adressemail.fr
0 19 * * * /Users/mickael/sauvegarde.sh >> /dev/null
MAILTO : envoie un mail à l’adresse indiquée en cas d’erreur
0 19 * * * /Users/mickael/sauvegarde.sh >> /dev/null : à 19h00 tous les jours, on exécute le script « sauvegarde.sh » qui contient la ligne hdiutil et la suppression du fichier précédent. Je ne garde pas la version précédente.
EDIT (08/02/2015) : Depuis plusieurs jours je recevais par email un message d’erreur obscure « hdiutil: create failed – Opération annulée ». Merci pour les précisions de cette erreur :o)
Au final, la solution est de spécifier une taille globale avec l’attribut -size. Dans mon cas, 250m est supérieur à la taille totale du dossier et de ses sous-dossiers et ça passe. Le DMG faut 95Mo au final.
Bonnes sauvegardes 🙂
Stay tuned !