2013年3月12日火曜日

[Windows][Cygwin]ディスク上のファイルから iso イメージを作成する

Cygwin を使ってハードディスク上のファイルから iso イメージを作成します。

いまどきこの様に iso ファイルが必要になるってことはそうめったにはないことじゃないかと思うのですが、VMware のゲスト OS 上の DVD ドライブにマウントさせるのに作りました。

必要となるパッケージ

mkisofs コマンドが必要です。
Cygwin の Setup.exe を使い、Search ボックスに「mkisofs」で検索すれば出てきます。
※詳しい手順は パッケージの追加インストール を参照

iso イメージの作成

iso イメージ用のディレクトリを作ってそこにファイルを一式入れて用意します。

$ mkdir isodata
(isodata ディレクトリにファイルを格納)

mkisofs コマンドで ISO の作成をします。

$ mkisofs -o disk.iso ~/isodata
I: -input-charset not specified, using utf-8 (detected in locale settings)
1.80% done, estimate finish Tue Mar 12 11:52:36 2013
3.61% done, estimate finish Tue Mar 12 11:52:08 2013
・・・
97.28% done, estimate finish Tue Mar 12 11:52:01 2013
99.07% done, estimate finish Tue Mar 12 11:52:02 2013
Total translation table size: 0
Total rockridge attributes bytes: 0
Total directory bytes: 2300
Path table size(bytes): 30
Max brk space used 30000
277575 extents written (542 MB)



iso イメージの確認

Linux であれば iso ファイルをマウントして中身を読むことができるのですが、Cygwin 上で作成した iso ファイルをマウントして読み込むことはカーネルの問題でできないらしいです。

iso ファイルの中身を確認する方法はおおむねこのぐらいだそうです。
1.Windows 8 だと標準で iso ファイルをマウントできるそうです。
2.bsdtar コマンドを Cygwin にインストールし、中身を取り出す。
3.iso イメージを DVD に焼いて、DVD メディアからファイルを取り出す。
4.仮想ドライブと iso ファイルのマウントが使えるツールを使う。
私は4です。



VMware 上のゲスト OS のデバイスに接続

作成した iso ファイルを VMware のゲスト OS に接続したところ、無事読み込むことができました。
※ファイル名が 8.3 形式になっちゃうのですが、それは相性が悪いみたいでしょうがないです。mkisofs コマンドのオプションを付けることで Joliet 形式で iso ファイルを作るのはできるのですが、それを VM 側で読み込めなかったためです。


Cygwin のページに戻る

0 件のコメント:

コメントを投稿