Linux / Windows どちらの環境でも解凍できる「巨大ファイルの分割圧縮」をいろいろ試してみたが、7-Zipがとりあえず条件をクリアしたので、メモ程度に記事に…
Windows側での圧縮、解凍
7-Zip公式サイトで配布されているが必要十分な機能を持っている。インストールすると、ファイル・エクスプローラのコンテキストメニュー(右クリックメニュー)に、圧縮・解凍のためのメニューが追加される。
高速に圧縮・解凍を行うには、圧縮レベルを 0 にする(無圧縮)にする必要がある。この他に、圧縮後のファイル分割サイズを指定する。上の例では650MBytesに設定している。この他の設定値はデフォルトのままでOK。
Ubuntu(Linux)のPeaZipで圧縮した7-Zip形式分割ファイルも問題なく解凍できる。
Linux側での圧縮、解凍
PeaZipの公式ページよりdebパッケージをダウンロードしてインストールする。圧縮・解凍とのみPeaZipを起動して、プログラムで対象ファイルの存在するディレクトリを表示し、ファイルを右クリックして出るコンテキストメニューから操作する。UbuntuのファイラNautilusのコンテキストメニューから実行すると、次のセクションで説明するFile-Rollerが起動してしまう。
PeaZipでの圧縮は、「変換」というコンテキストメニュー項目を選択
圧縮率は「復元」を選択する。 このソフトの日本語翻訳、間違ってますね…
Linuxのファイラから起動するFile-Rollerを使う
Ubuntuの標準ファイラのコンテキストメニューで表示されるデフォルトの圧縮・解凍ソフトはfile-rollerだ。解凍はどのような圧縮レベルの分割7-Zipファイルにも対応しているが、圧縮の場合には圧縮率を選択できない。巨大ファイルの分割をする場合、圧縮を掛けると極端に時間がかかるので不適な場合がある。
ファイルの分割数は設定できるが、圧縮率は設定できない。
7-Zipコマンドライン版
Command Line Version User's Guide
$ 7z a -t7z -mx=0 -v650m /path/to/OUTPUT.7z /path/from/SOURCE
-mx=0
: x=0で無圧縮、x=1, 3, 5, 7, 9 で圧縮率が上がっていく。標準圧縮はx=5
-v650m
: 128kで128kBytes, 650mで650MBytes, 1.2gで1.2GBytes など
-t7z
: 出力形式7zとする。なお、出力拡張子があれば自動的に設定される