†逆襲のOS/2†

OS/2@VirtualBox (3)

作成開始日 2021.01.16
最終更新日 2021.01.17

結論:仮想化環境では、ファイルコピーでOS/2をインストールすることが可能であり、ターゲットドライブのサイズを任意(500MB〜)に選ぶことができる。

●ディスクイメージのコピーよるインストール

今まで、ディスクイメージを操作して、OS/2を簡便にインストールする方法について検討してきた。ネイティブ環境ではHDD/SSDのディスクイメージを作成・保存しておけば良いし、仮想化環境では仮想ディスクそのものがディスクイメージ・ファイルとして扱える。ともに、新たな環境にコピーするだけで、OS/2がインストールできる。

ただし、ディスクイメージ方式の問題点は、メディアのサイズを自由に選べないと言う点にある。現状では物理イメージでしか保存・展開する方法が確立できていない。インストールするターゲットドライブは、イメージと同サイズか、それよりも大きくなくてはならない。ターゲットの方が大きい場合も、インストール区画のサイズは一定で変更できない(多分、技術的には変更する方法があると思うが、現実的とは思えない)。残りは別区画として利用するしかない。

●ファイルのコピーによるインストール

そこで、システムドライブの全ファイルをアーカイブして、それを新たなドライブに展開することで、インストールができないか検討してみた。要するにLinuxなどがISOイメージのコピーでインストールが完了する、あれと同じ状態をOS/2でも再現したい。この問題は20年くらい前からずっと考えているものだが、いつもネックになるのが、新たなドライブをOS/2ブータブルな状態にする簡便な方法が見つからないことだった。そもそも、OS/2ではブータブルなリムーバブルメディアを作成することができない。

例えば、LinuxのLive USBであれば、USBメモリを差し込むだけでブートできるし、Live CDもIDE接続はもちろん、SATA接続でもUSB接続でも問題なく起動できる。ところが、OS/2はこれができない。OS/2がブート可能なリムーバブルメディアはレガシーFDDとIDE CDドライブのみである(SCSIやZIPは除く)。これでは、たとえ実現できたとしても、使用できる環境が極端に限定されてしまう。

●仮想化環境による解決の可能性

ところが、仮想化環境が実用的だとなると話が変わってくる。VirtualBoxを使えば、どんな環境でもレガシーFDDやIDE CDドライブをエミュレートできる。更に言えば、IDE HDDの仮想ドライブ自体が、半ばリムーバブルメディアのようなものである。マウス操作一つで、接続したり、切断したりできるのだから。この環境であれば、新しい可能性が生まれてくる。

もし、OS/2のコマンドラインでブート可能なCD-Rが作成できれば、この問題は一挙に解決可能になる。OS/2でブータブルCDを作成するツール自体は存在しているようだし、他ならぬWarp 4.52のインストールCDがまさに「OS/2ブータブルCD-ROM」である。今回は、これを用いてファイルコピー・インストールを行うことにする。ただし、その前にいくつか下準備が必要になる。

●OS/2 Warp 4.52のCD-ROMのISOイメージファイルの作成

これは必ずしも必須ではないが、あるとないとでは、作業効率が全然違う。Warp 4.52であれば[インストールCD]と[システムCD](Warp 4.52とだけ書いてあるCD)の2枚のISOイメージを作成し、Sambaなどのネットワーク上に置いておく。それ以前のバージョンの場合は、CD+FDイメージということになるだろう。なお、ISOイメージの作成は、Windows上のImgBurnで行った(と思う)。

●レスキュー区画について予備知識を付けておく

ここで説明する方法では「レスキュー区画」を使用する。これは、OS/2の「ユーティリティー・ディスケット」の中身をHDDに詰め込んだもので、ユーティリティー・ディスケットのHDD版と考えればよい。あの、何度も何度もディスク交換をしなければならないのが苦痛で、OS/2のコマンドラインをHDDで起動できるようにしたものである。本スキームでは、このレスキュー区画をインストーラーとして使用する。レスキュー区画の作成方法は別項参照

●LVM管理の問題を頭に入れておく

Warp 4.52では、ディスクの管理がFDISKからLVMに変更されたが、これがトラブルの最大の要因になっている。通常、固定ディスクが2台ある場合、ドライブレターは;

C: 第1ディスク・基本区画
D: 第2ディスク・基本区画
E: 第1ディスク・論理ドライブ
……
のような順番で割り振られる。このドライブレターは、最初から2台構成の場合はもちろん、後から2台目を追加した場合も同じ。つまり、後から2台目を追加した場合、第1ドライブの論理ドライブはD:→E:に動いてしまう。ドライブレター依存でシステムを構築している場合、確かにこれは不便である。そこで、LVMではこうしたドライブレターの移動が起きないように、ドライブの管理法方を変更している。それはいい。問題は、そのドライブ管理が極めて不完全で、しばしば矛盾を引き起こす点にある。たとえば;
C: 第1ディスク・基本区画
D: 第1ディスク・論理ドライブ
に新たに第2ディスク(基本区画)を追加すると、LVMでは;
C: 第1ディスク・基本区画
D: 第1ディスク・論理ドライブ
E: 第2ディスク・基本区画
と表示される。ところが、実際にこのシステムを使用してみると、従来通り;
C: 第1ディスク・基本区画
D: 第2ディスク・基本区画
E: 第1ディスク・論理ドライブ
となっている。実ドライブレターとLVMの管理情報が一致しないのである。恐らく、この問題はIBMも気付いていて、そのため、LVMでは追加した固定ドライブに基本区画を作成できないようになっている。と言っても、[F5]で物理ビューを表示すれば、マニュアルで基本区画を作成することが可能で、このような矛盾が発生してしまう。

追加ドライブを基本区画にするのは、最終的にそのドライブを切り離して、単独ブートするシステムを作るためなのだが、このように、ドライブレターの矛盾したドライブでは、ブートが不能になることが多い。レスキュー区画のように、ドライブレター非依存で作成できるシステムは別として、一般的なWarp 4.52システムはほぼ無理なようだ。

Warp 4.52でブート可能なドライブを作るには、最初にLVMで区画割をした状態からドライブ構成を動かさないことが条件となる。仮想化環境では仮想ディスクが準リムーバブルメディアとして運用できるのがメリットだが、ことシステムブートに関しては極めて制限が多く、ドライブを足したり引いたり、順番を入れ替えたりはできない。では、どうする?−−と言うのが本稿のキモとなる。

では、順次作成方法を示す。

●ステップ1−−ひな型になるシステムを作成する

@まず、VirtualBoxで普通にOS/2をインストールする。仮想ディスクのサイズは任意。なお、必ずブートマネージャをインストールしておくこと。また、仮想光学ドライブは2台構成として、それぞれ、Warp 4.52インストールディスクとシステムディスクのISOイメージを割り当てておく。このようにCD-ROMドライブ2台構成にすれば、煩わしいディスクの入れ替え作業が不要になる。

AOS/2のインストールが済んだら、必要に応じて設定を変更したり、アプリケーションを追加して、自分の常用システムを構築する。ディスクの使用量は500MB以下を目安にする。サイズに特段の制限があるわけではないが、通常は500MB以下に収まるし、以下の説明も500MB以下であることを前提とする。なお、LVMのドライブレター問題が出ると厄介なので、この段階ではドライブはC:のみとしておくこと。

【重要】HDD1ドライブ構成+ブートマネージャ

●ステップ2−−レスキュー区画を作成する

@いったんOS/2を終了して、500MB程度の仮想ドライブを新たに1台追加する。このドライブがインストーラーになるので、名称はそれらしく付ける(os2instとか)。

AOS/2を起動して、LVMで新たに追加したドライブをブート可能ドライブD:として登録する。なお、この場合は基本区画でも、論理ドライブでもよいが、全ディスク容量(500MB)を割り当てること。

BOS/2を再起動して、fortmat d: /fs:fat でD:をフォーマットし、sysinstx d:でシステムを転送する。なお、sysinstx.comは\OS2\INSTALL\BOOTDISKにある。

CD:ドライブをレスキュー区画にする。基本的には4枚のユーティリティ・ディスケットの中身をすべて(システムファイルを含む)コピーすればよい。詳しくは別項参照

●ステップ3−−ひな型システムを全バックアップする

@OS/2を再起動し、ブートマネージャからレスキュー区画(D:)を起動する。

Aレスキュー区画で zip -r -S os2arc.zip c:\*.* を実行、C:ドライブの全てのファイルをアーカイブする。恐らく、このコマンドは何度も使うだろうから、バッチにしておくと良い。なお、通常、稼働中のシステムファイルはアーカイブが取れない。わざわざレスキュー区画から起動してアーカイブするのはそのため。

BOS/2を終了して、ディスク(仮想HDD・仮想CD-ROM)の登録を全て解除しておく。

以上が下準備段階。ここまでの作業は一度行えばよい。新たなOS/2をインストールするときは、次のステップから行う。

●ステップ4−−新たなOS/2用ドライブを登録する

@新たにOS/2をインストールしたい仮想ディスクを用意する。容量は500MB〜64GB (HPFSの実装限界)で任意。名称は、ここでは仮にos2newとする。なお、複数区画を想定しているなら、仮想ディスク容量はさらに大きくても構わない。

A新たなOS/2仮想マシンを作成し(ひな型用仮想マシンの流用でもよいが)、次のようなディスク構成にする。

primary-master 仮想HDD os2new新たなインストール対象
primary-slave 仮想HDD os2instステップ3で作成
secondary-master仮想CDD Warp 4.52 CD インストール
secondary-slave 仮想CDD Warp 4.52 CD システム

●ステップ5−−ブートドライブを設定する

@上記のOS/2仮想マシンを起動すると、Warp 4.52のインストーラが起動するので、インストール先ドライブの設定まで進んで、LVMに入る。

A第1ドライブ(os2new)にブートマネージャをインストールし、レスキュー区画(os2inst)を登録する。

B第1ドライブ(os2new)にインストール先ボリュームを作成する。当然、ブート可能な基本区画となる。なお、もし、ドライブレターに不都合があれば、この段階で調整する(インストール先区画=C:、レスキュー区画=D:)。

C[F3]でLVMを終了、もちろん設定は保管する。仮想CDを除去してシステムをリブートする。

●ステップ6−−アーカイブを展開する

@ブートマネージャからレスキュー区画を選んでブートする。

AC:ドライブをHPFSでフォーマットして(FORMAT C: /FS:HPFS)、システムファイルを転送する(SYSINSTX C:)。

Bシステムのアーカイブを、C:ドライブに展開する(unzip -o os2arc.zip -d c:\)。このコマンドもバッチ化を強く推奨。

以上でインストール終了。リブートを掛けて、ブートマネージャからC:を選べば、ひな型で作成したシステムと同じシステムが再現されるはず。あとは、必要に応じてレスキュー区画を除去するなり、新しいボリュームを追加するなり、自分の環境を作ればよい。

このスキームの特徴は、C:をブータブルにするために、Warp 4.52のCD-ROMのLVMのみを使用した点にある。手間的にはかなり省略できたが、考え方としてはあまりスマートではない。最終的には、前述のように独自のOS/2ブータブルCD-Rを作成して、そこから全ての操作ができるようにする予定でいる。


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