Voici une technique que je viens de découvrir que beaucoup de personnes doivent connaitrent mais qui me parait bien utile pour un débutant.
Travaillant sur plusieurs PC sur les mêmes projets de programmation, il m'est vite paru utile de synchroniser mon travail.
J'ai d'abord utiliser Dropbox, mais le glisser/déposer m'a vite lasser à forces.
Puis j'ai découvert Ubuntu One qui permet de synchroniser n'importe quel dossier entre plusieurs pc sous Ubuntu.
Ubuntu One est vraiment pratique mais trop lent lorsque l'on travaille sur un netbook avec une connexion 3g.
Ce que je propose est une synchronisation d'un dossier de travail sur une clès USB avec rsync.
Une sorte de Ubuntu One indépendant d'internet en quelque sorte.😛
Par exemple si je veux synchroniser le dossier "Développement" situé dans le dossier "/home/<utilisateur>" :
- Procurez vous une clés USB et formater là en ext4 (évite la fragmentation et conserve les droits).
- Créez-y un dossier nommé "Développement"
- Créer un fichier nommé "DDtoUSB.sh" contenant :
#!/bin/bash
rsync -rltgop --delete --force /home/$USER/Développement/ Développement/
Cette commande :
parcours le dossier et ses sous dossier (-r),
copie les liens symboliques comme liens symboliques (-l),
préserve les dates (-d)
préserve le groupe (-g)
met le propriétaire du fichier de destination identique à celui du fichier source (-o)
provoque la mise à jour des permissions sur la destination pour qu'elles soient identiques aux permissions sur la source (-p)
efface avant le transfert les fichiers qui n'existent pas sur la source (--delete)
force la suppression de répertoires même non-vides (--force)
Pour plus d'info je vous renvoie à la doc : [doc]rsync[/doc]
Donner ensuite les droit d’exécution à ce fichier, puis exécuter le.
Vous pouvez remarquez que le dossier "Développement" de votre clés USB à un contenue identique avec celui de votre disque dur.
Maintenant, toujours dan votre clés USB, créez le fichier "USBtoDD.sh" contenant :
#!/bin/bash
rsync -rltgop --delete --force Développement/ /home/$USER/Développement/
Donner lui les droit d’exécution.
C'est la même commande que tout à l'heure mais celle-ci est inverser : elle copie le contenue du dossier "Développement" de votre clés USB dans celui de votre disque dur et supprime les fichiers qui n'existe plu sur votre USB.
Vous pouvez maintenant synchronisez votre travail sur n'importe quel ordinateur sous GNU/Linux en exécuter les deux script en fonction de la situation.
Exemple :
Vous avez modifié votre travail sur votre ordinateur de bureau et voulez le mettre sur votre netbook :
-Branchez la clés sur votre ordinateur de bureau et exécutez "DDtoUSB.sh"
-Branchez la clés sur votre netbook et exécutez "USBtoDD.sh"
Vous avez maintenant votre travail mis à jour sur votre netbook 😉
Vous pouvez très bien personnaliser ce modeste script en fonction de vos goût et vos besoin 😉