†Linuxなんて大キライ†

Seamonkeyメモ

作成開始日 2024.01.02
最終更新日

SeamonkeyとFirefoxのbookmark (2025.05.11)

Firefox 138.xとSeamonkey 2.53.xのブックマークファイル(.jsonlz4形式)には互換性がある。

ブックマークの場所~/.mozilla/seamonkey/(profile名)/bookmarkbackups
~/.mozilla/firefox/(profile名)/bookmarkbackups
ファイル名bookmarks-20xx-xx-xx_……==.jsonlz4
読込手順[ブックマークの管理|インポートとバックアップ|復元]

bookmarks-…ファイルを適当なディレクトリにコピー後、上記の手順で読み込ませれば良い。

Seamonkeyのメモリの肥大化−−2.53.xはメモリリーク版?

Seamonkey 2.53.12および2.53.18を使用していたところ、使用メモリが異常に増大する現象が確認された(いずれもLinux/64bit版;Win/64bit版2.53.17でも確認)。起動時には160MB程度なのだが、一日終わってみれば3GB超、酷い時は4GB超にもなる。動作も重くなり、メニューバーから項目を選ぶだけでも2〜3秒掛かるようになった。

【追記1】Semonkey 2.53.20ではこの症状は若干改善された模様。ただし、JavaScriptをEnabledにしていると、やはり比較的短期間で1GBを超える。Firefoxとの併用を考える方が良さそうだ。

【追記2】根本原因はヒープの解放ができていない事のようだ。これは、NoScriptを使用して小まめにJava ScriptのON/OFFを切り替えている時に顕著。つまり、JSのON/OFFによって、ヒープの解放命令が実行されないことがある……と言うことではないかと(根拠薄弱な推論)。
 と言うことで、@NoScriptを使用せずJSゆんゆんで使用する、ANoScriptは使用するが途中でJSのON/OFF制御はしない、という二つの実験を試みたところ、@もAも傾向は同じで、(a) メモリの膨張は有意に小さくなった、 (b) が、完全に解決されたわけではなく、やはり2.53は2.49よりも早く膨張する。

流石に正常な状態ではないので[about:memory|Show memory reoprts|Measure]でチェックしたところ、閉じたページのデータが「detached」のまま解放されずに累積されていた。メモリリークと考えて良いだろう。一応「about:memory」でGC/CC/Minimizeしてみたが、ほとんど効果がなかった。

ちなみにこの現象、JavaScriptを全オフにしておくと発生しない。が、流石にそれでは不便過ぎる。また、Seamonkeyをいったん終了して起動し直せばリセットされる。閉じる前のタブは簡単に復元できるので、実用的と言えないこともないが、煩わしいし、そもそも正常な動作ではない。

で、Seamonkey/FireFoxのメモリ肥大化に関する情報をネットで漁ったところ、以下のような情報が見つかった。

なお、about:configに関しては、以下のような設定変更をした。
image.mem.max_decoded_image_kb: 20000(kB)		20MB
image.mem.surfacecache.max_size_kb: 256000(kB)	256MB
image.cache.size: 256000(kB?)				256MB?

javascript.options.mem.max: 51200(kB)			50MB
javascript.options.mem.high_water_mark: 32(MB)	これだけMB?

browser.cache.memory.capacity: 0
browser.cache.memory.enable: false
browser.sessionhistory.max_total_viewers: 0
とまあ、いろいろ試してみたが、何れも「多少の効果」の域を出なかった。少なくとも、これらの対策を取っても、使用メモリはすぐに2GBをオーバーした。これでは解決にならない。それに、メモリ設定を下手に小さくすると、システム道連れでフリーズするので要注意。X落としてコマンドラインに抜けることすらできなくなったことがある。

仕方ないので、旧バージョンを試すことにした。私の記憶では、以前はこんなことは起きなかったはずなので…で、Seamonkey 2.49.5(Linux/64bit版)を試してみたところ、detachedページが居座る現象は発生せず、ページを閉じればその分メモリが解放されるという、正常な動作に戻った。

Seamonkeyは2.49.5を使用しろ!

と言う結論で良いのかなぁ…?なお、Seamonkey 2.49.5でもヒープは解放されなかった。GCも効果なし。したがって、ホーム以外の全てのタブを閉じても初期状態に戻るわけではない。が、その影響は数十MB程度で実用上は問題なさそうだ。今回はここまで。

Seamonkeyのインストール

@Seamonkeyのダウンロードページから圧縮ファイルをダウンロードする
A圧縮ファイル[seamonkey-2.49.5.tar.bz2]をダブルクリックで展開する
B展開したフォルダ[seamonkey]を[/usr/lib]に移動する
C[/usr/share/applications]に以下のようなファイル[seamonkey.desktop]を作成する
D[/usr/lib/seamonkey/seamonkey]のシンボリックリンクを[/usr/bin]に入れておくと便利
seamonkey.desktop
[Desktop Entry]
Name=Seamonkey
Comment=Browse the World Wide Web
GenericName=Web Browser
X-GNOME-FullName=Seamonkey Web Browser
Exec=/usr/lib/seamonkey/seamonkey %u
Terminal=false
X-MultipleArgs=false
Type=Application
Icon=/usr/lib/seamonkey/chrome/icons/default/default48.png
Categories=Network;WebBrowser;
MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/
vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;
image/png;x-scheme-handler/http;x-scheme-handler/https; (*)MimeType行は3行継続
StartupWMClass=Seamonkey
StartupNotify=true

NoScriptのバージョン

〜後述〜


【Linuxなんて大キライ目次】 【ホーム】