Celles et ceux qui sont déjà venu(e)s chez moi savent que j’ai une utilisation de FireFox peu conventionnelle : quasiment 70+ onglets toujours ouverts en permanence et une liste de bookmarks qui rappelerait presque ce que Google indexe quotidiennement.

A chaque fois que je ferme le navigateur, il ferme les 70 onglets. Et les rouvre au démarrage suivant. Et aujourd’hui, au redémarrage : plus aucun onglet, juste la page de démarrage. Bref, mon Firefox s’est planté et a perdu toute ma liste d’onglets ouverts. Et il est impossible de restaurer l’ancienne session.

Suivez le guide, tout n’est pas perdu.

Etape 1 : trouver le fichier sessionstore.bak

Après avoir constaté qu’il n’était pas possible de restaurer les onglets depuis le navigateur, je me suis rendu dans mon répertoire utilisateur de Firefox. Chez moi, sous Ubuntu, cela correspond à /home/USER/.mozilla/firefox/XXXXXXXX.default (où USER est votre nom de session et XXXXXXXX une chaine alphanumérique aléatoire).

Dans ce répertoire, vous trouverez 2 fichiers intéressants pour notre manoeuvre :

  • le fichier sessionstore.js contient la session actuelle donc vidée de ses onglets. Nous en faisons une copie quand même.
  • le fichier sessionstore.bak contient la ou les sessions précédentes, le fichier étant créé après un plantage du navigateur. Il peut contenir plusieurs dizaines de session. Chez moi, il fait 973 Ko, ce qui est plutôt énorme. Nous en faisons une copie également.

Normalement, les deux fichiers sont lisibles avec un éditeur de texte. Evidemment, comme pour nous compliquer la tâche, il s’avère que mon fichier sessionstore.bak est corrompu et totalement illisible.

Il va falloir remonter nos manches.

A lire :  GIMP : ajouter le plugin "Enregistrer pour le Web"

Etape 2 : lecture du fichier et extraction des URL avec PERL

Nous allons utiliser un script écrit en Perl pour lire et extraire chacune des URLs contenues dans le fichier. Si on peut retrouver toute la liste des URLs, il sera aisé de les relancer dans le navigateur.

Voici le script, écrit par codecrumb :

#!/usr/bin/perl
my @array;

open(FILE,"sessionstore.bak");

for (<FILE>) {
   (@array) = split(/,{/,$_);
}

# extract everything that looks like a url
for $line (@array) {
   my $f;
   
   ($f) = ($line =~ /"url":"([^"]*)"/);

   print "$f \n";
}

Histoire de faire les choses proprement, on :

  1. copie sessionstore.bak sur le bureau
  2. copie le script dans un nouveau fichier sur le bureau, intitulé url.pl
  3. lance la commande suivante dans le terminal :
    perl url.pl 

Le script se lance et va vous sortir toutes les URLs précédemment visitées, sans réel ordre précis. Enormément d’URLs concernent les réseaux sociaux. A chaque fois qu’un appel vers un script Facebook ou Twitter apparaît sur une page, il apparaît également dans le fichier.

Il faudra donc analyser les lignes pour retrouver ce que vous cherchez mais vous récupérerez l’essentiel de vos onglets.

Pour développer votre projet WordPress ou Woocommerce, faites appel à mon expertise pour réaliser un site rapide, performant et fonctionnel.

Contactez-moi

Si vous avez trouvé une faute d’orthographe, informez-nous en sélectionnant le texte en question et en appuyant sur Ctrl + Entrée s’il vous plaît.

Articles en rapport:

FireFox : récupérer les onglets ouverts d’une session corrompue

par Matt Lecture: 2 min
2

Pin It on Pinterest

Share This

Spelling error report

The following text will be sent to our editors: