2009/02/25

FirefoxのProfileを縮小

ついでにプロファイルを作り直してみた。 どれだけゴミが溜まっていたのか、プロファイルのサイズが76MB→38MBまで小さくなった。

これを見て、思い出しました。FirefoxのProfile配下にはsqliteのDBファイルが幾つかあります。sqliteは一度拡張すると、データを消しても小さくならないようです(デフォルトでは)。

そこで、sqliteにはvacuumという余分な空白を圧縮してファイルを縮小する機能があるそうです。他のDB(PostgreSQL等)にもあるみたいですが。

どのファイルがどういう役目なのかはググればいいとして、圧縮にはコマンドラインのsqlite以外にFirefoxのアドオンsqlite-manager - Google Codeも使えるそうです。

  1. SQLite Managerをインストール
  2. profile下の適当に大きい*.sqliteファイルを探す
  3. SQLite Managerを開く
  4. [Database] > [Connect Database]で当該ファイルを開く
  5. [Database] > [Compact Database]で圧縮

なぜか"vacuum"ではなく"Compact Database"です。その方が直感的ですが、関連付けがあれば尚解りやすい。"Compact Database(vacuum)"など。

SQLite Managerでは他にも、profileディレクトリにあるsqliiteファイルを一覧してくれるプルダウンもありますが、なぜか私の環境ではこのプルダウンをでファイルを選択->Compact Databaseではうまく機能せず、ファイルが圧縮されませんでした。

ちなみに、ファイルサイズですが

urlclassifier3.sqlite
50数MB->15MB強
urlclassifier2.sqlite
15MB前後->6MB強

程度の圧縮率だった気がします(記録忘れ)。これらのファイルは危険なサイトのブラックリストらしいので、警告機能をONにしている限り肥大化していきます。profileごと作り直すと当然小さくなります。

警告をOFFにすることでディスクアクセスも減らせるようですが、その辺は危険度と速度のトレードオフになるようです。

ほかにplaces.sqliteなども履歴ファイルなので肥大化するようです。私はUSBで持ち運ぶ前提でキャッシュのサイズや履歴の日数を少なくしていたので、それほど大きくなっていませんでした。