RAR

提供: ArchWiki
ナビゲーションに移動 検索に移動

RAR (と UNRAR) は WinRAR のコマンドライン版の Linux 移植です。i686 と x86-64 の両方で使えます。

主な特徴

  • 冗長データ (「リカバリレコード」または「リカバリボリューム」) をアーカイブに追加することで、破損しにくくすることができます。例えばアーカイブの一部が壊れても、リカバリレコードが十分にあれば保存されているデータを全てリカバリすることが可能です。その点、Tar にこのような機能はありません。
  • RAR は分割ボリュームを効率的に処理することができます。マルチボリュームファイルのサポートが組み込まれているため、解凍プログラムはユーザーに次の .partXXX RAR ファイルを要求するだけでよく、手動で断片化されたファイルをコピーして結合したり、ひとつのファイルを抽出するのに全てのファイルを集める必要がありません。RAR はテープをサポートしていません。シークを使ってファイルの名前を変更するためです。
  • RAR アーカイブにはソリッドフォーマットがあり、圧縮されたファイルをすべてひとつのデータブロックとして扱うことができます。最近の圧縮フォーマットは大抵ソリッド構造を取れるようになっています (旧式の ZIP は除く)。
  • 強固な暗号化機能。古いバージョンのファイルフォーマットではプロプライエタリなアルゴリズムが使われていました。新しいバージョンではアメリカ政府によって認証されているブロック暗号である AES 暗号アルゴリズムが使われます。暗号化したファイルを復元する方法は辞書・総当り攻撃しかありません。最新のバージョンでは、任意でファイルの名前もパスワードで保護することができ、アーカイブに含まれているファイルを隠蔽できるようになっています。

インストール

RAR と UnRAR の両方必要な場合 rarAUR パッケージを インストール して下さい。UnRAR だけ必要な場合は、unrar をインストールします。

設定ファイル

Linux 版の RAR は (ユーザーのホームディレクトリに存在する) ~/.rarrc ファイルから設定情報を読み込みます。もしくは /etc ディレクトリに同じファイルを配置することで全てのユーザーで共通のオプションを定義することもできます。

ファイルの構文は以下のようになっています:

 switches=any_RAR_switches_separated_by_spaces

例:

 switches=-m5 -rr5p -ol -s -md64 -msmp3;mp4;avi;mkv;zip;7z;rar;tar;gz;bzip2;zst;jpg;jpeg;gif

rar のスイッチの完全なリストと説明については、rar(1) を参照してください。

RAR の使用方法

一般的な構文

$ rar command -switch 1 -switch N archive files.rar @listfiles...

コマンドとスイッチの完全なリストは rar だけで実行することで確認できます。

ディレクトリ全体を再帰的に圧縮

例えばリカバリレコードを 10% に設定して /home/darkhorse/media/data/darkhorse-backup.rar にバックアップするには:

$ rar a -r -rr10 /media/data/darkhorse-backup.rar /home/darkhorse
スイッチ 意味
a ファイルをアーカイブに追加。
-r サブディレクトリを再帰的に追加 (親ディレクトリ下の全てのディレクトリとファイルを追加)。
-rr10 リカバリレコードをアーカイブに追加。圧縮アーカイブの最大で 10% が破損しても、パリティによってデータを復元できるようになります。

ミックスモードアーカイブ

特定の種類のファイルは圧縮されないミックスモードアーカイブを作成することもできます。

/home/darkhorse/media/data/darkhorse-backup.rar にバックアップする場合:

$ rar a -r -rr10 -s -m5 -msjpg;mp3;tar /media/data/darkhorse-backup.rar /home/darkhorse
スイッチ 意味
a ファイルをアーカイブに追加。
-r サブディレクトリを再帰的に追加 (親ディレクトリ下の全てのディレクトリとファイルを追加)。
-rr10 リカバリレコードをアーカイブに追加。圧縮アーカイブの最大で 10% が破損しても、パリティによってデータを復元できるようになります。
-m5 最大レベルの圧縮を使用 (m0 = 非圧縮 ... m3 = デフォルト ... m5 = 最大圧縮率)。
-msjpg;mp3;tar .jpg, .mp3, .tar ファイルは圧縮オプションを適用せずにそのまま保存。

リストを使って多数のディレクトリを再帰的に圧縮

  • タスク: /home/darkhorse/home/palomino/home/seabiscuit/media/data/homes-backup.rar にバックアップ

まず、様々なターゲットを含むリスト (単純なテキストファイル) を作成します。この例では、リストは3行の長さになります。'home-list' と名付けましたが、好きなように名付けてください。

/home/darkhorse
/home/palomino
/home/seabiscuit
$ rar a -r -rr10p -s /media/data/homes-backup.rar @/path/to/home-list

UNRAR の使用方法

一般的な構文

$ unrar command -switch 1 -switch N archive files... @listfiles... path_to_extract\

コマンドとスイッチの一覧を表示するには:

$ unrar h

新しいフォルダに抽出するには:

$ unrar x /media/data/homes-backup.rar homes-backup/

マルチパート rar ファイルの場合、以下のように実行:

$ unrar x homes-backup.part1.rar homes-backup/