« レベルE・第11話 | Start | Firefox3.6からFirefox4にcookies.sqliteとplaces.sqliteが引き継げなかった原因が判明 »

非常に悲惨で危険な結果に終わったのでFirefoxを3.6から4にアップグレードするのを見送った

Firefox4が出たと聞いたので、今朝さっそくアップグレードした。

なんだかかなり早くなった気がしたのでこれはいいかなと思ったものの、やがて異変に気がつく。あちこちのサイトのセッションが全て切れている。例えばYahooとかAmazonとかGoogleとか、一旦ログインすると一定期間でパスワードの再認証が求められる事があるが、その時でも「あなたは××さん」と言うのは覚えている。しかし、どこに行っても初見の人とされる。

これはどう見てもcookieが吹っ飛んだとしか思えない。以前私はFirefoxを使っていてcookieが保管されているcookies.sqliteがぶっ壊れて復旧した経験があるが、あれと非常に似ている。多分今回もアップグレードの過程でたまたまcookies.sqliteが壊れたのではないかと、一旦Firefox4を終了させて、Profileのディレクトリの中を見てみるとcookies.sqlite.bakと言うのがまさにアップグレードした頃のタイムスタンプで出来ており、これが元のではないかと踏んでdump->readの手順を踏んで復活させた。一見修復された様に見える。

ところがFirefox4を起動するとやっぱりcookieが無い事になっている。しかもそれでFirefox4を一旦終了させてまたもsqliteでcookies.sqliteを見ようとすると「暗号化されているか、またはdatabaseではない」と言われて中身が見えない。Firefox4から暗号化する様になったの?(それはそれでセキュリティ的にありなのかもしれない) それとも本当に壊れているの?

それはともかくこの状態だと新しく喰わせた(保存型の)cookieも一旦Firefox4を終了させると記録されずに消滅してしまったので、これでは使い物にならないからダウングレードする事にした。

ダウングレードは古いバージョンのFirefoxのSetup.exeを起動すればいいと言うのをぐぐったら見つけたので、mozilla.orgのftpサーバに繋げて古いバージョンのsetup.exeを入手。Setupを開始したら確かに古いバージョン(3.6.9)になった。

cookies.sqlite.bakをcookies.sqliteとしてコピーし、Firefox3.6.9を起動したら目出度く昨日までに保存されていたcookieが見える様になった。

しかし、もうひとつ異変が発見された。

URL欄に過去に行ったサイトのURLの一部を入れても保管されない。あー、これはplaces.sqliteも破壊されたかとprofileディレクトリを見た予想通りで、places.sqliteが異様に小さくなり、その隣にplaces.sqlite.corruptなんて言う物が出来ている。これはsqlite覗いても例の「暗号化されているか、またはdatabaseではない」と言われて使い物にならない。昨日の時点のplaces.sqliteは永遠に失われてしまった。

これはそうひどくは痛いものではないが、でも不便は不便で、たまたま残っていた2年前(笑)のplaces.sqliteを使って復活させた。2年前のなので当たり前だがこの2年間の新しい訪問履歴は残っていない。主立ったサイトは2年前でも均しく使っていたので、少しは復旧した甲斐があった程度。


そう言うわけで、Firefox4にアップグレードしようとして未だの方には、アップグレード前に是非ともProfileディレクトリ内の*.sqliteファイルをバックアップしておく事をお勧めする。もし私と同じ状況に陥った場合はFirefoxをダウングレードしてその*.sqliteファイルを戻せば元に戻る。


不幸にして私と同じ状況に陥ってしまった方はProfileディレクトリにあるcookies.sqlite.bakが保存されていれば、Firefoxをダウングレードして、cookies.sqlite.bakをcookies.sqliteとしてコピーしてやればcookieが復活するかもしれない。places.sqliteはバックアップしてる人は滅多にいないだろうから、壊れた場合は諦めるしかないかも。

|

« レベルE・第11話 | Start | Firefox3.6からFirefox4にcookies.sqliteとplaces.sqliteが引き継げなかった原因が判明 »

TrackBack


Folgende Weblogs beziehen sich auf 非常に悲惨で危険な結果に終わったのでFirefoxを3.6から4にアップグレードするのを見送った:

« レベルE・第11話 | Start | Firefox3.6からFirefox4にcookies.sqliteとplaces.sqliteが引き継げなかった原因が判明 »