irodo****@irodo*****
irodo****@irodo*****
2006年 11月 1日 (水) 16:37:21 JST
本庄です。 At Tue, 31 Oct 2006 18:27:36 -0800, Seiji Zenitani wrote: > Firefox では問題なくダウンロードできるのですが、 > Safari でダウンロードすると、ファイル名が勝手に *.dmg → *.dmg.bz2 に > 変更されてしまって、展開された dmg ファイルが壊れてしまうことがあります。 > どうもダウンロード先の mirror に依存するようですが、 > 原因がよくわかっていません。 lwp-perl の HEAD コマンドで各ミラーサイトが返す Content-Type を見てみ たところ、application/octet-stream と application/x-apple-diskimage の 2タイプが存在するようです。 それぞれ試してみたのですが、こちらでは .dmg -> .dmg.bz2 の再現はできま せんでした。 ちなみにダウンロードしたファイルを file コマンドで見ると bzip2 compressed data と表示されます。試しに bunzip2 に .dmg を指定すると解 凍を試みますが、bunzip2 が認識できるアーカイブの終端以降を削除(無視) するようなメッセージが表示されるので、ここでファイルが壊れてしまうよう です。 ここからは推測ですが… 送信側のサーバが DMG を認識できず、magic から bzip2 と判断して Content-Type を返した場合、Safari が .bz2 を追加する可能性が考えられま す(CGI が表示した画像を保存すると sample.cgi.png のようになるのと同じ 原理)。 ダウンロードしたファイル自体は壊れていないはずなので、ファイル名が *.dmg.bz2 となってしまった場合でも .dmg に名称を変更することでそのまま DMG として使用できるものと思われます。 ただし、Safari の「安全なファイルを開く」が ON になっていると、ダウン ロード後自動的に解凍を試みて、結果ファイルが破壊されてしまう可能性があ ります。 # と書いたところで思いついたのですが、「安全なファイルを開く」が ON に # なっていると Safari が magic をチェックするという可能性もありますね。 -- Eiji Honjoh as Saiki irodori RINGO - little tools for Mac OS X http://irodori.sakura.ne.jp/