logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Ceci est une ancienne révision du document !


Titre de Votre Tuto

Nota :

Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli !

Sauvegarder sa base de données keepassx avec git

Supprimer un mot de passe par erreur, casser la base de données en faisant une mauvaise manip, lors du plantage du logiciel, d'un bug de mise à jour, disque dur qui flanche… autant de choses que l'on ne veut pas rencontrer.

Pour s'en protéger, il est possible de stocker son fichier de pass dans un dépôt git.

Nous allons présenter ici deux solutions :

  • Version locale
    Un dépôt git sur votre machine principale, et une copie de la bdd sur votre clé usb. Particularités :
    • Un seul dépôt git
    • Il faut veiller à ce que la version de la clé soit la version à jour et la recopier dans le git à chaque modification externe.
  • Version (dé)centralisée
    • Un dépôt git par copie de la bdd
    • Script automatisant la mise à jour en cas de modification
    • Un dépôt git central devant être accessible via internet

testé par captnfab le 26/04/2013

Version locale

Création du dépôt

  • On crée le dossier devant héberger le dépôt, par exemple :
mkdir -p ~/perso/important
  • On crée le dépôt proprement dit :
cd ~/perso/important
git init

Initialisation du dépôt

  • On rajoute la base de données dans le dépôt git :
mv ~/perso/mes_pass.kdb .
git add mes_pass.kdb
git commit -a -m "Base de donnée initiale"
  • On rajoute un script de lancement rapide :
cat << EOF > lanceur.sh
#!/bin/sh
DOSSIER="\$HOME/perso/important/"
BDD="mes_pass.kdb"
cd "\$DOSSIER"
keepassx "./\$BDD"
git commit -a --author="\$USER@\$(hostname)" -m "Mise à jour..."
EOF
chmod +x lanceur.sh
git add lanceur.sh
git commit -a -m "Script de lancement"

Utilisation

  • On se rend dans le dossier important :
cd /mon/dossier/important
  • Et on y lance le lanceur :
./lanceur.sh

Version (dé)centralisée

Création du dépôt

  • On se logue sur la machine devant contenir le dépôt :
ssh machine0
  • On crée le dossier devant héberger le dépôt, par exemple :
mkdir -p ~/srv/git/important.git
  • On crée le dépôt proprement dit :
cd ~/srv/git/important.git/
git init --bare
  • On se déloggue de la machine :
exit

Initialisation du dépôt

  • On crée le dossier devant contenir le dossier important :
mkdir -p ~/perso/
  • On récupère le dépôt git distant :
cd ~/perso/
git clone machine0:srv/git/important.git
  • On rajoute dans celui-ci la base de données :
cd important
mv ~/perso/mes_pass.kdb .
git add mes_pass.kdb
git commit -a -m "Base de donnée initiale"
  • On rajoute un script de lancement rapide :
cat << EOF > lanceur.sh
#!/bin/sh
BDD="mes_pass.kdb"
git pull
keepassx "./\$BDD"
git commit -a --author="\$USER@\$(hostname)" -m "Mise à jour..."
git push
EOF
chmod +x lanceur.sh
git add lanceur.sh
git commit -a -m "Script de lancement"
  • On met à jour le dépôt distant en créant la branche master :
git push origin master

Sur les autres machines / sur la clé usb

  • On crée un dossier devant contenir le dossier important :
mkdir /mon/dossier
  • On récupère le dépôt distant :
cd /mon/dossier
git clone machine0:srv/git/important.git

Utilisation

  • On se rend dans le dossier important :
cd /mon/dossier/important
  • Et on y lance le lanceur :
./lanceur.sh
1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
doc/systeme/keepassx/sauvegarder-bdd-avec-git.1434822078.txt.gz · Dernière modification: 20/06/2015 19:41 par nIQnutn

Pied de page des forums

Propulsé par FluxBB