- 締切済み
Linux (SUSE)で、Win圧縮フォルダで作ったZIPを解凍するには
Windowsエクスプローラーで作れるZIPファイルを、Linux (SLES 10)で確実に解凍する方法はありますでしょうか? 小さいものはうまくできても、大きいものはエラー終了するという、不思議な現象に遭遇しています。 遠隔地に数十GBもあるテキストファイルを送る必要があり、Windows 2003 Serverで、 エクスプローラーの右クリックで出てくる「送る」→「圧縮(ZIP形式)フォルダ」でZIPファイル化し、SCPでネットワーク転送しました。 転送先でファイルを開こうとすると、小さい(数MB~数百MB)ファイルはなんら問題なく解凍できたのですが、 大きいファイル(GBレベル)は、ものによっては need PK compat. v4.5 (can do v2.1) や、 start of central directory not found; zipfile corrupt. というメッセージとともに異常終了してしまいます。
- みんなの回答 (3)
- 専門家の回答
みんなの回答
- Murasan759
- ベストアンサー率59% (312/527)
展開に使用されているコマンドが64bitに対応している必要があります。 どのコマンドを使用しているのか、またそのバージョン、及び、makeオプションによります。 転送先でWindows環境をLANにおいて、Windowsで展開するのが簡単な気もしますが、とりあえず64bit対応を確認してみてはいかがでしょう。
- mua-chan
- ベストアンサー率0% (0/0)
とりあえず、アドバイスです。 私も、AIXを使用しているときにzipファイルの解凍に苦労しました。 その時思いついたのは、PerlとArchive::Zipモジュールを用いることです。 Linuxでも同様の事ができるのではないでしょうか。 上記をキーワードにググれば参考のスクリプトはありますよ。
お礼
シェル環境で、ddでパイプへダンプしながら、funzipで解答できました。 unzipに制限ありと教えていただきありがとうございます。
補足
やっぱり*NIXのunzipでは無理ですか... Perlはテキストファイルのフィルタとしてしか使った事がないので シェルスクリプトで何とかしました。
- kent85
- ベストアンサー率52% (38/73)
ただのアドバイスです。 巨大なファイルをインターネット越しに送ると化ける可能性が 大きくなるので (→正常に転送できていない確率が高くなる) 7-zipで容量指定で分割圧縮したので、転送します。 あるいは転送と同時にバックアップ。 場合によっては、無圧縮分割だったり、rarを使ったりもします。 念のため md5 check sum も使ったりします。 分割したものであれば、ダメになったものでも そのファイルだけ再送すればいいので多少気楽です。
補足
md5のチェックサムをとりましたが、一致してました。 細かく言えば、それでもファイルが壊れていないと断言はできないかもしれませんが。w
補足
機器構成までいじるわけには行かないのです... でも、確かにそれが一番確実ですね。