PPC Mac 環境での Firefox 開発版のブックマークバックアップについての問題

Firefox lzyc Buildについて で元トピックを脱線してスレッドを続けてしまいましたので、新しいトピックに分割しました。
そもそもの問題は PPC Mac 環境で Firefox 次期バージョンの開発版を使用するとブックマークのバックアップが正常に作成されないということで、
開発版を承知の上で確認してくださいとお願いしたことからはじまりました。
Mozilla 関係コミュニティで進めるべき内容とは承知していますが、Firefox ユーザが少ない Mac 環境で、さらに少ない PPC Mac ということからか、再現するという方からの報告がない状況です。
ここのボードでは相応しくない内容且つカテゴリも不適切かと思いますが、ご容赦ください。
もし Firefox Nightly Build を PPC Mac の Tiger または Leopard で使用されていて、新しいプロファイルを作った場合にブックマークが正常にバックアップされないことを確認できる方がいらっしゃれば、報告いただけると幸いです。
# これは製品版としてダウンロードできる Firefox 3.0.x 、Intel Mac では発生しません。
# Nightly Build のインストールが分からない場合は、あえてインストールしないでください(元に戻せなくなる場合もありますから)
# 近い将来、この問題が修正されることは十分あり得ます。再現しなくなるビルドが提供された時点で問題は終わりですので、その時は終了宣言します。

投稿日 2008/12/05 05:27

返信: 52

2008/12/19 06:00 Community User への返信

> 次にFirefoxでComment #3のDYLD_LIBRARY_PATH...を実行しましたらCrashしてしまいました。
あら。。私の方ではクラッシュしなかったのですが、なんだか申し訳ないことしてしまったようで、すみません。
environment.plist は存在しませんよね。(ちょっと安心(^^;
かなり期待したのですが、ちょっと違っていそうな。
どうも SQLite 関連の実行権に関係しているような気が...
後で environment.plist を作り、どうなるかも試してみます。
一つ不思議なことは、レポート主は Firefox 3.0.3 en-US で発生している辺りです。
少なくても私の環境では Nightly だけで起きますから。
> show_invisible_files
うわー、これも便利そうです。
試させていただきますm(_ _)m

2008/12/19 09:38 Community User への返信

> DYLD_LIBRARY_PATH...
OSX 10.4.11, Safari 3.2.1, Security Update 2008-008, Firefox 3.0.5です。Safari 3.2から変更されているのでFirefoxがCrashしたのではないかと思います。
# 当方のOSX環境は壊れても直ぐ直せる環境なので気になさる必要はありません。近頃、Crashには縁がなくて寂しいくらい...

2009/01/15 01:07 Community User への返信

今のところ何も進展無く、未だバックアップファイルは正常に書き出されないままです。
これといった解決策も出てこないので、力技で凌いでいます。
Minefield のプロファイルから

  • bookmarksback フォルダ
  • places.sqlite
  • places.sqlite-journal
  • cookies.sqlite
  • cookies.sqlite-journal
を取り除き、Firefox 3.0.5 でブックマークを整理した places.sqlite を Minefield のプロファイルにコピー。
少し前の nightly から、上記ファイルを削除しないと、コピーで持ち込んだ places.sqlite を正常に読み込んでくれなくなっています。

とりあえず、これだと正常に描き出せるようになります。
ただし、trunk の問題で、たまに places.sqlite が壊れることがあります。そうなると復旧できなくなるので、新規プロファイルに交換した方が問題を起こしません。
Shiretoko はもうちょっと安定している筈なんですが、やっぱり壊れてしまうこともあるので、「無理無理 places.sqlite」でも問題があるのかもしれません。

で、何も進展はないし bugzill.jp はいつの間にか報告が消えているので、本家 Bugzila の同じと思われる Bug にコメントを付け加えておきました。
https://bugzilla.mozilla.org/show_bug.cgi?id=462760

にしても PPC Mac ユーザからの Bug 報告がないのは、腑に落ちませんです??

2009/01/15 03:30 Community User への返信

正規版からBookmarksを取り込んでMinefieldとShiretoko専用のProfilesを作ってます。これらのbookmarks-date.jsonは機能します。
全て消去(App以外を)と必要なfileのみにしたProfilesをFirefox.cpgzでDesktopに取り出すscriptと、今まで使っていた全てのfileを消去して正規版のProfilesに取り替えるscriptも作リました。
Profilesの残すfilesは...
bookmarks.html* chrome/ cookies.sqlite key3.db localstore.rdf mimeTypes.rdf places.sqlite prefs.js signons3.txt webappsstore.sqlite*
# * は消すと生成されないので残してます
最近はMinefieldとShiretokoは落としてますが試してません。

2009/01/16 16:24 Community User への返信

全然解決しないのでほとほと嫌になりますね。
> # * は消すと生成されないので残してます
bookmarks.html は初回起動時に使用するだけなので、その後は必要ないので捨てても構いませんよ。
もし Firefox 2.x の bookmarks.html があれば、それをコピーして places.sqlite と bookmarksback フォルダを捨ててから起動すると読み込まれます。
webappsstore.sqlite はどこかで書いたように記憶してますが、ブラウジングをしていると生成されます。
もしパスワードを記憶させているのでしたら、signons3.txt と key3.db をセットにして持ち込めば引き継がれます。
mimeTypes.rdf は Nightly と製品版で異なる場合があるので持ち込まない方が良いかもしれません。
同様に xpti.dat や compatibility.ini と compreg.dat は異なるバージョンで使用すると問題が起きる可能性があります。

2009/01/16 16:47 Community User への返信

Terminal からできる Firefox のコントロールでこんなものがあります。
名前を付けたユーザプロファイルを作る(アプリケーションは起動しない)
プロファイルマネージャを起動せず、Terminal が新しいプロファイルを作ってくれるコマンドで、実行すると User's Home/Library/Application Support/Firefox/Profiles/ に新規プロファイルを作ってくれます。

cd /Applications/(Firefox).app/Contents/MacOS/; ./firefox -CreateProfile (Profile Name)

(Firefox) のところは Minefield とか、プロファイル用の Firefox 名を入れます。
(Profile Name) にはスペースを使わない英数が無難です。(時々トラブルが起きますから)
で、この時のプロファイル内は
  • bookmarks.html
  • chrome
  • localstore.rdf
  • mimeTypes.rdf
  • prefs.js
が生成されます。これがそのバージョンで必要なファイルで、これ以外は Firefox を起動すると生成される仕組みです。
なお、この時点では Cache は生成されませんから、プロファイルフォルダを削除して profiles.ini を開いてそのプロファイル名の行を削除すれば「なかったこと」にできます。

なお、最初に作ったプロファイルのコマンドに続いて点滅しているプロンプトの後にコマンドを続けると、いくつでもプロファイルを作ることができます。(プロファイル名は変更しなければいけませんが)

ちなみに、上のコマンドと[プロファイルを指定して起動するコマンド]をくっつけると、意図した名称のプロファイルを作って Firefox を起動できます。
お手すきの時にでも遊んでみてください :-D

2009/01/16 17:40 Community User への返信

signons3.txtはFirefox 3.0.5で、開発版はsignons.sqliteに変更されてます。
# 前回コメントした時、これに気づきScriptを修正しました。
webappsstore.sqlite: DOM storage
cookieの代わりに簡単なdataを保存可能なようです。でも、開発版専用の2つのProfilesには初めから現在まで生成されてません。正規版にはありますが...
bookmarks.htmlはversionによって違うので残したいのです。
スマートな方法でDockのFirefox (Minefield Shiretoko)をclickすると専用のProfilesで起動出来ないか考え下記に行き着きました。
# 起動するAppは1つだけで良い。Appの同時起動は必要ない。上記Appの1つをDockに登録しDockから起動する。
$HOME/Library/Application Support/Firefox/Profiles/
xxxxxxxx.default
yyyyyyyy.default
zzzzzzzz.default
#! /bin/bash
open -a TextEdit -e ‾/Library/Application¥ Support/Firefox/profiles.ini
# pico ‾/Library/Application¥ Support/Firefox/profiles.ini
exit 0
# TextEditかpicoなどでPathを修正します。
[General]
StartWithLastProfile=1
[Profile0]
Name=default
IsRelative=1
Path=Profiles/xxxxxxxx.defaul
# Path=Profiles/yyyyyyyy.defa
# Path=Profiles/zzzzzzzz.default
事前に書き込んでおき、script実行で#の位置を修正する。
$HOME/Library/Caches/Firefox/Profiles/
# ここにも上記3つのProfiles/が生成されます。
なお、これの欠点はBackupFirefox, ReplaceFirefoxProfiles(自作のscript)の実行で上記3つのProfilesが消去されるので入れ直さないといけない。

2009/01/16 19:41 Community User への返信

Firefox's Terminal Commandsを読みましたがProfilesをbackupしているので面白いCommandsはないように感じました。
xxxxxxxx.defaultの名前を弄らないでBackupのProfilesを使うのだと載せた方法が便利だと思います。-CreateProfileはCloneを作るには便利ですが名前が新しくxxxxxxx.nameになるので考えものかも知れません。
Dockに登録したAppから起動出来るのはやはり便利です。使わないAppはDockに登録しなければ間違えてClickしてトラブルにならないと思います。
-CreateProfileで出来上がったProfilesに下記を入れればCloneになります。
cookies.sqlite key3.db mimeTypes.rdf* places.sqlite signons.sqlite
# * cssでlinkやcolorの変更をしているので必要でした。正規版はsignons3.txtですので...
またprofiles.iniから不要なPathを消しても$HOME/Library/Application Support/と$HOME/Library/Caches/にあるxxxxxxxx.defaultを手作業で消す必要があります。Pathが消えているのでそのままでも構いませんがゴミはゴミですから...

2009/01/16 22:04 Community User への返信

> Path=Profiles/xxxxxxxx.defaul
> # Path=Profiles/yyyyyyyy.defa
コピー・ミスで最後が欠けてしまいました。:-)
Scriptの実行でお好みのBrowserを選び、そのprofiles.iniを取り替えてBrowserを起動するScriptを作りましたがスマートではないので作り直しを考えています。
# Dockに選んだBrowserの登録とprofiles.iniに書き込むこと。前者はSafariの右に入れるのは難しいけど右端なら出来るのですが... 書き込むのはアイデアがわかない

2009/01/17 06:16 Community User への返信

> signons3.txtはFirefox 3.0.5で、開発版はsignons.sqliteに変更されてます。
うっ...ご指摘通りです。現在の Firefox 3.2a1pre は
・key3.db
・signons.sqlite
の2セットで扱うが正解です。Fx 3 のプロファイルを見ていました(^^;
> webappsstore.sqlite: DOM storage
何処のサイトか分りませんが、訪問したサイトから発行されるようですのでブラウジングを続けているとでき上がりますよ。因に、ウチでも特定サイトしか訪問しないテスト用のプロファイルにはありません。
> open -a TextEdit -e
こういう方法もあるのですね。勉強になります。
話は変わって、プロファイル・クリエイト Script を、一度も Firefox を起動していないシステムで実行すると面白いことを発見しました。

cd /Applications/Minefield.app/Contents/MacOS/; ./firefox -CreateProfile Test-Prof

Script を実行すると
・User's home/Library/Application Support/ Firefox
・User's home/Library/Caches/ Firefox
の2つのみが生成されます。
続いてそのプロファイルを指定して起動する Script を実行すると
cd /Applications/Minefield.app/Contents/MacOS/; ./firefox-bin -p Test-Prof

・/Library/Application Support/Mozilla/ Extensions
・User's home/Library/Application Support/ Mozilla
・User's home/Library/Caches/ Firefox
この時点では User's home/LibraryPreference/ com.mozilla.firefox.plist は生成されません。
因に、通常起動で生成される /Library/ Mozilla は Script 起動だと生成されないようですね。
ちょっと面白い結果でした。

2009/01/17 08:17 Community User への返信

2つは対なのでxxxxxxxx.defaultの数も同じになります。
/Library/Application¥ Support/Mozilla/Extensions/{8x-4x-4x-4x-12x}
$HOME/Library/Application¥ Support/Mozilla/Extensions/{8x-4x-4x-4x-12x}
$HOME/Library/Application Support/Firefox/Profiles/xxxxxxxx.default
$HOME/Library/Caches/Firefox/Profiles/xxxxxxxx.default
> com.mozilla.firefox.plit
$HOME/Library/Preferences/org.mozilla.firefox.plist
正規版/開発版, File > Preferencesで設定を行わないと生成されません。
> 訪問したサイトから発行されるようですので...
もしそのSiteが分かったら教えて下さい。
# 別に急いではいませんので何時でも構いません。
----------------
1 準備 Firefox Minefiled Shiretokoの専用Profilesを作成する。
$HOEM/Library/Application Support/Firefox/Profiles/
xxxxxxxx.default ... Firefox
yyyyyyyy.default ... Minefield
zzzzzzzz.default ... Shiretoko
2 各々のprofiles.iniを取り出すか修正してFolderに入れdmgで保存する。
3 少し手直しすれば動くと思います。
profiles_ini
#! /bin/bash
echo "firefox minefield shiretoko?"
read aa
hdiutil mount -quiet /Volumes/Data/profiles_ini.dmg
case $aa in
firefox) cp -f /Volumes/profiles_ini/firefox/profiles.ini ‾/Library/Application¥ Support/Firefox
open /Applications/Firefox.app;;
minefield) cp -f /Volumes/profiles_ini/minefield/profiles.ini ‾/Library/Application¥ Support/Firefox
open /Applications/Minefield.app;;
shiretoko) cp -f /Volumes/profiles_ini/shiretoko/profiles.ini ‾/Library/Application¥ Support/Firefox
open /Applications/Shiretoko.app;;
*) echo "Please try again";;
esac
hdiutil eject -quiet /Volumes/profiles_ini
exit 0
# 実行権(755)をつける。firefox (minefield shiretoko)の打ち間違いはPlease tray again...

2009/01/17 21:46 Community User への返信

symbolic linkに変更しました。:-)
# 前のより早く処理出来ます。
profiles_ini
#! /bin/bash
echo "firefox minefield shiretoko?"
read aa
case $aa in
firefox) ln -fsh [path to]/firefox/profiles.ini ‾/Library/Application¥ Support/Firefox
open /Applications/Firefox.app;;
minefield) ln -fsh [path to]/minefield/profiles.ini ‾/Library/Application¥ Support/Firefox
open /Applications/Minefield.app;;
shiretoko) ln -fsh [path to]/shiretoko/profiles.ini ‾/Library/Application¥ Support/Firefox
open /Applications/Shiretoko.app;;
*) echo "Please try again";;
esac
exit 0
実行する前にprofiles.iniを消去して下さい。
各々のprofiles.iniを入れたfolderはお好きな場所に。
選んだAppをDockに登録すれば間違えない。

2009/01/20 07:17 Community User への返信

Dockに選らんだBuildを登録してAppを起動します。
Dock内のIcon移動や消去は手作業で行って下さい。
profiles_ini
#! /bin/bash
echo "Firefox Minefield Shiretoko?"
read aa
case $aa in
Firefox) ln -fsh path to.../Firefox/profiles.ini ‾/Library/Application¥ Support/Firefox
defaults write com.apple.dock persistent-apps -array-add '[dict][key]tile-data[/key][dict][key]file-data[/key][dict][key]_CFURLString[/key]
[string]/Applications/Firefox.app[/string][key]_CFURLStringType[/key]
[integer]0[/integer][/dict][/dict][/dict]'
killall Dock; open /Applications/Firefox.app; say "welcome to mozilla firefox!";;
Minefield) ln -fsh path to.../Minefield/profiles.ini ‾/Library/Application¥ Support/Firefox
defaults write com.apple.dock persistent-apps -array-add '[dict][key]tile-data[/key][dict][key]file-data[/key][dict][key]_CFURLString[/key]
[string]/Applications/Minefield.app[/string][key]_CFURLStringType[/key]
[integer]0[/integer][/dict][/dict][/dict]'
killall Dock; open /Applications/Minefield.app; say "welcome to minefield!";;
Shiretoko) ln -fsh path to.../Shiretoko/profiles.ini ‾/Library/Application¥ Support/Firefox
defaults write com.apple.dock persistent-apps -array-add '[dict][key]tile-data[/key][dict][key]file-data[/key][dict][key]_CFURLString[/key]
[string]/Applications/Shiretoko.app[/string][key]_CFURLStringType[/key]
[integer]0[/integer][/dict][/dict][/dict]'
killall Dock; open /Applications/Shiretoko.app; say "enjoy shiretoko!";;
*) echo "Please try again"; say "please try again";;
esac
exit 0
注意 [ ] は鍵括弧に変更して下さい。
TextEditにCopyしてFindとReplace withに入れでReplace Allで処理が楽です。
2 bytes spaceが混入すると失敗します。取り除ぞいて下さい。
3つのxxx.defaultをzipでBackupすると便利です。
profiles_check
#! /bin/bash
open -a TextEdit -e ‾/Library/Application¥ Support/Firefox/profiles.ini
exit 0
$HOME/Library/Scripts/profile_check
# ここからアクセス出来ます。

2009/01/20 07:18 Community User への返信

必要最小限のProfilesのbackupとAppとProfiles以外のFilesを消去するか、
App以外の全てのFileを消去するを選べます。DesktopにFirefox.cpgzが...
なおFirefox/Profiles/xxx.defaultは1つの場合で複数には対応してません。
# 正規/開発版で使えます。
BackupDeleteFirefoxFiles
#! /bin/bash
echo "Backup your Profiles? or Delete all the files?"
read aa
case $aa in
backup) rm -fr /Library/Application¥ Support/Mozilla/Extensions¥
/Library/Mozilla¥
‾/Library/Application¥ Support/Firefox/Crash¥ Reports
cd ‾/Library/Application¥ Support/Firefox/Profiles/*.default
rm -fr blocklist.xml bookmarkbackups cert8.db compatibility.ini compreg.dat content-prefs.sqlite cookies.sqlite-journal downloads.sqlite extensions extensions.cache extensions.ini extensions.rdf formhistory.sqlite minidumps permissions.sqlite places.sqlite-journal pluginreg.dat search.sqlite secmod.db search.json sessionstore.js urlclassifierkey3.txt xpti.dat
ditto -c -z ‾/Library/Application¥ Support/Firefox ‾/Desktop/Firefox.cpgz
rm -fr ‾/Library/Application¥ Support/Mozilla¥
‾/Library/Caches/crashreporter¥
‾/Library/Caches/Firefox¥
‾/Library/Preferences/org.mozilla.crashreporter.plist¥
‾/Library/Preferences/org.mozilla.firefox.plist; sleep 1
echo "Succeeded.";;
delete) rm -fr /Library/Application¥ Support/Mozilla/Extensions¥
/Library/Mozilla¥
‾/Library/Application¥ Support/Firefox¥
‾/Library/Application¥ Support/Mozilla¥
‾/Library/Caches/crashreporter¥
‾/Library/Caches/Firefox¥
‾/Library/Preferences/org.mozilla.crashreporter.plist¥
‾/Library/Preferences/org.mozilla.firefox.plist; sleep 1
echo "Delete all the files.";;
*) echo "Please try again.";;
esac
exit 0

2009/01/20 07:19 Community User への返信

tiger.sparseimageのFirefox.zipと取り替えます。
$HOME/Library/Application¥ Support/Firrefox/...zip
Crash Reports/は消去して問題ありません。
ReplaceProfiles
#! /bin/bash
echo "Replace clean Profiles/? y/n"
read aa
case $aa in
y) rm -fr /Library/Application¥ Support/Mozilla/Extensions¥
/Library/Mozilla¥
‾/Library/Application¥ Support/Firefox*
hdiutil mount -quiet path to.../tiger.sparseimage
cd ‾/Library/Application¥ Support
cp -f /Volumes/tiger/Prefs/Firefox.* .
open Firefox.*; sleep 2
rm -f Firefox.*
hdiutil eject -quiet /Volumes/tiger
rm -fr ‾/Library/Application¥ Support/Mozilla¥
‾/Library/Caches/crashreporter¥
‾/Library/Caches/Firefox¥
‾/Library/Preferences/org.mozilla.crashreporter.plist¥
‾/Library/Preferences/org.mozilla.firefox.plist; sleep 1
echo "Succeeded.";;
n) echo "See you again";;
*) echo "Please try again";;
esac
exit 0
私はFirefox.zipは全てのFiles、Firefox.cpgzは最小限のfilesと区別してます。
# TerminalからだとFirefox.zipも作れますが...

このスレッドはシステム、またはAppleコミュニティチームによってロックされました。 問題解決の参考になる情報であれば、どの投稿にでも投票いただけます。またコミュニティで他の回答を検索することもできます。

PPC Mac 環境での Firefox 開発版のブックマークバックアップについての問題

Apple サポートコミュニティへようこそ
Apple ユーザ同士でお使いの製品について助け合うフォーラムです。Apple Account を使ってご参加ください。