名前

mkisofs - はオプションの Rock Ridge 属性で ISO9660 ファイルシステムを作成する。

書式

mkisofs [ -a ] [ -abstract FILE ] [ -biblio FILE ] [ -b eltorito_boot_image ] [ -B sparc_boot_image_list ] [ -G generic_boot_image ] [ -gui ] [ -C #,# ] [ -hard-disk-boot ] [ -no-emul-boot ] [ -no-boot ] [ -boot-load-seg ] [ -boot-load-size ] [ -boot-info-table ] [ -c boot_catalog ] [ -copyright FILE ] [ -A application_id ] [ -f ] [ -d ] [ -D ] [ -hide glob ] [ -hide-list file ] [ -hide-joliet glob ] [ -hide-joliet-list file ] [ -hide-joliet-trans-tbl ] [ -hide-rr-moved ] [ -J ] [ -l ] [ -L ] [ -log-file log_file ] [ -M path | device ] [ -nobak ] [ -no-bak ] [ -no-split-symlink-components ] [ -no-split-symlink-fields ] [ -path-list file ] [ -p preparer ] [ -print-size ] [ -P publisher ] [ -quiet ] [ -r ] [ -R ] [ -sysid ID ] [ -T ] [ -U ] [ -v ] [ -V volid ] [ -volset ID ] [ -volset-size # ] [ -volset-seqno # ] [ -x path ] [ -exclude-list file ] [ -z ] [ -m glob ] -o filename pathspec [pathspec]

説明

mkisofs は効果的に ISO9660 ファイルシステムを生成するプリマスタリングプログラ ムである。与えられたディレクトリツリーのスナップショットを撮り、ブロッ クデバイスに書き込むときに ISO9660 ファイルシステムに一致するバイナリ イメージを生成する。
mkisofs はまた、Rock Ridge Interchange Protocol で指定された System Use Sharing Protocol レコードを生成することができる。これは UNIX ホストへ の ISO9660 ファイルシステムの詳細な説明に使用され、また長いファイル名 や UID/GID、POSIX パーミッション、そしてブロックやキャラクタデバイスの 情報を提供する。
Rock Ridge が使用されていても、それぞれの ISO9660 ファイルシステムに書 き込まれるファイルは、8.3 フォーマット (8 文字、ピリオド、3 文字ですべ て大文字) でファイル名を保持していなければならない。このファイル名は Rock Ridge 拡張を使用するようにできないシステム (MS-DOS のように) で使 用され、それぞれのファイル名は、それぞれのディレクトリで、同じディレク トリの中では他のファイル名と異なるものでなければならない。 mkisofs は一般的に UNIX ファイル名を要求されているように大文字にしたり、省略す ることにより正しい名前を作ろうとするが、省略された名前が全て唯一のもの でない場合があるので、しばしば満足できない結果を出してしまうことがある。 mkisofs はそれぞれのファイル名に重み付けをし、もし二つの異なるファイル名が同じ になってしまう場合、プライオリティの低い方は拡張子が 3 桁の数字( 数字は唯一のものと保証される)に変更される。 この例として、ファイル名 foo.bar と foo.bar.~1~ は、foo.bar.~1~ は FOO.000;1 として書き込まれ、そして foo.bar は FOO.BAR;1 として書き込ま れる。
mkisofs は書き込み機と直接やりとりするために作成されていないことに注意すること。 ほとんどの書き込み機は製造元ごとに異なる独自のコマンドセットを持ってい て、そして実際にディスクを焼くためには専門的なツールが必要である。 cdwrite ユーティリティは Linux で動作し、この仕事を行うツールのひとつである。 cdwrite の最新のバージョンは Phillips/IMS/Kodak, HP と Yamaha ドライブとやりと りすることができる。ほとんどの書き込み機は ISO9660 イメージの直接的な イメージコピーを書き込み機に対して行うことができる DOS ソフトウェアの 何らかのバージョンがついている。 cdwrite の現在のバージョンは sunsite.unc.edu: /utils/disk-management/cdwrite-2.0.tar.gz からもってくることができる。 cdwrite は最近積極的に保守されていないことに注意すること。
cdrecord ユーティリティは実際のディスクに書き込みを行うもうひとつのユーティリティ である。最新のバージョンの cdrecordftp://ftp.fokus.gmd.de/pub/unix/cdrecord から持ってくることができる。
また、ほとんどの CD 書き込み機はタイミングに対して非常にうるさい。一度 ディスクを焼きはじめたら、終了する前に書き込み機のバッファを空にさせる ことはできず、空にしてしまうと壊れたディスクができて終わる。従って ディスクが書き込まれているすべての時間に途切れないデータストリームを持 続できることが重要である。
pathspec は ISO9660 ファイルシステムにコピーするディレクトリツリーのパスである。 複数のパスが指定可能で、 mkisofs は CD-ROM イメージを作成するすべての指定されたパスの組み合わせから見つ けたファイルを組み合わせる。
ルートディレクトリ以外の場所にパスを結合することは可能で、元のファイル システムの中にあるファイルやディレクトリと異なった名前で CD-ROM イメー ジに結合することができる。これはいくつかの例で図示するのがもっとも簡単 だ。ローカルファイル ../old.lis が存在するものと仮定して、それを CD-ROM イメージに含めたいとする。
 
 
foo/bar/=../old.lis
 
は、CD-ROM イメージにファイル old.lis を /foo/bar/old.lis に含み、同時に
 
foo/bar/xxx=../old.lis
 
は CD-ROM イメージにファイル old.lis を /foo/bar/xxx に含む。同じ 種類の文法はディレクトリにも同じように使用することができる。 mkisofs は CD-ROM イメージ上に結合場所が存在するような必要なすべてのディレクト リを作成する。ディレクトリはパスのうちの一つに出現する必要はない。作業 中にこのように作成されるすべてのディレクトリは、パーミッション 0555 を 持ち、mkisofs を実行している人の所有となる。もしあなたが他のパーミッショ ンや中間のディレクトリの所有者を希望した場合、もっとも簡単な解決法は mkisofs がそれらを作成する必要がないような実体のディレクトリを作成する ことである。

オプション

-a
ISO9660 ファイルシステム上のすべてのファイルを含む。通常 "~" や "#" を 含むファイルは通常含まれない (これらは多くの場合 UNIX 下のエディタのバッ クアップファイルである)。このオプションは、現在は廃止(obsolete)されて いる(-no-bak オプションを見よ)。
-abstract FILE
要約ファイル名を指定する。このパラメータはファイル .mkisofsrc で ABST=filename として設定される。 もし両方の場所で指定された場合、コマンドラインで指定したものが使用される。
-A application_id
ボリュームヘッダに書き込まれる文字列を指定する。これはディスクにあるア プリケーションを説明するであろう。 ディスク上には 128 文字の情報の分の容量がある。 このパラメータはファイル .mkisofsrc で APPI=id として設定される。 もし両方の場所で指定された場合、コマンドラインのものが使用される。
-biblio FILE
書誌情報ファイルを指定する。このパラメータはファイル .mkisofsrc で BIBLO=filename として設定される。もし両方の場所で指定された場合、コマン ドラインのものが使用される。
-b eltorito_boot_image
"El Torito" ブータブル CD を作成するときに使用されるブートイメージのパ スとファイル名を指定する。パス名は mkisofs に対して指定している元の相対パスでなければならない。 このオプションは "El Torito" ブータブル CD を作成するのに必須である。 ブートイメージは 1.2MB, 1.44MB または 2.88MB フロッピーの正確なサイズ でなければならず、また mkisofs は、ISO9660 ファイルシステムを出力する際にこのサイズを使用する。最初の 512 バイトセクタはブートイメージから読まれるものとされている (通常の フロッピードライブをエミュレートするのに必須である)。これは、たとえば、 もしブートイメージが LILO ベースのブートフロッピーであった場合に働く。
-B img_sun4,img_sun4c,img_sun4m,img_sun4d,img_sun4e
Sparc システムでのブータブル CD の作成に必要なブートイメージをコンマで 区切られたリストで指定する。
コンマで区切られたリストには空のフィールドがあってもよい。 もし -B または -sparc-boot オプションが指定されると、作成されるイメージの最初のセクタは Sun ディ スクラベルを含む。このディスクラベルは、スライス 0 は iso9660 イメージ を、スライス 1 ... スライス 7 はこのオプションで指定されたブートイ メージを、それぞれ指定する。 各、ブートイメージにあるバイトオフセット 512 ... 8191 は適切な sparc アーキテクチャで動くプライマリブートを含まなければならない。 通常は、最初にカーネルの boot 段階で使われる ufs ファイルシステムが残 る部分に含まれる。 実装されているブート方法は、SunOS 4.x 及び SunOS 5.x に見られるブート 方法である。 しかしこれは、SunOS の内部に依存しているのではなく、 Open Boot prom の性質にのみ依存している。 この理由により、sparc システムを動かせる他の OS でも使えるだろう。
-G generic_boot_image
汎用ブータブル CD を作成する時に使われる汎用ブートイメージのパスと ファイル名を指定する。 汎用ブートイメージ は CD の先頭 16 セクタに置かれる。 先頭の 16 セクタは、iso9660 の最初のボリューム記述子の前に配置される。 もしこのオプションが -sparc-boot オプションと一緒に使われると、Sun ディスクラベルは汎用ブートイメージの先頭 512 バイトを上書きする。
-hard-disk-boot
"El Torito" ブータブル CD の作成に使われるブートイメージが、ハードディ スクイメージであると指定する。ハードディスクイメージは一つのパーティショ ンだけを含むマスターブートレコードで始まらなければならない。
-no-emul-boot
"El Torito" ブータブル CD の作成に使われるブートイメージが
'非エミュレーション' イメージであると指定する。システムはこのイメージ を、なんらディスクエミュレーションをせずにロードし、実行する。
-no-boot
"El Torito" CD がブート不可であるとマークされるように指示する。 システムはこのイメージのエミュレートされたドライブを提供するが、標準 のブートデバイスから起動する。
-boot-load-seg segment_address

'非エミュレーション' "El Torito" CD ブートイメージのロードセグメント アドレスを指定する。
-boot-load-size load_sectors
非エミュレーションモードでロードされる "仮想"(512バイト)セクタの数を指定する。 デフォルトはブートファイルの全部である。 これが 4 の倍数でない場合に問題がある BIOS があるかも知れない。
-boot-info-table
CD-ROM の配置に関する情報の 56 バイトのテーブルが、ブートファイルのオ フセット 8 に置かれることを指示する。 このオプションが与えられると、ブートファイルは作成元となるファイルシス テム上で修正されるので、このファイルが簡単に再作成できないのならちゃんと コピーをとっておくこと。 このテーブルの記述に関しては BOOT INFORMATION TABLE の項を見よ。
-C last_sess_start,next_sess_start
このオプションは、マルチセッションのディスクで第 2 セッション以降のイメージを 作成するのに mkisofs が用いられた場合に必要となる。 この -C オプションは、コンマで区切られた二つの数を引数にとる。一つ目の数は、追 加されるディスクの最後のセッションの最初のセクタ番号である。二つ目の数は 新しいセッションの最初のセクタ番号である。 期待される二つの数は、 cdrecord -msinfo ... というコマンドの呼び出しで得られる。 -C オプションは -M オプションと組合せた場合にのみ使われる。
-c boot_catalog
"El Torito" ブータブル CD を作成する際に使用されるブートカタログのパス とファイル名を指定する。パス名は mkisofs に対して指定している元の相対パスでなければならない。このオプションはブー タブル CD を作成するのに必須である。このファイルは mkisofs によって元になるファイルシステムの中に作成されるので、黙って上書きされ ないように、指定されたファイル名が存在しているファイルとコンフリクトし ないように注意すること! 通常 "boot.catalog" という名前が選ばれる。
-copyright FILE
著作権ファイルを指定する。このパラメータはファイル .mkisofsrc で COPY=filename として設定される。もし両方の場所で指定された場合、コマン ドラインのものが使用される。
-d
ピリオドを持たないファイルに後続するピリオドをファイルから省く (訳注: たとえば ファイル名 "hogehoge." の最後の "." など)。これは ISO9660 標 準に違反しているが、ほとんどのシステムで働く。注意して使用すること。
-D
深いディレクトリの再配置を行わず、かわりにそのまま格納する。これは ISO9660 標準に違反しているが、ほとんどのシステムで働く。注意して使用す ること。
-f
ファイルシステムを生成する時にシンボリックリンクを追跡する。このオプショ ンが使用されていないとき、シンボリックリンクは、もし Rock Ridge が有効に なっていれば格納され、無効になっていれば無視される。
-gui
GUI のために動きを切替える。現在のところこれにより出力が詳細になるが、 将来的には他の効果をもつだろう。
-hide glob
ISO9660 または Rock Ridge ディレクトリにある glob を隠す。 glob はシェルのワイルドカード形式のパターンで、ファイル名かパスの一部にマッ チする。 (1000 個までの) glob の複数指定が可能である。もし glob がディレクトリにマッチした場合、ディレクトリの中身が隠される。 すべての隠されたファイルは CD イメージファイルには書き出される。 -hide-joliet オプションと共に用いられるべきである。
-hide-list file
上で述べた、隠される globs のリストを収めたファイル
-hide-joliet glob
Joliet ディレクトリにある glob を隠す。 glob はシェルのワイルドカード形式のパターンで、ファイル名かパスの一部にマッ チする。 (1000 個までの) glob の複数指定が可能である。もし glob がディレクトリにマッチした場合、ディレクトリの中身が隠される。 すべての隠されたファイルは CD イメージファイルには書き出される。 -hide オプションと共に用いられるべきである。
-hide-joliet-list file
上で述べた、隠される globs のリストを収めたファイル
-hide-joliet-trans-tbl
Joliet ツリーから TRANS.TBL ファイルを隠す。 普通 Joliet の世界では、これらのファイルは意味をなさない。 なぜならこのファイルがリストする本当の名前と ISO9660 の名前はともに、 Joliet の名前とは違うからである。
-hide-rr-moved
Rock Ridge ツリーではディレクトリ RR_MOVED.rr_moved という名前に変更する。 Rock Ridge ツリーから RR_MOVED ディレクトリを完全に隠すことは不可能のようにみえる。 このオプションは、このディレクトリが何なのかを知らない人々が、 目にするツリーを理解しやすくするようにするだけである。 もし RR_MOVED ディレクトリを全く必要としないのなら、 -D オプションを使うべきである。 -D オプションが指定された場合には、作成されるファイルシステムは ISO9660 レベル-1 互換でなく、MS-DOS からは読めないことに注意せよ。
-l
30 文字のファイル名を許す。通常 ISO9660 ファイル名は ISO9660 標準が 30 文字までのファイル名を認めていても MS-DOS 互換の 8.3 フォーマットにな る。このオプションを使用すれば、ディスクは MS-DOS で使用するのが困難に なるが、その他のシステム (Amiga のような) で使いやすくなる。注意して使 用すること。
-J
通常の ISO9660 ファイル名に加えて Joliet ディレクトリレコードを生成す る。これはディスクが Windows95 や Windows NT マシンで使用されるとき一 番便利である。Joliet ファイル名は Unicode で指定され、それぞれのパスは 最大 64 Unicode 文字で構成することができる。
-L
ISO9660 のファイル名をピリオドで始めることを許す。通常、先頭のドットは MS-DOS との互換性を維持するためにアンダースコアに変換される。
-log-file log_file
標準エラー出力の代わりに、 log_file にすべてのエラー、警告、一般的な通知メッセージを出力する。
-m glob
CD-ROM に書き込まれるときに glob を除外する。 glob はシェルのワイルドカード形式のファイル名 (-x のようにパスではない) の一部に一致するパターンである (訳注: glob はファ イル名に一致するパターンを生成し、それはしばしばシェルに依存する)。 技術的には glob は、ディレクトリエントリの d->d_name 部分に対して一致される。複数の glob が実行可能である (最大 1000)。 例: mkisofs -o rom -m '*.o' -m core -m foobar は ".o" で終わるファイルまたは "core" または "foobar" のすべてが CD-ROM にコピーするファイルから除外される。もし "foobar" と呼ばれる ディレクトリがあれば、それも除外される (そしてもちろんそのサブディレ クトリも除外される)。 注意: -m と -x オプションに関する説明は間違っており、更新されるべきである。 ファイル名そのままの指定とワイルドカード形式の指定の両方が可能である。 ファイル名が一致した場合か、パスの全てが一致した場合にファイルは除外される。
-exclude-list file
上で述べた、隠される globs のリストを収めたファイル
-M path
もしくは
-M device
結合される、すでに存在する ISO9660 イメージのパスを指定する。 代わりに SCSI デバイスを指定する場合は cdrecorddev= と同じ書式を用いる。 mkisofs の出力は -M で指定したイメージの後ろに新しいセッションとして書き込まれ るだろう。通常、これはこのイメージを書き込もうとしている書き込み機およ び CD-ROM ドライブに対しマルチセッション機能を要求する。マルチセッショ ン機能のサポートは、CD-ROM 上で次の書き込み可能なアドレスを決定するた めに mkisofs と cdwrite との間でいくつかのハンドシェークが要求されるた め、まだ完全ではない。 このオプションは -C との組合せの場合のみ用いられる。
-N
ISO9660 ファイル名のバージョン番号を省略する。これは ISO9660 標準に 違反するが、このバージョン番号を本当に使っているシステムはない。 注意して使用すること。
-nobak
-no-bak
iso9660 ファイルシステム上にバックアップファイルを含まない。 -no-bak オプションが指定されると、文字 '~' または '#' を含むファイルと、'.bak' で終わるファイルは含まれない(これらは unix 上のエディタの典型的なバックアップファイルである)。
-no-rr
前のセッションからの Rock Ridge 属性を使わない。 これは、 mkisofs が古いセッションの不正な Rock Ridge 署名を見つけた時に、トラブルになるのを 避けるのに役立つだろう。
-no-split-symlink-components
SL コンポーネントを分割せず、代わりに新しい継続領域 (Continuation Area (CE)) を開始する。これは空き領域を浪費するが、SunOS 4.1.4 の CD-ROM ドライバは分割された SL コンポーネントの読み込みにバグがある。 (link_size += component_size の代わりに link_size = component_size)
-no-split-symlink-fields
SL フィールドを分割せず、代わりに新しい継続領域 (Continuation Area (CE)) を開始する。これは空き領域を浪費するが、SunOS 4.1.4 及び Solaris 2.5.1 の CD-ROM ドライバは 分割された SL フィールドの読み込みにバグが ある(`/' が抜け落ちることがある)。
-o filename
は、書き込まれる ISO9660 ファイルシステムイメージのファイル名である。 これはディスクファイルやテープドライブまたは直接一致する光学ディスク書 き込み機のデバイス名でもかまわない。もし指定されなければ、標準出力が使 用される。出力は通常のディスクドライブの特殊ブロックデバイスでも構わな いが、この場合にはディスクパーティションはマウント可能で、プリマスタリ ングが正常に終了したかを確証していなければならないことに注意するように。
-path-list file
ISO9660 ファイルシステムに追加される pathspec ディレクトリとファイル名のリスト。 この pathspec リストは、コマンドラインに現れるすべてのもののあとに処理される。 もし引数が - ならば、リストは標準入力から読まれる。 少なくとも一つの pathspec がコマンドラインで与えられなければならない。
-P publisher_id
ボリュームヘッダに書き込まれる文字列を指定する。これは CD-ROM の出版者 を説明し、通常メールアドレスと電話番号が記載される。 ディスク上には 128 文字の情報の分の容量がある。 このパラメータは .mkisofsrc の PUBL= でも設定可能である。もし二つの場所で指定されている場合、コマ ンドラインのものが使用される。
-p preparer_id
ボリュームヘッダに書き込まれる文字列を指定する。 これは CD-ROM の作成者を説明し、通常メールアドレスと電話番号が記載される。 ディスク上には 128 文字の情報の分の容量がある。このパラメータは .mkisofsrc の PREP= でも設定可能である。 もし二つの場所で指定されている場合、コマンドラインのものが使用される。
-print-size
予測されたファイルシステムのサイズを表示して終了する。このオプションは Disk At Once モードで cdrecord に直接パイプしているときに、いくつかの CD-R ドライブで使用される。 この場合には、実際の CD 作成が行われる前にファイルシステムのサイズを知っ ておく必要がある。-print-size オプションは、CD が実際に書き込まれる前 に "dry-run" (訳注: 実際の書き込みを伴わない試験書き込み) によりこのサ イズを取得する。
-quiet
このオプションは mkisofs にそれほど詳細な出力をさせないようにする。 進捗状況が出力されない。
-R
ISO9660 ファイルシステムのファイルを詳細に説明するために Rock Ridge プロトコルを使用して SUSP 及び RR レコードを生成する。
-r
これは -R オプションに似ているが、ファイルの所有とモードがより便利な 値に設定される。UID と GID は通常作者のシステムでのみ有用で、クライア ントでは有用でないため 0 にセットされる。すべての読み込みビットは true でファイルとディレクトリはクライアントで全体的に読み込み可能になる。も しいかなる実行ビットがファイルに設定されていたら、実行ビットのすべてが 設定され、クライアントで実行可能ファイルは全体的に実行可能になる。もし いかなる検索ビットがディレクトリにセットされていれば、検索ビットのすべ てを設定し、ディレクトリは全体的にクライアントで検索可能になる。すべて の書き込みビットは、CD-ROM はすべての場合において読み込み専用でマウン トされるため、消去される。もしいかなる特殊モードのビットが設定されてい れば、読み込み専用のファイルシステム上でのファイルロックは有用ではなく、 set-id ビットは UID 0 または GID 0 では望ましくないため、消去する。
-sysid ID
システム ID を指定する。このパラメータはファイル .mkisofsrc で SYSI=system_id として設定される。もし両方の場所で指定された場合、コマン ドラインのものが使用される。
-T
Rock Ridge が使用できないシステム上で正しいファイル名を得るために TRANS.TBL を CD-ROM のそれぞれのディレクトリに生成する。ファイルの中に は他にもブロックデバイスやキャラクタデバイスのメジャー番号やマイナー番 号情報があり、それぞれのシンボリックリンクは与えられたファイルの名前を 持つ。
-table-name TABLE_NAME
代わりの変換テーブルファイルネーム(上を見よ)。 -T オプションを含む。 もしマルチセッションイメージを作成したならば、前のセッションと同じ名前 にしなければならない。
-U
iso9660 標準に完全に違反する、"未変換" ファイル名を許可する。 -d、-l、-L、-N フラグが自動的に指定され、文字 '.' を 1 個以上含む ファイル名や、大文字小文字が混ざったファイル名も許可される。 これは、最初からある CDFS ファイルシステムが何の拡張も認識しない HP-UX システムで有効である。使用には細心の注意を払うこと。
-V volid
マスターブロックに記載するボリューム ID を指定する。 このパラメータは、ファイル .mkisofsrc で VOLI=id により指定することもできる。もし二つの場所で指定された場合, コマンドラインのものが使用される。 もしボリューム ID を指定した場合、その名前は、Solaris ボリューム管理シ ステムではマウントポイントとして、Windows または Mac プラットフォームでは ディスク名として使われるので、注意すること。
-volset ID
ボリュームセット ID を指定する。このパラメータはファイル .mkisofsrc で VOLS=volset_id として設定される。もし両方の場所で指定された場合、コマン ドラインのものが使用される。
-volset-size #
ボリュームセットサイズを # に設定する。ボリュームセットサイズとは CD のセットの中の CD の枚数である。 -volset-size オプションは、オペレーティングシステムのインストールなどで CD が(複数 枚の)セットになっている場合に、その部分としての CD を作成するときに指 定する事ができる。 -volset-size オプションは、コマンドライン上で -volset-seqno より前に指定されなければならない。
-volset-seqno #
ボリュームセット番号を # に設定する。ボリュームセット番号とは、その CD の、CD セットの中での順番である。 -volset-size オプションは、コマンドライン上で -volset-seqno より前に指定されなければならない。
-v
冗長な出力。
-x path
CD-ROM の書き込みに path を排除する。 path はコマンドライン引数として連続して与えられた完全なパス名で、パスはこの ディレクトリに相対でなければならない。複数のパスが除外可能である (最大 1000)。 例: mkisofs -o cd -x /local/dir1 -x /local/dir2 /local 注意: -m と -x オプションに関する説明は間違っており、更新されるべきである。 ファイル名そのままの指定とワイルドカード形式の指定の両方が可能である。 ファイル名が一致した場合か、パスの全てが一致した場合にファイルは除外される。
-z
特殊な SUSP レコードを transparent 圧縮されたファイルに対して生成する。 これは transparent 圧縮をサポートするホストに対してのみ使用される。こ れは試験的な機能で、どのホストもこれをサポートしていないが、この機能を 使用可能にする Linux 用の alpha パッチが存在する。

ブート情報テーブル

-boot-info-table オプションが与えられると、 mkisofs-b オプションで与えられたブートファイルのオフセット 8 に 56 バイトの "ブー ト情報テーブル(boot information table)" を挿入して、ブートファイルを修 正する。 この修正は作成元となるファイルシステム上で行われるので、このファイルが 簡単に再作成できないのならちゃんとコピーをとっておくこと! このファイルはブート時には簡単には得られない、または信頼できる値が得ら れないポインタを含む。
このテーブルのフォーマットは以下の通り; すべての整数は 7.3.1 節("リトルエンディアン") フォーマットである。
 
オフセット	名前	サイズ	意味
 8	bi_pvd	4 bytes	最初のボリューム記述子の LBA
12	bi_file	4 bytes	ブートファイルの LBA
16	bi_length	4 bytes	バイト単位でのブートファイルの長さ
20	bi_csum	4 bytes	32 ビットチェックサム
24	bi_reserved	40 bytes	予約済み
 
32 ビットチェックサムは、オフセット 64 バイトから始まるブートファイル のすべての32 ビットワードの和である。

環境

mkisofs.mkisofsrc ファイルを検索するために、最初は現在の作業ディレクトリを参照し、そして ユーザのホームディレクトリ、そのあとに mkisofs バイナリが保存されているディレクトリを参照する。このファイルは、 "TAG=value" 形式の行が含まれるものであり、この形式でいくつかのオプショ ンを設定できる。 タグの大文字小文字は意味を持たない。 ボリュームヘッダのいくつかのフィールドはコマンドラインで設定不可能であ るが、この設定ファイルで設定可能である。このファイルには、"#" 文字を使 用することによりコメントを付けられる。
APPI
アプリケーション識別子は、ディスクにあるアプリケーションを説明する。 ディスク上には 128 文字の情報の分の容量がある。 -A コマンドラインオプションにより上書きできる。
COPY
多くの場合著作権情報が格納されているディスク上のファイルの名前となって いる、著作権情報である。ディスク上には 37 文字の情報の分の容量がある。 -copyright コマンドラインオプションにより上書きできる。
ABST
多くの場合要約情報が格納されているディスク上のファイルとなっている、要 約情報である。ディスク上には 37 文字の情報の分の容量がある。 -abstract コマンドラインオプションにより上書きできる。
BIBL
多くの場合書誌情報が格納されているディスク上のファイルとなっている、書 誌情報である。ディスク上には 37 文字の情報の分の容量がある。 -bilio コマンドラインオプションにより上書きできる。
PREP
これは CD-ROM の作成者をメールアドレスや電話番号で説明する。 ディスク上には 128 文字の情報の分の容量がある。 コマンドラインの -p オプションにより上書きできる。
PUBL
これは CD-ROM の編集者をメールアドレスや電話番号で説明する。 ディスク上には 128 文字の情報の分の容量がある。 コマンドラインの -P オプションにより上書きできる。
SYSI
システム識別子である。ディスク上には 32 文字の情報の分の容量がある。 コマンドラインの -sysid オプションにより上書きできる。
VOLI
ボリューム識別子である。 ディスク上には 32 文字の情報の分の容量がある。 コマンドラインの -V オプションにより上書きできる。
VOLS
ボリュームセット名。 ディスク上には 128 文字の情報の分の容量がある。 コマンドラインの -volset オプションにより上書きできる。
mkisofs はコンパイル時にこれらのほとんどのフィールドをデフォルトとして設定する こともできる。 defaults.h ファイルを参照すること。

著者

mkisofs は、ディスク上の ISO9660 ファイルシステムを完全に生成しなければならな いため、UNIX 向けの標準の mk*fs をベースにしていない。mkisofs という名 前は、ファイルシステムを作成するだけでなく、それを移植することもできる ため、おそらく少し不適切な名前かもしれない。
Eric Youngdale <[email protected]> または <[email protected]> は、 Linux の ISOFS9660 ファイルシステム及び mkisofs ユーティリティを作成し、 これらは彼らにより保守されている。mkisofs ユーティリティの著作権 は Yggdrasil Computing, Incorporated により所有されている。

注意

mkisofs は、suid root でインストールされても多分安全である。 これはマルチセッションを作成する時に mkisofs が前のセッションを読むのに必要なことである。

バグ

ISO9660 ファイルシステムにコピーされるツリーにないファイルへハードリ ンクしているすべてのファイルは誤った参照回数を持つ。
Rock Ridge 拡張の存在を検証するために、ルートディレクトリの "." エントリにある SUSP レコードをチェックしない。 この問題はマルチセッションモードでデータを追加している間に古いセッショ ンを読み込む時に起こる。
マルチセッションモードでのデータ追加時に、再配置されたディレクトリを適 切に読み込まない。 新しいセッションが深いディレクトリを持たない場合、再配置された深いディレクトリは失われる。 繰り返す: 深いディレクトリを再配置して最初のセッションを作成し、単一の ディレクトリで新しいセッションを加えると、前の深いパスとは異なる。
マルチセッションでは、TRANS.TBL からできる RR_MOVED を再利用しない。
マルチセッションモードでは、RR_MOVED には完全な名前のエントリは作成されない。
おそらく他にもあるだろう。作者に報告してほしい。

将来の改良

ある種の GUI インターフェース.

入手性

mkisofs は anonymous FTP の tsx-11.mit.edu の /pub/linux/packages/mkisofs や他 のたくさんのミラーサイトから入手できる。

メイリングリスト

もし mkisofs の開発に積極的に関わりたいなら、 本文に subscribe と書いたメールを
 
[email protected]
 
に送って cdwriting メイリングリストに参加しよう。 ML のメールアドレスは
 
[email protected]
である。

メンテナー

Joerg Schilling
Seestr. 110
D-13353 Berlin
Germany
バグや改善のメールは
[email protected] または [email protected] または [email protected] へ。