Affichage des articles dont le libellé est backup. Afficher tous les articles
Affichage des articles dont le libellé est backup. Afficher tous les articles

lundi 17 avril 2017

Emacs backups

The other day I really scared myself by almost losing 1 hour of uncommited work. I've mixed up some commands, redirected to the wrong file, even reloaded my buffer and emacs and my content was gone. I eventually found a version of the file displayed in another terminal, but it was closed.
 
In 2017, GNU/Linux doesn't have a filesystem with snapshots (not talking about btrfs).
 
So it turns out that emacs can do that. It normally automatically saves unsaved changes into a buffer, but as soon as you save it, you loses that history.

So now I have emacs keep some versions of the file, just it case.
Here's what it looks like. (If you don't have it set, use ls -B to hide all kind of backup files.)

-rw------- 1  8,9K mars  25 16:44 in30.md.~1~
-rw------- 1  8,9K mars  25 16:55 in30.md.~2~
-rw------- 1   12K avril 17 10:13 in30.md.~67~
-rw------- 1   12K avril 17 19:16 in30.md.~68~
-rw------- 1   12K avril 17 19:29 in30.md.~69~
-rw------- 1   12K avril 17 19:40 in30.md.~70~
-rw------- 1   12K avril 17 19:40 in30.md.~71~
-rw------- 1   12K avril 17 19:47 in30.md.~72~
-rw------- 1   12K avril 17 19:47 in30.md


And there's what I've added to my ~/.emacs.d/init.el

;; if you wish to keep all backup files into a central directory
;; (setq backup-directory-alist `(("." . "~/.saves")))

(setq vc-make-backup-files t)
(setq delete-old-versions t
      kept-new-versions 6
      kept-old-versions 2
      version-control t
      backup-by-copying-when-linked t)

(defun force-backup-of-buffer ()
  (setq buffer-backed-up nil))

(add-hook 'before-save-hook  'force-backup-of-buffer)

lundi 31 janvier 2011

Test de PRA duplicity: succès partiel

J'utilise depuis 6 mois duplicity avec Amazon S3 pour sauvegarder des choses vraiment importantes de mon portable: mes documents importants et des bouts de configuration locale, genre /etc.

Ce soir j'ai essayé de récupérer un /etc/shadow datant de 3 mois en faisant un:
${DUPLICITY} -t 3M --file-to-restore=etc/shadow ${DEST} /tmp/shadow
et j'ai bien du télécharger 300Mio pour pouvoir récupérer mon fichier de 2Kio...

Échec! Volume was signed by key None, not 987BF8A4

Je commence a en avoir marre de duplicity ou rdiff-backup: déjà avec rdiff-backup, je m'étais rendu compte que le format des métadonnées avait changé d'une version à l'autre et cela avait rendu caduques mes anciennes sauvegardes... Ici j'ai toujours bien fait mes sauvegardes et paf, ça me dit que ça n'est pas bien signé, et ça reste là à rien faire. ^C. Et là miracle, mon fichier a bien été restauré... Je suis en totale confiance.

Autant duplicity c'est très rapide pour faire les sauvegardes incrémentales, autant il y a un truc de complètement foiré au niveau de la restauration: en gros j'ai l'impression qu'il a téléchargé le morceau d'archive tar de la sauvegarde complète précedente, puis qu'il a téléchargé chaque incrémentale jusqu'à la date demandée...

J'abandonne S3 en direct, faute d'outil adéquate.
Et j'abandonne aussi duplicity, je retourne vers du tar ou rsync.

mercredi 8 septembre 2010

Sauvegarder son compte IMAP en mbox/maildir

J'ai suivi deux autres billets sur comment sauvegarder un compte IMAP avec cet autre bon logiciel libre : getmail4 .

En détails, ce que j'ai fait en détails pour sauver mon compte GMail en mbox et maildir dans ~/gmail.getmail4:

1) Créer le fichier le fichier ~/.getmail/gmail.conf comme ce qui suit:
[retriever]
type = SimpleIMAPSSLRetriever
server = imap.gmail.com
username =moi@gmail.com
password = pouetpouet
mailboxes = ("[Gmail]/Tous les messages",)

[destination]
type = MultiDestination
destinations = ("[mboxrd-destination]", "[maildir-destination]")

[mboxrd-destination]
type = Mboxrd
path = ~/gmail.getmail4/mboxrd/gmail-backup.mbox

[maildir-destination]
type = Maildir
path = ~/gmail.getmail4/maildir/

[options]
# print messages about each action (verbose = 2)
# Other options:
# 0 prints only warnings and errors
# 1 prints messages about retrieving and deleting messages only
verbose = 2
message_log = ~/gmail.getmail4/gmail.log

# preserves your mail after backup
delete = false
# just get new mails
read_all = false
2) Créer la strcture:
mkdir ~/gmail.getmail4/maildir/{new,cur,tmp} 
touch ~/gmail.getmail4/mboxrd/gmail-backup.mbox
3) feu !
getmail -r /home/benoit/.getmail/gmail.conf