搜尋 Mozilla 技術支援網站

防止技術支援詐騙。我們絕對不會要求您撥打電話或發送簡訊,或是提供個人資訊。請用「回報濫用」功能回報可疑的行為。

Learn More

Migrating session from SeaMonkey to Firefox

  • 3 回覆
  • 1 有這個問題
  • 26 次檢視
  • 最近回覆由 svip7782

more options

I've been using SeaMonkey for quite a while now, but I am slowly coming to terms with it being a memory hog, that has some apparent memory leak in it. Despite having 64 GiB of RAM in my desktop, running it for a few days - though with many tabs - can still cause it to crash, sometimes the entire OS.

So I want to migrate the session from SeaMonkey to Firefox, i.e. preserve my tabs. Copying keys3.db and logins.sqlite ensures my passwords are copied over. But copying places.sqlite or sessionstore.json from my SeaMonkey profile to Firefox does not work.

Inspect places.sqlite both generated by Firefox and SeaMonkey, I notice that they do not have the same schema for moz_places, so I wonder if that is upsetting Firefox, and scraps the entire file. I notice that Firefox - while not using sessionstore.json any more - is using another file called sessionstore.jsonlz4, I wonder if I could convert my SeaMonkey sessionstore.json to a sessionstore.jsonlz4 file, that Firefox might be able to load it. However, finding guides on how to generate a jsonlz4 is hard, since most - if not all - are about decoding them.

So I am a bit stumped. How do I migrate my SeaMonkey session to Firefox? I can live with losing my history, and I don't use bookmarks. We are talking about well over 100 tabs, and I'd hate having to enter them manually.

I am using Firefox 92 and SeaMonkey 2.53.8.1 on Fedora 33.

I've been using SeaMonkey for quite a while now, but I am slowly coming to terms with it being a memory hog, that has some apparent memory leak in it. Despite having 64 GiB of RAM in my desktop, running it for a few days - though with many tabs - can still cause it to crash, sometimes the entire OS. So I want to migrate the session from SeaMonkey to Firefox, i.e. preserve my tabs. Copying keys3.db and logins.sqlite ensures my passwords are copied over. But copying places.sqlite or sessionstore.json from my SeaMonkey profile to Firefox does not work. Inspect places.sqlite both generated by Firefox and SeaMonkey, I notice that they do not have the same schema for moz_places, so I wonder if that is upsetting Firefox, and scraps the entire file. I notice that Firefox - while not using sessionstore.json any more - is using another file called sessionstore.jsonlz4, I wonder if I could convert my SeaMonkey sessionstore.json to a sessionstore.jsonlz4 file, that Firefox might be able to load it. However, finding guides on how to generate a jsonlz4 is hard, since most - if not all - are about decoding them. So I am a bit stumped. How do I migrate my SeaMonkey session to Firefox? I can live with losing my history, and I don't use bookmarks. We are talking about well over 100 tabs, and I'd hate having to enter them manually. I am using Firefox 92 and SeaMonkey 2.53.8.1 on Fedora 33.

被選擇的解決方法

Your solutions may well have helped, but I ended up using a more rudimentary solution. A SeaMonkey developer told me that it was not possible, because the session data was incompatible with one another.

SeaMonkey still uses `sessionstore.json` (yes, .json). So I ended using the following command:

   cat sessionstore.json | jq ".windows[].tabs[].entries[-1].url" | tr '\n' ' ' | xargs firefox

This made Firefox open all the tabs' current URLs in order.

Yes, the history was lost in each tab, but I am OK with that. I apologise to any future user seeking to restore the history of the session as well, but they may have a go at the other solutions provided here.

從原來的回覆中察看解決方案 👍 0

所有回覆 (3)

more options

Hello,

I have not used seamonkey other than playing around, so I can not be sure that this works; however I will give you my best shot.

Because you are on Fedora, most likely you have the lz4 command. This command can compress and decompress lz4 compressed files. You can execute `lz4 {inputFile} {outputFile}` which will compress the file, into what I believe (given the name) is what you want. Execute `lz4 --help` for the full list of possible operands.

For static data:

Firefox has an import data wizard, [article about the import wizard]

Firefox can import bookmarks in the netscape html format [article here]

more options

Current Firefox versions use key4.db and not key3.db for the key file. Support for key3.db ended with Firefox 73 and newer and you need to install Firefox 72.0.2 as the last version that supports key3.db to make Firefox upgrade to key4.db.

If you copy an uncompressed sessionstore.js file (not .json) then at least make sure that there isn't a sessionstore.jsonlz4 in that profile. You may also have to rename the sessionstore-backups folder. The sessionstore.js my still not be compatible with current releases.

You can look at this tool to inspect a (compressed) sessionstore file.

You can also try to restore the session via code in the Browser Console.

ssj = prompt("Copy Current Session State\n\nPaste New Session State: press ESC or click Cancel to abort", ssj||"");
if(ssj){SessionStore.setBrowserState(ssj)}

more options

選擇的解決方法

Your solutions may well have helped, but I ended up using a more rudimentary solution. A SeaMonkey developer told me that it was not possible, because the session data was incompatible with one another.

SeaMonkey still uses `sessionstore.json` (yes, .json). So I ended using the following command:

   cat sessionstore.json | jq ".windows[].tabs[].entries[-1].url" | tr '\n' ' ' | xargs firefox

This made Firefox open all the tabs' current URLs in order.

Yes, the history was lost in each tab, but I am OK with that. I apologise to any future user seeking to restore the history of the session as well, but they may have a go at the other solutions provided here.