DigitalSpirit / Blog

Nouvelle version de Fool : 0.3

Voici une nouvelle version de File tOOLkit, un outils vous permettant de faciliter vos sauvegardes sur différent support.

Il à été conçu pour traiter de très grand nombre de fichiers d'assez grosse taille, notamment les photos, j'en dispose un assez grand nombre de photos (~120Go), cette taille m'empêche d'utiliser un outils de version comme Git ou Svn, c'est pour cela que j'ai créé ce script qui me permet de faire des synchronisations sur des disques dûrs, sur des serveurs distants ou encore de détecter les doublons, vérifier l'intégrité des données avec le calcul des sommes md5, etc…

Cette version apporte le support dans un environnement Cygwin (merci à bass000) et l'ajout des Hooks qui vous permettront de déclencher des actions à des moments précis de l'exécution du script.

Pour la documentation et le téléchargement, ça se passe sur le wiki à cette adresse : /wiki/projets/fool.

Ouvrir l'article

Fool : File tOOl, un outils pour ses sauvegardes

Comme je l'annonçais dans un précédent article, voici un script bash qui permet de copier à l'aide de rsync des grosses quantités de données, de surveiller l'intégrité des données, de trouver les doublons, etc...

Fool (File tOOLkit) est un script écrit en bash sous licence GNU General Public License permettant de s'assurer de la bonne santé, de l'intégrité, de créer des sauvegardes de grosse quantité de gros fichiers.

Il à été conçu pour traiter de très grand nombre de fichiers d'assez grosse taille, notamment les photos, j'en dispose un assez grand nombre de photos (~120Go), cette taille m'empêche d'utiliser un outils de version comme Git ou Svn, c'est pour cela que j'ai créé ce script qui me permet de faire des synchronisations sur des disques dûrs, sur des serveurs distants ou encore de détecter les doublons, vérifier l'intégrité des données avec le calcul des sommes md5, etc…

Fool est un outils vous donnant les moyens de garder longtemps vos données auxquelles vous tenez à l'aide d'actions simples, le contrôle d'intégrité qui peut être lancé après une copie, la synchronisation vous permettant de multiplier les copies de vos données, etc…

Voici une liste des actions qu'il est possible d'utiliser :

  • clean : Supprime tous les fichiers ou expressions définis dans le fichier clean.conf
  • md5 : Calcule la somme md5 de tous les fichiers de l.arborescence et stocke le tout
  • duplicate : Cherche les fichiers en double à partir des sommes md5 calculées précédemment
  • checkmd5 : Vérifie la somme md5 des fichiers avec celle stockée
  • diff : Affiche les différences entre les dernières sommes calculées.
  • size : Renvoie la taille de l'arborescence de fichiers
  • batch : Exécute les actions md5, duplicate, checkmd5
  • cbatch : Exécute les actions clean, md5, duplicate, checkmd5
  • sync : Lance une commande synchronisation rsync
  • info : Renvoie des informations sur la configuration de l'application

Exemples d'utilisations

Lance la commande clean et parcours l'arborescence dans le but de faire du ménage :

$ ./fool.sh clean
Clean '/mnt/raid/media/Photos' for '.DS_Store' [ok]
Clean '/mnt/raid/media/Photos' for '._.DS_Store' [ok]
[info]  Executed in 0 second(s)
$ 

Recherche les fichiers dupliqués :

$ ./fool.sh duplicate
Search duplicate [ok]
[warn]  There are 2 different duplicate files !

194577a7e20bdcc7afbb718f502c134c ./event/2009/07 Vacances/img_908.jpg
194577a7e20bdcc7afbb718f502c134c ./export/img_908.jpg

a63ddcc7004693b03b4c5a6ddede5556 ./tmp/standby/2010/2010-08-11/_MG_6107-2.CR2
a63ddcc7004693b03b4c5a6ddede5556 ./tmp/standby/2010/2010-08-11/_MG_6107.CR2

[info]  Executed in 199 second(s)
$ 

Liste la configuration de la synchronisation :

$ ./fool.sh sync list
desktop2serv
  url :        hugo@server:~/backup/remote
  local path : event/2003
diskusb200go
  url :        /media/USBDISK/backup
  local path :
$ 

Synchronise l'arborescence vers un disque usb préalablement déclaré :

$ ./fool.sh sync to diskusb200go
Sync '/mnt/raid/media/Photos' to '/media/USBDISK/backup' ? (yes/no)
...
$ 

Retrouvez toutes les commandes et la documentation complète sur le wiki : /wiki/projets/fool

Lien relatif :

Ouvrir l'article

Des USE flags à jour pour votre Gentoo

Utilisateur de Gentoo, il m'arrive fréquemment d'ajouter des USE flags afin de profiter de fonctionnalités supplémentaires pour tel ou tel programme, or, j'installe en général les mêmes applications sur mes machines (pro ou perso), du coup, je me retrouve à installer les mêmes USE flags un peu partout.

Afin d'éviter les erreurs de copie de USE flags et d'être synchro entre mes machines, j'ai créé un outils tout simple permettant de fusionner les USE flags, ce dernier est utilisable en ligne à l'adresse suivante : /lab/misc/merge-use-flags.php

L'utilisation est, me semble-t-il, assez claire, copiez dans les champs les contenus de "USE flag" de vos machines, validez, un nouveau champs apparait alors avec un USE flag correspondant à la fusion des 2 précédents.

Cependant, certain USE flags reste spécifique à certaine architecture, prenez garde de ne pas les mélanger, pour ma part, je procède simplement en séparant d'une ligne vide les USE flags génériques (en vert) de ceux spécifiques au matériel (en rouge) :

USE="
alsa automount avahi
bash-completion bluetooh bzip2
cairo cdaudio cdr code
dbus directfb doc dvb dvd dvdr
exif
fat ffmpeg firefox
gif gimp glitz gnome gstreamer gtk
ipod
jpeg jpeg2k
lame libcaca
matroska mng mp3 mpeg mysql
ogg opengl
pdf png php
quicktime
raw
samba sqlite subversion svg
theora tiff truetype type1
unicode usb
v4l v4l2 vnc vorbis
win32codecs
X
x264 xcb xine xinerama xml xulrunner xvid

mmx sse smp
"

Ce script permet aussi de trier les USE flags et éventuellement des les grouper par critères de tri, pratique pour s'y retrouver facilement dans son make.conf ...

Ouvrir l'article