15

My Windows XP system crashed. Usually about:sessionrestore shows me my previous session. But this time, after I rebooted, the page appeared blank.

I was able to find my sessionsstore files in my profile folder. They have names like sessionstore-1.js through sessionstore-8.js. There is also a sessionstore.bak, which was probably created when the system crashed. I don't trust the sessionstore.bak: it's really small in size.

Can I use sessionstore-8.js instead to get back my old sessions?

Also, how exactly do I go about this? Should I quit Firefox before making any changes under the profile directory?

2
  • Check out this blog post for restoring information from sessionstore.bak otherwise just open the sessionstore-#.js in a text editor or check this out. +1 though, interesting question Feb 28, 2012 at 11:42
  • 1
    The above mentioned methods for extracting URLs from sessionstore-#.js extract ALL URLs including each tab's browsing history. (not what anyone wants, I think) Mar 26, 2012 at 8:31

5 Answers 5

3

You can use the utility at http://firefox-session-restore.herokuapp.com/ to restore your tabs. Just paste in the contents of sessionstore.bak.

4
  • This page has failed with several of my files. A big lack of this page is that it does not say what it is supposed to do. Oct 5, 2013 at 8:03
  • Can you provide the data on which it failed?
    – Johnny
    Oct 6, 2013 at 13:36
  • I have over 100 urls in my sessionstore.bak. The website only appears to display about 15 of them.
    – Rucent88
    Apr 5, 2014 at 4:07
  • hi @Rucent88, is there any chance you could provide me with the file so I can see what's going wrong?
    – Johnny
    May 28, 2014 at 21:07
2

Open the most recent file (probably sessionstore.js) in an advanced text editor supporting regular expression search and replace (for example, TextPad and Notepad++).

Replace all

"entries":\[{"url":"([^"]*)"

with

\n\1\n

And the URLs of the last opened tabs will appear on every other line.

(Note on TextPad: you need to enable POSIX syntax in PreferencesEditor.)

4
  • In UltraEdit I had to escape { for it to work : "entries":\[\{"url":"([^"]*)" (I used "Regular Expression Engine" set to "Perl".) Jan 31, 2017 at 20:39
  • The URLs of the result can be fished out with the regular expression ^https*:// (using a line-filtering method - this is at least possible in both Notepad++ and UltraEdit). Jan 31, 2017 at 20:50
  • Aren't you forgetting other possible protocols like http:, ftp:, file:, etc Feb 1, 2017 at 9:23
  • Yes, but not http. It is covered by s*. I was thinking of normal web pages. Feb 2, 2017 at 21:25
1

I have encountered the same problem and didn't find any good solution to restore the sessionstore.bak file. Here is the solution that worked for me:

Assuming that your sessionstore.json (seamonkey) or sessionstore.js (firefox) is rather empty and you lost all your tabs. Assuming that your sessionstore.bak file is bigger and contains all your tabs, but simply renaming sessionstore.bak to sessionstore.json (or .js) doesn't work.

Here is how to restore all your tabs using the "sessionstore.bak" file:

  1. Close the browser, make a backup of the sessionstore.bak file and don't relaunch the browser, it would overwrite the file.
  2. Copy sessionstore.bak file to sessionstore.json (or .js for Firefox).
  3. Edit the sessionstore.json file with a decent editor that doesn't cut long lines (the file is a 1 line JSON file that can contain several MB of data!). I have used vi successfully.
  4. At the beginning of the file, you will see something like this:

    {"windows":[],"selectedWindow":0,"_closedWindows":[{"tabs":[{"entries":[{"url":
    

    Simply replace this line by this (basically we remove the selectedWindow and _closedWindows fields):

    {"windows":[{"tabs":[{"entries":[{"url":
    

    (with vi editor, just place the cursor after the first opening square bracket, then hit [SUPPR] the required number of times, then hit : W Q Enter)

  5. Open your browser, and now all the tabs should appear as before :-)

This is a "works for me" solution!

1

Try sessionstore.js in your Profile folder.

0

See if this helps any: Remove numbered sessionstore-##.js files (sessionstore-1.js).

Those shouldn't be there and usually indicate that other software is accessing the main sessionstore.js file that Firefox rewrites every 10 seconds.

  • Copy sessionstore.bak in the profile folder, rename it to .js, replace the cache folders moved in the "recovered files" directory back in their original location, replace a couple of missing userchrome.css files with some others from a previous backup, and delete that sessionstore-1.js
1
  • How is removing the sessionstore-##.js files supposed to help the OP, when he wants to restore the session from one of those files? Oct 2, 2015 at 19:00

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .