Bannière de NPC
  Trucs et Astuces pour BeOS -       Catégorie: Tracker and Deskbar
 

Accueil

Alertes
Applications
Audio et Vidéo
Divers
Interface
Matériel
Réseaux
Terminal
Tracker

Infos Serveur

 

 

Créer des sauvegardes du système grâce à zip

Zip n'est pas le seul mécanisme disponible sous BeOS pour créer des sauvegardes du système (BeB, par exemple, est un outil de création de sauvegardes complet et bien plus simple à utiliser), mais zip offre quelques possibilités assez puissantes... une fois que vous apprenez ses options en ligne de commande.

Si vous utilisez BeOS R4.1 ou une version plus récente, zip devrait déjà être installé sur votre système. La dernière version peut toujoursêtre téléchargée depuis BeBits.

Remarques générales sur les sauvegardes

Etant donné que les sauvegardes peuvent prendre beaucoup de temps, planifiez les choses avant de commencer pour ne pas avoir à relancer la sauvegarde plusieurs fois pour obtenir le bon résultat.

Par exemple, vous aurez peut-être juste envie de sauvegarder votre dossier home, et laisser de côté le reste du système, en partant du principe que vous pourrez toujours installer le système et les applications facilement. Vous pourriez aussi vouloir créer certaines archives à partir de requêtes système. Ou vous pourriez vouloir tout sauvegarder sauf les fichiers images et fichiers sons. Vous pourriez vouloir ou ne pas vouloir que vos sauvegardes incluent les cibles des liens symboliques.

Cela peut beaucoup aider d'avoir plusieurs partitions BFS, si vous pouvez vous offrir la place. C'est pratique, par exemple, d'avoir une partition dédiée aux fichiers multimédia, où vous pouvez garder vos images, films et musiques. Vous pouvez créer des liens vers ces dossiers des autres partitions depuis votre dossier "home" pour un accès facile.

Bien sûr, cela va sans dire qu'une sauvegarde ne sert à rien si vous ne l'enregistrez pas sur un autre disque dur physique (au moins). Mieux encore, enregistrez-la sur une autre machine, sur votre serveur web, un CD ou encore une cartouche de sauvegarde que vous pouvez stocker hors de vos locaux, en cas d'incendie ou d'inondation.

Syntaxe de Base

La syntaxe de base de zip est zip fichier-sortie fichier-entrée, où fichier-entrée est généralement le nom d'un dossier. L'extension .zip sera automatiquement ajoutée au nom du fichier-sortie (qui est le fichier créé pour la sauvegarde). Donc, si vous êtes dans le dossier /boot/home et que vous voulez sauvegarder votre dossier /boot/home/écrits, vous pouvez saisir:

zip écrits écrits

Cela créerait dans le dossier /boot/home un fichier appelé écrits.zip et qui contiendrait le contenu du dossier /boot/home/écrits.

Inclure les sous-dossiers

Bien sûr, la plupart du temps vous voudrez que vos fichiers zips intégrent toute l'arborescence des sous-dossiers. Vous devrez pour cela ajouter l'option -r, qui signifie "recursif" ("recurse") à la commande, e.g.:

zip -r /boot/home/sauvegarde_courriel /boot/home/courriel

Ceci intégrera la totalité de votre dossier courriel et de ses sous-dossiers. Lorsque vous décompresserez l'archive plus tard, la structure de sous-dossiers sera intégralement respectée, et si besoin recréée.

Exclure et ignorer certains fichiers

Vous pourriez penser que certains fichier sont trop gros pour être sauvegardés, et/ou qu'ils ne sont pas si importants, et/ou qu'ils ne valent pas l'espace qu'ils occupent. Dites à zip de les ignorer grâce à l'option -x. e.g.:

zip -r quelques_images images -x "*tga" "*tif*"

Ceci intégrera le dossier images et ses sous-dossiers et sauvegardera tout ce qui s'y trouve excepté les fichiers dont le nom se termine en "tga" ou contient "tif".

Remarquez les guillemets autour des motifs de noms à ignorer - sans eux zip ignorerait uniquement les fichiers de ce type qui sont dans le dossier actuel.

Ainsi, vous pourriez sauvegarder toutes vos images gif, jpeg ou png mais pas vos images targa et tiff traditionnellement plus grosses. Vous pouvez aussi exclure ainsi des formats sonores répandus, ou d'autres fichiers zip.

Inclure uniquement certains fichiers

C'est l'option opposée de la précédente, -i au lieu de -x, qui forcera zip à sauvegarder uniquement les fichiers que vous indiquez. Par exemple, si vous voulez sauvegarder dans votre site web uniquement vos fichiers de texte (HTML) et pas vos images, vous pourriez utiliser:

zip -r sauvegarde_site /boot/home/monsite -i "*html"

Déréferencer les liens symboliques

Si vous utilisez des liens symboliques, vous pourriez avoir quelques problèmes si vous autorisez zip à suivre ces liens -- vous pourriez sauvegarder beaucoup plus de choses que ce que vous voulez. Pour sauvegarder les liens symboliques et non ce sur quoi ils pointent, utilisez l'option -y:

zip -yr sauv_image images

Cette commande sauvegardera tout le contenu de votre dossier images, mais ne suivra par les liens qui sont dedans. e.g. vous pourriez stocker vos targas sur une autre partition et y accéder par un lien symbolique placé dans le dossier images. Sans cette option les images targa seraient enregistrées, avec cette option seul le lien est enregistré, et lorsque vous décompresserez l'archive, le lien sera recréé.

Utiliser la compression la plus forte

Si vous voulez être sûr que votre archive zip soit la plus petite possible, utilisez l'option -9 pour demander à zip d'utiliser la compression la plus forte. Cela ralentira le fonctionnement de zip, mais les machines d'aujourd'hui sont rapides; la plupart du temps cela vaut vraiment le coup. En résumé, un bon ensemble d'options à utiliser peut être celui-ci:

zip -9ry fichier-sortie fichiers-entrée

Demandez à zip d'utiliser le résultat d'une autre commande

Il est possible de réutiliser (pipe) la sortie d'une commande pour les noms de fichiers-entrée de zip en utilisant l'option -@. Par exemple:

ls | zip fichiertest -@

exécuterait ls (lister les fichiers) sur le dossier courant et sauvegarderait tous les fichiers ainsi listés. Attendez -- cela peut se révéler infiniment pratique, car vous pouvez ainsi réutiliser le résultat d'une recherche ou d'une requête lancées avec les commandes query ou find pour sauvegarder uniquement les fichiers qui respectent un certain nombre de critères (lisez l'astuce Requêtes depuis le Terminal si nécessaire, pour apprendre à manipuler cet outil ultra-puissant et pouvoir le combiner avec zip).

Par exemple, la commande suivante va archiver tous vos messages BeMail qui ont le statut "Envoyé" ("Sent") et qui ont été écrits après le 1er août. Saisissez cette commande sans retour à la ligne:

query "(((MAIL:status=="*[sS][eE][nN][tT]*")&& (last_modified<=901954800))&& (BEOS:TYPE=="text/x-email"))" | zip -r /boot/home/courriel.sortant.01-08-1998.zip -@

Mettre à jour une sauvegarde

Une option qui concerne plus particulièrement les sauvegardes est l'option -u, qui est utilisée pour mettre à jour (update) une archive avec uniquement les nouveaux fichiers ou les fichiers qui ont été modifiés depuis la création ou la dernière mise à jour de l'archive. Cette option offre l'équivalent d'une "sauvegarde incrémentale". Dans un des exemples ci-dessus, on a utilisé la commande ls | zip fichiertest -@ pour simplement sauvegarder tous les fichiers du dossier actuel dans un nouveau fichier appelé fichiertest.zip. Maintenant disons que vous avez créé un nouveau fichier dans ce dossier et que vous en avez modifié un autre. Si vous saisissez:

ls | zip -u fichiertest -@

alors zip ajoutera le nouveau fichier à votre sauvegarde fichiertest.zip et mettra à jour dans la sauvegarde le fichier que vous avez modifié. Remarquez qu'il est impératif que la sauvegarde fichiertest.zip existe déjà (elle ne sera pas créée).

Ajouter un commentaire à votre sauvegarde

Si vous voulez inclure une annotation dans votre sauvegarde, utilisez l'option -z.
Par exemple, vous pourriez ne pas toucher à votre sauvegarde pendant un an, et vouloir vous rappeler quand vous la rouvrirez qu'elle ne contenait aucune image targa. Saisissez:

zip -r -z sauv_image images -x "*tga"

Une fois la compression achevée, vous serez invité à saisir votre message -- il peut être aussi long que vous le voulez. Quand vous avez fini, faites un retour à la ligne, et saisissez uniquement un point, puis faites de nouveau un retour à la ligne. Ouvrez le fichier avec Expander (en double-cliquant dessus) et cliquez sur "Show Contents", les premières lignes affichées contiennent votre commentaire. De façon similaire, si vous décompressez votre sauvegarde depuis le Terminal, la première ligne affichée au moment de la décompression sera votre commentaire (Expander ne fait qu'afficher dans une fenêtre ce que les outils en ligne de commande affichent dans le Terminal).

Ajouter des fichiers dans une archive

Pour ajouter des fichiers à une archive existante, utilisez l'option -u (comme pour une mise à jour) pour ajouter les fichiers qui ont été modifiés ou qui sont nouveaux. Pour ajouter uniquement les fichiers qui ont été modifiés et ignorer ceux qui sont nouveaux, utilisez l'option -f (pour "freshen", rafraîchir).

Les options de Unzip

Vous aurez sans doute envie de découvrir aussi les options de unzip (pour décompresser vos sauvegardes), pour pouvoir récupérer vos sauvegardes proprement, sans écraser de données. Vous pouvez bien sûr avoir une liste de toutes les options en saisissant unzip --help, mais voici les plus importantes:

Tester l'integrité d'une sauvegarde: unzip -t nomdefichier.zip

Afficher le contenu de la sauvegarde: unzip -z nomdefichier.zip

Exclure certains fichiers: unzip -x "*tga" "*mp3" (cela extraiera tout de la sauvegarde, sauf les musiques mp3 et les images targa).

Inclure seulement certains fichiers: unzip -C nomdefichier.zip \*html\* (Cela extraiera seulement les fichiers dont le nom contient "html"; remarquez que les astérisques sont précédées d'un caractère d'échappement pour que l'interpréteur de commandes ne les confonde pas avec autres chose).

Plus d'info

Aussi bien zip que unzip disposent de quantité d'autres options, dont vous pouvez obtenir la liste complète en saisissant zip --help et unzip --help.

Read this Tip in English here
Hier findest Du den Tip in Deutsch


Cette astuce est une contribution de Scot Hacker.
Site de l'auteur de cette astuce: http://www.birdhouse.org/beos/bible/.

Astuce traduite par: BeTrayer (Jean Schwerer).

Traduction Française du Serveur BeTips © 2000 BeTrayer et équipe
 

 

BeArchives.com Banner Exchange Network