4.5. パーティションの書き換え

いくつかの Linux 以外のオペレーティングシステムは、それらのパーティション の情報(たとえばそれらにとってのルートファイルシステムなど)をパーティション テーブルから取得します。もしそのようなオペレーティングシステムが一つの PC に 複数インストールされたら、それらがパーティションテーブルの内容の解釈に混乱を きたすかもしれません。これらの問題は、ブートされるオペレーティングシステムに 応じて、パーティションテーブルを変更することで避けることができます。

パーティションテーブルの変更内容は、各オペレーティングシステムのセクションの CHANGE セクションに指定します。CHANGE セクションは、ビルド時に REWRITE_TABLE オプションを指定した場合のみ有効になることに注意してください。

CHANGE セクションは、更新されるべきテーブルエントリに該当する、それぞれの パーティションのためのサブセクションを含みます。各パーティションは以下の ように設定します。

PARTITION=<デバイス名>

変更は設定ファイル上に記述された順序で適用されます。以前の変更を繰り返したり、 後でその結果を変更するような、不要な変更を含んだ構成は無効で、マップインス トーラによって拒否されます。

内部的には、全ての変更は、場所(パーティションテーブル内にあるディスクと オフセット)、その場所が変更前に持っていた値、今度設定されるべき値を指定 する一種のルールとして表現されます。安全のため、以前の値が違っていたら、 このルールは無視されます。

4.5.1. パーティションのアクティブ化

このオプションは、パーティションテーブルのアクティブフラグを検査してブート パーティションを決定するようなシステムをブートするために用意されました。 フラグは、ACTIVATE によって有効になり、DEACTIVATE によって無効になります。 該当のパーティションにのみ有効であることに注意してください。LILO は自動的に 他のパーティションのアクティブフラグを変更したりはしません。ですから、複数 のパーティションが同時にアクティブになることもあり得ます。

4.5.2. パーティションタイプの変更ルール

パーティションタイプの変更とは、2 つの取りうる値の相互変換を指します。典型的な 慣習としては、``非表示''にするためにパーティションタイプの上位ニブルの最下位 ビットを立て(つまり 0x10)、``表示''にするために、同ビットをクリアすること です。LILO はこの変更をルールの設定に基づいて遂行します。それぞれのルールは パーティションタイプの名称、通常の値、及び非表示の場合の値を定義します。この ルールは設定ファイルのオプションセクションに定義します。それらを定義する セクションは、CHANGE-RULES で始まります。

LILO は DOS パーティションの 3 つのパーティションタイプをあらかじめ定義して います。以下の例は、そのあらかじめ定義されたルールを削除して、再び定義した ものです。

4.5.3. パーティションタイプの変更

パーティションタイプの変更は、パーティションセクションに、SET=<名称>_< 状態>という形で指定します。<名称> はパーティションタイプの名称で、< 状態> はその状態、つまり NORMAL か HIDDEN です。

SET 変数は、パーティションセクションにつき一つしか指定できません。あまりない とは思いますが、もし一つ以上の SET 変数を使いたい場合は、パーティションセク ションを増やしてください。