TS Studio Top > Unix > Rock Ridge ExtensionのCD-R作成方法

Rock Ridge ExtensionのCD-R作成方法

(旧:Windows上でRock Ridge ExtensionのCD-Rを焼こう!)

作成日 2001年 1月 11日 (木)

Rock Ridge Extensionとは

Rock Ridge ExtensionはISO9660形式を拡張し,(1)8文字+3文字を超える長いファイル名,(2)シンボリックリンク,(3)所有者情報(UNIXのパーミッション)などを扱えるようにしたものです。Linuxを含め、多くのUNIX系OSで対応しているCD-Rフォーマットです。

Linux側だけでCD-Rを書き込むことも可能(mkisofs+cdrecord)ですが,ここではLinux側でISO9660形式のイメージを作成し,Windows側でCD-RにISO9660形式のイメージを書き込む方法を紹介します。

大まかな手順はLinux側でmkisofsというユーティリティを使ってRock Ridge Extensionのイメージを作り,それをWindows側に送ってWindows上のライティングソフトで書き込みます。また,書き込む前にイメージが正しく作成されているかどうかをLinux側でイメージファイルをマウントすることによって確認します。

Rock Ridge Extensionイメージの作成

書き込み用に用意したディレクトリからISO9660形式のイメージを作成しますが,データと同じ程度のディスク領域をあらかじめ用意しておきます。mkisofsは基本的に次のように使います。オプションの順序は入れ替わってもかまいません。

$ mkisofs [-R] [-T] [-v] -o image-file source-directory

source-directory内のディレクトリまたはファイルをもとにISO9660形式のイメージimage-fileが作られます。従ってimage-fileには一番上のディレクトリであるsource-directoryそのものは含まれません。

オプションの意味は次の表のようになります。

必須のオプション
-o image-file イメージを書き出すファイルを指定します。拡張子は".img"にします。
source-directory ここで指定したディレクトリの中身をISO9660形式のイメージに変換します。
指定すべきもの
-R Rock Ridge Extensionを用いてSUSPレコードとRRレコードをISO9660ファイルシステムに書き込みます。このオプションではファイルの所有者情報がそのまま記録されるので,次の-rオプションを使う方がよいでしょう。
-r -Rオプションと同じ機能の他に,次のことをファイルに設定します。
  • ファイルのuidとgidを0にセットする
  • 全てのファイルに読み出し許可ビットをたてる
  • 実行属性がついているファイルは,user,group,others全てに実行属性をつける
  • 全てのファイルの書き込み許可ビットを消去する

すなわち誰でもファイルやディレクトリを読めるCD-Rにします。

-T Rock Ridge Extensionに対応していないシステムで利用できるTRANS.TBLというファイルを各ディレクトリに作成します。TRANS.TBLには各ファイルの本当の名称が記録されています。
-J WindowsのJoliet拡張形式に対応したイメージを作成します。
-hfs MacintoshのHFS形式に対応したイメージを作成します。
必要に応じて指定するもの
-A application-id アプリケーションIDをvolume headerに書き込みます。128byteまで書き込めます。
-V volume-id ボリュームID(CDの名前)をマスターブロックに書き込みます。
-v イメージの作成過程を逐一報告させます。
-b boot-image 起動可能なCD-Rを作成するときに指定します。起動可能なフロッピーディスクのイメージは,source-directoryのトップからの相対パスで指定します。

作成したイメージの確認

次のようにするとLinux側で作成したイメージを実際のCDファイルシステムと同じようにマウントすることができます。

$ mount -t iso9660 -o loop image-file /cdrom

ただしイメージファイルのマウントはネットワーク経由で行うことができないので,ローカルなファイルシステム上で行わなければなりません。(Loopback Device "/dev/loop[0-7]" を利用しているためです。)

確認が終わったらアンマウントをします。

$ umount /cdrom

ISO9660イメージのCD-Rへの書き込み

作成したISO9660形式のイメージファイルをWindows上で読むことのできるディレクトリに移動させ,ライティングソフトでCD-Rに書き込みます。


Copyright(C) 1997-2008 Suzumura Tomohiro All rights reserved.