はじめに
長年運用しているシステムやバイナリのアップロード機能があるシステムを圧縮バックアップしていると圧縮ファイルのサイズが大きくなっていきます。
システム移行時やトラブル発生時、バックアップした圧縮ファイルをWindowsに一旦持ってきて解凍し、作業することが有るかも知れません。そんな時Windowsでいつも使っている解凍ソフトでは64bit対応されておらず、4Gbyte(32bitが数えられる4,294,967,296バイト)を超える圧縮ファイルを解凍出来ないケースがあります。
いざという時に焦らないようWindowsで使える優秀な圧縮解凍ソフトを選別してインストールしておきます。
対象読者
- Linuxで運用しているシステムがあり、Windowsも使っている開発者。
- Windowsで定番の解凍ソフトが決まっていない方。
- なんとなくLhaplusとか使っている方。
7-zipを使う
採用理由
以下の理由から7-Zipを使います。
- 4Gbyte以上の圧縮ファイルを解凍出来る
- 圧縮率が高い
- コマンドラインから使えて自動化出来る
- 対応形式が多く、linuxでよく使用される形式にも対応出来る(ZIP、LZH、RAR、TAR、GZIP、BZIP2他多数)。
インストール
インストーラでインストール
以下サイトから64bit版をダウンロード、インストールします。
chocolateyでインストール
リポジトリから7-Zipを探します。
C:\WINDOWS\system32>choco list 7-Zip
Chocolatey v0.10.3
7zip 19.0 [Approved] ← 見つかった
7zip.install 19.0 [Approved]
7zip.portable 19.0 [Approved]
(snip)
16 packages found.
インストールします。
C:\WINDOWS\system32>choco install 7zip
Chocolatey v0.10.3
Installing the following packages:
7zip
By installing you accept licenses for the packages.
chocolatey-core.extension v1.3.3 [Approved]
chocolatey-core.extension package files install completed. Performing other installation steps.
Installed/updated chocolatey-core extensions.
The install of chocolatey-core.extension was successful.
Software installed to 'C:\ProgramData\chocolatey\extensions\chocolatey-core'
7zip.install v19.0 [Approved]
7zip.install package files install completed. Performing other installation steps.
The package 7zip.install wants to run 'chocolateyInstall.ps1'.
Note: If you don't run this script, the installation will fail.
Note: To confirm automatically next time, use '-y' or consider setting
'allowGlobalConfirmation'. Run 'choco feature -h' for more details.
Do you want to run the script?([Y]es/[N]o/[P]rint): Y
Installing 64 bit version
Installing 7zip.install...
7zip.install has been installed.
7zip installed to 'C:\Program Files\7-Zip'
Added C:\ProgramData\chocolatey\bin\7z.exe shim pointed to 'c:\program files\7-zip\7z.exe'.
The install of 7zip.install was successful.
Software installed as 'exe', install location is likely default.
7zip v19.0 [Approved]
7zip package files install completed. Performing other installation steps.
The install of 7zip was successful.
Software install location not explicitly set, could be in package or
default install location if installer.
Chocolatey installed 3/3 packages. 0 packages failed.
See the log for details (C:\ProgramData\chocolatey\logs\chocolatey.log).
C:\WINDOWS\system32>which 7z
/cygdrive/c/ProgramData/chocolatey/bin/7z
chocolateyでインストールするとパスも通してくれるので楽ですね。
解凍してみる
「7z a backup.zip .」で圧縮、「7z x backup.zip」で解凍します。
C:\Users\naka\backup>7z x backup.zip
7-Zip 18.05 (x64) : Copyright (c) 1999-2018 Igor Pavlov : 2018-04-30
Scanning the drive for archives:
1 file, 19326446092 bytes (18 GiB)
Extracting archive: backup.zip
--
Path = backup.zip
Type = Zip
Physical Size = 19326446092
Solid = -
Blocks = 59103
Multivolume = -
Volumes = 1
Everything is Ok
Folders: 1
Files: 59102
Size: 19824645360
Compressed: 19326446092
18Gbyteあっても解凍されます。
まとめ
コマンドラインから7zを使えるようにしておくとWindowsでは他の圧縮解凍ソフトは不要になります。(少なくとも私は困ったことがありません)
7zFM.exeでGUI起動も出来ますし、仕方なくメールで大容量ファイルを分割して送らなければならないなんていう困ったケースにも昔からお世話になっています。