Bonjour le monde.
J'ai chez moi une dizaine de machines qui tournent sous des Unix
divers. Sur certaines d'entre elles, je fait du dev, et donc je
ne voudrais pas perdre quoi que ce soit si l'une d'entre elle se
gauffre. J'ai donc réfléchi longuement sur mon cas, et je suis
arrivé à cette idée:
Sur chacune des machines, j'ai un répertoire ~/Backups/ dans
lequel je copie ce que je veux préserver. Pour le moment, je
duplique manuellement d'une machine à l'autre (par scp ou rsync)
quelques fichiers. Au bout d'un moment c'est assez fastidieux :{
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
tTh (qui vient de perdre une machine ;)
Bonjour le monde.
J'ai chez moi une dizaine de machines qui tournent sous des Unix
divers. Sur certaines d'entre elles, je fait du dev, et donc je
ne voudrais pas perdre quoi que ce soit si l'une d'entre elle se
gauffre. J'ai donc réfléchi longuement sur mon cas, et je suis
arrivé à cette idée:
Sur chacune des machines, j'ai un répertoire ~/Backups/ dans
lequel je copie ce que je veux préserver. Pour le moment, je
duplique manuellement d'une machine à l'autre (par scp ou rsync)
quelques fichiers. Au bout d'un moment c'est assez fastidieux :{
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
tTh (qui vient de perdre une machine ;)
Bonjour le monde.
J'ai chez moi une dizaine de machines qui tournent sous des Unix
divers. Sur certaines d'entre elles, je fait du dev, et donc je
ne voudrais pas perdre quoi que ce soit si l'une d'entre elle se
gauffre. J'ai donc réfléchi longuement sur mon cas, et je suis
arrivé à cette idée:
Sur chacune des machines, j'ai un répertoire ~/Backups/ dans
lequel je copie ce que je veux préserver. Pour le moment, je
duplique manuellement d'une machine à l'autre (par scp ou rsync)
quelques fichiers. Au bout d'un moment c'est assez fastidieux :{
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
tTh (qui vient de perdre une machine ;)
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Ça, c'est très facile à faire. Quelque chose comme ceci devrait suffire :
cd
for m in [toutes tes machines]; do
[[ $m == $HOST ]] && continue
rsync -a Backups/ $m:Backups/
done
Là où c'est plus difficile, c'est (1) si tu veux supprimer un fichier : il
faut le supprimer partout, ou sinon il va revenir ;
et (2) si tu fais la
bêtise de nommer deux fichier de la même manière sur deux machines
différentes, au mieux l'un va écraser l'autre, au pire tu pourrais avoir des
exemplaires de l'un et de l'autre qui se déplacent entre les différentes
machines au gré des synchronisations (ça peut être assez rigolo à regarder).
Une solution pour résoudre ces deux problèmes, c'est d'avoir un répertoire
~/var/backups qui contient un répertoire par machine (avec ~/Backups qui est
un lien vers le bon exemplaire). Dans ce cas, le rsync devient :
Ceci dit, tu as parlé de développement. Donc ça doit normalement être des
petits fichiers textes. Donc mon neurone « suivi de version » fait bip.
Plutôt que des tarballs, ~/Backups contient des dépôts Git, et tu fais un
git pull sur chaque machine dans tous les sens.
opposés entre les mêmes répertoires en même temps, mais le problème ne se
pose pas si tu as un répertoire par machine. Et j'ose espérer que Git a un
système de verrou fiable.
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Ça, c'est très facile à faire. Quelque chose comme ceci devrait suffire :
cd
for m in [toutes tes machines]; do
[[ $m == $HOST ]] && continue
rsync -a Backups/ $m:Backups/
done
Là où c'est plus difficile, c'est (1) si tu veux supprimer un fichier : il
faut le supprimer partout, ou sinon il va revenir ;
et (2) si tu fais la
bêtise de nommer deux fichier de la même manière sur deux machines
différentes, au mieux l'un va écraser l'autre, au pire tu pourrais avoir des
exemplaires de l'un et de l'autre qui se déplacent entre les différentes
machines au gré des synchronisations (ça peut être assez rigolo à regarder).
Une solution pour résoudre ces deux problèmes, c'est d'avoir un répertoire
~/var/backups qui contient un répertoire par machine (avec ~/Backups qui est
un lien vers le bon exemplaire). Dans ce cas, le rsync devient :
Ceci dit, tu as parlé de développement. Donc ça doit normalement être des
petits fichiers textes. Donc mon neurone « suivi de version » fait bip.
Plutôt que des tarballs, ~/Backups contient des dépôts Git, et tu fais un
git pull sur chaque machine dans tous les sens.
opposés entre les mêmes répertoires en même temps, mais le problème ne se
pose pas si tu as un répertoire par machine. Et j'ose espérer que Git a un
système de verrou fiable.
Maintenant, j'aimerais bien que tout ça devienne automatique. Sur
une machine Z, je copie ~/Essais/machin.tar.gz dans ~/Backups et
ce fichier sera automatiquement dupliqué dans tous les ~/Backups
des autres machines. Et là, j'hésite...
Ça, c'est très facile à faire. Quelque chose comme ceci devrait suffire :
cd
for m in [toutes tes machines]; do
[[ $m == $HOST ]] && continue
rsync -a Backups/ $m:Backups/
done
Là où c'est plus difficile, c'est (1) si tu veux supprimer un fichier : il
faut le supprimer partout, ou sinon il va revenir ;
et (2) si tu fais la
bêtise de nommer deux fichier de la même manière sur deux machines
différentes, au mieux l'un va écraser l'autre, au pire tu pourrais avoir des
exemplaires de l'un et de l'autre qui se déplacent entre les différentes
machines au gré des synchronisations (ça peut être assez rigolo à regarder).
Une solution pour résoudre ces deux problèmes, c'est d'avoir un répertoire
~/var/backups qui contient un répertoire par machine (avec ~/Backups qui est
un lien vers le bon exemplaire). Dans ce cas, le rsync devient :
Ceci dit, tu as parlé de développement. Donc ça doit normalement être des
petits fichiers textes. Donc mon neurone « suivi de version » fait bip.
Plutôt que des tarballs, ~/Backups contient des dépôts Git, et tu fais un
git pull sur chaque machine dans tous les sens.
opposés entre les mêmes répertoires en même temps, mais le problème ne se
pose pas si tu as un répertoire par machine. Et j'ose espérer que Git a un
système de verrou fiable.
Ouiménon, là. Je voudrais que cette "architecture de réplication" soit
personnelle à chaque yuser séparément. Et que ce soit transparent pour
chacun des yusers: il met un truc dans son ~/Backups, et hop...
Ouiménon, là. Je voudrais que cette "architecture de réplication" soit
personnelle à chaque yuser séparément. Et que ce soit transparent pour
chacun des yusers: il met un truc dans son ~/Backups, et hop...
Ouiménon, là. Je voudrais que cette "architecture de réplication" soit
personnelle à chaque yuser séparément. Et que ce soit transparent pour
chacun des yusers: il met un truc dans son ~/Backups, et hop...
Sur chacune des machines, j'ai un répertoire ~/Backups/ dans
lequel je copie ce que je veux préserver. Pour le moment, je
duplique manuellement d'une machine à l'autre (par scp ou rsync)
quelques fichiers. Au bout d'un moment c'est assez fastidieux :{
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
Sur chacune des machines, j'ai un répertoire ~/Backups/ dans
lequel je copie ce que je veux préserver. Pour le moment, je
duplique manuellement d'une machine à l'autre (par scp ou rsync)
quelques fichiers. Au bout d'un moment c'est assez fastidieux :{
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
Sur chacune des machines, j'ai un répertoire ~/Backups/ dans
lequel je copie ce que je veux préserver. Pour le moment, je
duplique manuellement d'une machine à l'autre (par scp ou rsync)
quelques fichiers. Au bout d'un moment c'est assez fastidieux :{
Donc, si vous connaissez une solution qui marche, surtout avec
des machines qui ne sont pas allumées tout le temps, je suis
preneur...
Seul un système automatisé et contrôlé est fiable, amha.
C'est bien ce que je cherche à mettre en place :)
une clef ssh, puis un script dans la crontab avec en gros :
rsync --delete -ave "ssh -l bkpuser" /source server:/dest/`hostname`/
- Pourquoi se limiter à un dossier backup remplis manuellement plutôt
qu'à tout /home, voir à / ?
- Pourquoi faire un backup dans tous les sens plutôt que de définir un
certain ordre ?
A présent pour la question des machines allumées / éteintes, une
solution simple est de mettre un cron job toutes les heures et vérifier
que le "serveur" est dispo avec une commande ssh genre "uanme"
Seul un système automatisé et contrôlé est fiable, amha.
C'est bien ce que je cherche à mettre en place :)
une clef ssh, puis un script dans la crontab avec en gros :
rsync --delete -ave "ssh -l bkpuser" /source server:/dest/`hostname`/
- Pourquoi se limiter à un dossier backup remplis manuellement plutôt
qu'à tout /home, voir à / ?
- Pourquoi faire un backup dans tous les sens plutôt que de définir un
certain ordre ?
A présent pour la question des machines allumées / éteintes, une
solution simple est de mettre un cron job toutes les heures et vérifier
que le "serveur" est dispo avec une commande ssh genre "uanme"
Seul un système automatisé et contrôlé est fiable, amha.
C'est bien ce que je cherche à mettre en place :)
une clef ssh, puis un script dans la crontab avec en gros :
rsync --delete -ave "ssh -l bkpuser" /source server:/dest/`hostname`/
- Pourquoi se limiter à un dossier backup remplis manuellement plutôt
qu'à tout /home, voir à / ?
- Pourquoi faire un backup dans tous les sens plutôt que de définir un
certain ordre ?
A présent pour la question des machines allumées / éteintes, une
solution simple est de mettre un cron job toutes les heures et vérifier
que le "serveur" est dispo avec une commande ssh genre "uanme"
Parce que pour ces trucs là, j'ai déja des procédures, et d'autre
part, parmi tous ces /home, il y en a qui contiennent des dizaines
de giga de fichier intermédiaires qui n'ont pas vraiment besoin
d'être sauvé toutes les trois minutes.
Je cherche un système de
réplication transparent. Peut-être voir avec Unison ?
Parce que pour ces trucs là, j'ai déja des procédures, et d'autre
part, parmi tous ces /home, il y en a qui contiennent des dizaines
de giga de fichier intermédiaires qui n'ont pas vraiment besoin
d'être sauvé toutes les trois minutes.
Je cherche un système de
réplication transparent. Peut-être voir avec Unison ?
Parce que pour ces trucs là, j'ai déja des procédures, et d'autre
part, parmi tous ces /home, il y en a qui contiennent des dizaines
de giga de fichier intermédiaires qui n'ont pas vraiment besoin
d'être sauvé toutes les trois minutes.
Je cherche un système de
réplication transparent. Peut-être voir avec Unison ?
Par contre, ce dont tu parles resemble à un travail professionnel.
Si je compare le prix de l'heure d'un dev au prix du Go, je ne comprends
pas vraiment ton point de vue.
Je cherche un système de
réplication transparent. Peut-être voir avec Unison ?
Connais pas.
Mais ça a l'air intéressant.
Par contre, ce dont tu parles resemble à un travail professionnel.
Si je compare le prix de l'heure d'un dev au prix du Go, je ne comprends
pas vraiment ton point de vue.
Je cherche un système de
réplication transparent. Peut-être voir avec Unison ?
Connais pas.
Mais ça a l'air intéressant.
Par contre, ce dont tu parles resemble à un travail professionnel.
Si je compare le prix de l'heure d'un dev au prix du Go, je ne comprends
pas vraiment ton point de vue.
Je cherche un système de
réplication transparent. Peut-être voir avec Unison ?
Connais pas.
Mais ça a l'air intéressant.