†逆襲のOS/2†

DOSからのOS/2イメージ・インストール

作成開始日 2018.08.24
最終更新日 2018.08.24

スキームがほぼ固まった。基本的に、DOS入りのUSBメモリでブートして、DDDumpでHDDやSSDの物理イメージを作成/復元する、という方法。これだけだと簡単そうに見えるが、超えるべきハードルはけっこう高くて多い。なお、同様な発想はClonezillaなどのツールでも実現可能で、恐らくこちらの方が確実だとは思うが、個人的には使いなれたDOSベースの方がずっと使いやすかった。

【追記】OS/2ブータブルCD-ROMが作成可能になった現在(2021年1月)、本稿で紹介する方法に意味があるかどうか疑問。特に、本稿が想定しているようなレガシーPC(PentiumIII/M/4世代)では、そもそもUSBブートが可能かどうか、かなり怪しい。レガシー世代ならばIDE CDDからのブートはほぼ間違いなくサポートしているだろうし、Core2以降の世代ならば仮想化環境の方が現実的。USBからDOSをFDモードで起動するというのは、かなり面倒な作業になるが、その苦労をするほどの価値があるか疑問。

●ひな型の作成とCF/IDEアダプタ

適当なレガシーPCを用意して、ひな型となるOS/2システムを作成する。 普通にインストールしたシステムに、DANIS506、SNAP、Genmac、UniAudioなどの各種ドライバ類、 更にはSeamonkeyやFWE、WX3、PMView、lSwitch、NPSWPS、自作ファイラー、自作スクリプトなど必携ツール類を追加する。 経験的に、最低512MBあれば、一通り使用可能なシステムが構築できる。 が、標準的な用途には2GB程度欲しい。 最小=512MB/標準=2GBの二種類のひな型を作成しておくと便利。

OS/2ではアプリはもちろん、嵩張るDLL類も別ドライブに追い出すことが可能。その気になれば、システムドライブを極端にダイエットすることも難しくはない。ただし、標準的な構成から離れると、あとあと不都合が出てくる可能性があるので、やりすぎないこと。

この場合の留意点は、それぞれ丁度のサイズのストレージを用意すること。たとえば、4GBのストレージの先頭512MBだけ、或は2GBだけ使用してひな型を作ってはいけない。必ず、512MBのストレージ、2GBのストレージを用意すること。MBRを含めたストレージの物理イメージを丸々コピーするため。必然的に、復元するシステムドライブも、このサイズに限定される。この方法では、1GBとか5GBといったようなサイズのシステムドライブは作成できない。

ただし、ストレージ全体のサイズは、システムのサイズよりも大きければ良い。たとえば、8GBのストレージの先頭2GBにOS/2のシステムを復元し、残り6GBをデータ領域として使用することは可能。しかし、後からシステムドライブのサイズを変更することはできないので、例えば、2GBのシステムドライブを4GBに広げるというようなことはできない。

こうした用途に適したストレージはおそらくCFが唯一の選択肢。CF/IDEアダプタを噛ませて、IDE HDDとして認識させる(デフォルトではSATAは認識できない)。ただし、CF/IDEアダプタによっては、標準的なIDEドライバ(IBM1S506)では認識できないことがある。その場合は、IBM1S506をバージョンアップしたり、DANIS506を使ったりするのだが、どうやってドライバを入れ替えるのか、ちょっと面倒なことになるだろう。システムドライブがFATならばDOSから簡単に書き換えられるが、HPFSだとFDやCD-ROMからOS/2を起動するしかないだろう(DOS用のHPFSドライバもあるようだが使ったことはない)。

●ひな型の保存

ひな型の作成が終ったら、Windowsの[USB Image Tool]でCFの物理イメージを保存しておくとよい。と言うよりも、ストレージがUSB変換可能な物ならば(PC内部から取り出し不可能なストレージ以外はたいてい可能だが)、保存したCFの物理イメージを[USB Image Tool]で書き込めばインストールは終了である。以下のような面倒な作業をする必要ない。以下の作業は、Windows PCを必要としない、あくまでも;

USBメモリ1本でOS/2がインストール可能

なシステムを企図したものである。

●MS-DOSを用意する

今回使用したMS-DOSはWindows 98SEから抜き出したMS-DOS7(らしい)。ポイントは、大容量FDへの対応とFAT32対応。PC-DOS/V 6.3では、どちらもサポートしてないため使用できない。なお、FAT32対応は必須ではないが、USBメモリの容量が大きくなると、FAT16ではパフォーマンスが極端に悪くなる。

●USBメモリを用意する

ここで想定しているインストールメディアはUSBメモリ。 CD-ROMやDVD-ROMでもできないことはないが、手軽さではUSBメモリの方がずっと上。 USBメモリからのブートが可能なPCならば、どんなPCでも使用できる。

今回は1GBまたは2GBのUSBメモリを使用することにする。 OS/2のシステムドライブのイメージを格納することを考えると、 512MB以下では容量的に厳しい。 また、4GB以上あっても意味はないし、MS-DOSのFDDモード(後述)でどこまで認識できるか不明(2GBは確実に認識可能)。

●USBメモリをFDDモードで起動する

次に、USBメモリにMS-DOSを入れてブート可能にする。この場合、普通にHDDモードにするのなら簡単だが、ここではFDDモードにしなくてはならない。なぜなら、DOSのFDISKでは、MBRの修復もアクティブ区画の設定も、1台目のHDD/SSDに対してしか行えないので、USBメモリ自体が1台目のHDD/SSDになってしまうと、ターゲットドライブが操作できない。

機種によっては、USBメモリをFDDモードにするかHDDモードにするか、BIOSレベルで選択できる場合もある。しかし、汎用性に乏しいので、ここではUSBメモリ自体をFDDモード化することを考える。

USBメモリをFDDモード化するのはけっこう面倒。中には初めからFDDモードに設定されているUSBメモリもあるが(SONYの1GBがそうだった)、HDDモードのものも多いし、そもそもブート不可能なものもある。そこで、前準備としてUSBメモリにFDのイメージを書き込んで、擬似FDDとしてブートできるようにする。

具体的には、まず、適当なMS-DOSのブートFDを用意し、Windows上で[rawwrite]のようなFDイメージ作成/復元ツールを使い、ブートFDの物理イメージ(.img)を作成する。このイメージは自分で作成しないでも、たとえば、FreeDOSのFDイメージを利用してもよい。

で、同じくWindows上で[USB Image Tool]などを利用して、このFDのイメージをUSBメモリに書き込む。すると、USBメモリが擬似FDとしてブートできるようになる。擬似FDと言うのは、デバイスIDがFDと同じ00で(A:としてブート可能)、容量が1.44MBとなることを意味する。USBメモリの容量に拘らず、1.44MBしか使用できないのがポイント。で、このUSBメモリをWindows上で再フォーマットする。すると、FDDモードのままでフルサイズのUSBメモリとなる。

次に、MS-DOSを起動して、このUSBメモリにDOSのシステムを転送してブート可能にする。一番確実なのは「FORMAT x: /S」で再々フォーマットする方法だが、この方法ではUSBメモリの容量によって、FAT32/FATが自動選択され、ユーザーが明示的に指定することはできないようだ(512MBまではFAT、1GB以上はFAT32となった)。SYSコマンドが使用できれば、フォーマット(Win上)とシステム転送(DOS上)を切り分けることができるが、残念ながら私のDOSにはSYSコマンドが入っていなかった(u_u;)

PC-DOS/V6.3では、この方法で再々フォーマットしても、全量確保はできない。ケースバイケースだが、2MBだったり、6MBだったり、24MBだったりする。

あとは、DOSのファイル一式と必携ツール(VZやCAPS等)をコピーする。さらに、[DDDump]というイメージ作成/復元ツールを入れておく。

●イメージの保存

ひな型を保存したCF/IDEと上記のUSBメモリを、USBブート可能なPCに接続し、USBメモリからブートする。この場合、USBメモリはHDDでもFDDでもなく[USB-ZIP]として認識されるので、BIOSのブートシーケンス設定で、HDDよりもUSB-ZIPを優先する。DOSが起動したら、まずはA:から起動していることを確認する。その上で、[DDDump]でイメージを保存する。予め、適当な保存用ディレクトリ(例えばA:\DDIMG)を作成しておいて;

DDDump -d0 A:\DDIMG -n
とすれば、ひな型CFの物理イメージが保存できる。この場合の留意点は二つ;

一つ目は、この保存作業はかなり長い時間が掛かるということ。512MB最小システムで約20分、2GB標準システムで約40分掛かった。復元にも同程度掛かるので、当初考えていたような「手軽な」インストール方法とは言いにくい。速度面では[USB Image Tool]で.imgを復元する方が圧倒的に速い。なお、[DDDump]の物理イメージと[USB Image Tool]などで使用される一般的な物理イメージには互換性はない。

二番目は、開始セクタがど〜も納得できない、という点。2GB標準システムのバックアップを取ったときは、セクタ0から始まっていたのだが、512MB最小システムはセクタ1からになっていた。さらに、別途レスキュー区画CF(8MB)の保存も試したことがあるが、こちらはセクタ0からだったり1からだったりと、一定ではなかった。まあ、セクタ1から始まる最小システムでも復元に支障はなかったようだが、とても気持ちが悪い。

正確に言うと、セクタ1からの場合は、復元時に「0からでないと復元できない」というメッセージが表示され、作業が中断してしまったことが何度もある。が、これはオプションの指定ミスの可能性もあり(-nを忘れたか?)、はっきりとは言えない。確実なのは、セクタ1からでも復元できた実例がある、ということだけ。なお、明示的に-s0を指定しても、セクタ0は保存できなかった。また、レスキューCFに関しては、開始セクタの問題とは関係なく、まともにブートしなかった…これはこれで、また別の課題。

●イメージの復元

USBメモリにOS/2のイメージを保存したら、そのUSBメモリをOS/2をインストールしたいPC(ターゲットPC)に挿入してブートする。で、同じくDOSから、以下のようにしてOS/2イメージをターゲットPCのストレージに復元する;

DDDump -d0 A:\DDIMG -n -r
このとき注意が必要なのは、ターゲットPCのストレージは更の状態ではダメで、一応DOSからアクセス可能な区画が一つは必要だということ。FAT32あたりで事前にフォーマットしてあれば良いが、そうでないと、DOSから区画割りをしなければならない。このとき、ターゲットPCのストレージが余り大きすぎると、DOSのFDISKでは正常に扱えないかも知れない。その場合、イメージの復元も失敗する可能性がある(80GBでは失敗したことがある)。

なお、ひな型はCD/IDEで作成したが、復元先はSATAドライブ(IDE互換モード)でも可。ただし、IDEドライバは最新版のDANIS506に差し替えておく必要がある(少なくとも、デフォルトのIBM1S506ではダメ)。


【逆襲のOS/2目次】 【ホーム】