コンソールファームウェアはフラッシュ ROM に収められており、 Alpha システムに電源が入ったときやリセットが行われたとき起動されます。 Alpha システムで用いられているコンソールの仕様には異なるものが 2 つあり、 コンソールファームウェアとしても以下の 2 種類が利用できます。
SRM コンソールは、 Alpha コンソールサブシステム仕様に基づいたもので、 OpenVMS、Tru64 UNIX、Linux といった OS 用の 動作環境を提供します。
ARC, AlphaBIOS, ARCSBIOS コンソールは、 Advanced RISC Computing (ARC) コンソールサブシステム仕様に基づいたもので、 Windows NT 用の動作環境を提供します。
ユーザから見た SRM と ARC の最も重要な相違点は、 選択するコンソールによって、 起動可能なディスクパーティション構造が異なってくる点です。
ARC では、起動ディスクには (cfdisk などで作成した) MS-DOS パーティションテーブルを使わなければなりません。 そのため ARC から起動する場合は、MS-DOS パーティションテーブルが 「ネイティブ」 なパーティションフォーマットになります。 実際 AlphaBIOS にはディスクパーティションユーティリティが含まれているので、 Linux をインストールする前に、ファームウェアのメニューから ディスクのパーティションを作成するといいかも知れません。
逆に、SRM は MS-DOS パーティションテーブルとは非互換[3]です。Tru64 Unix は BSD ディスクラベルフォーマットを利用するので、 SRM をインストールする場合はこちらが 「ネイティブ」 なパーティションフォーマットとなります。
GNU/Linux は、いずれのコンソールからも起動できる 唯一の Alpha 用オペレーティングシステムですが、 Debian GNU/Linux 3.1 は SRM ベースシステムでの起動のみをサポートしています。 SRM が有効でないバージョンの Alpha をお持ちの場合や、 Windows NT とのデュアルブートにしたい場合、 起動デバイスが BIOS の初期化に ARC コンソールを必要とする場合の時には、 Debian GNU/Linux 3.1 インストーラを使用できません。 そのようなシステムでは 他のインストールメディアを使用して、 Debian GNU/Linux 3.1 を実行できます。 (例えば、Debian woody を MILO でインストールし、アップグレードする)
MILO が、 現在生産中 (2000年2月現在) の Alpha システムでどれにも利用できず、 古い Alpha 用に (SRM ファームウェアを持つ) OpenVMS や Tru64 Unix ライセンスをもう購入する必要がないため、 可能であれば、SRM を使用することをお奨めします。
以下の表は、利用可能かつサポートされている システムおよびコンソールの組合せをまとめたものです (機種名については 項2.1.2. 「>CPU・マザーボード・ビデオのサポート」 をご覧ください)。 以下に示されている 「ARC」 という単語は、 ARC 互換な任意のコンソールを指しています。
| システムの種類 | サポートするコンソール |
|---|---|
| alcor | ARC か SRM |
| avanti | ARC か SRM |
| book1 | SRM のみ |
| cabriolet | ARC か SRM |
| dp264 | SRM のみ |
| eb164 | ARC か SRM |
| eb64p | ARC か SRM |
| eb66 | ARC か SRM |
| eb66p | ARC か SRM |
| jensen | SRM のみ |
| lx164 | ARC か SRM |
| miata | ARC か SRM |
| mikasa | ARC か SRM |
| mikasa-p | SRM のみ |
| nautilus | ARC (マザーボードのマニュアル参照) か SRM |
| noname | ARC か SRM |
| noritake | SRM のみ |
| noritake-p | SRM のみ |
| pc164 | ARC か SRM |
| rawhide | SRM のみ |
| ruffian | ARC のみ |
| sable | SRM のみ |
| sable-g | SRM のみ |
| sx164 | ARC か SRM |
| takara | ARC か SRM |
| xl | ARC のみ |
| xlt | ARC のみ |
一般に Linux を直接起動できるコンソールはありませんので、 中間に挟まるブートローダの補助が必要になります。 SRM コンソールでは、aboot (小さくプラットフォームに依存しないブートローダ) を使います。 aboot についての詳細は、 (残念ながら古くなっていますが) SRM HOWTO をご覧ください。
大部分の AlphaServer や、 現行のサーバ・ワークステーション製品のすべてには、 ファームウェアに SRM と AlphaBIOS の両方が含まれています。 各種の拡張ボードのような、「half-flash」 なマシンならば、 ファームウェアを更新して、 別のファームウェアに切り替えることもできます。 また、一度 SRM をインストールすれば、 フロッピーディスクから ARC/AlphaBIOS を実行することができます (arc コマンドを使います)。 上述の理由から、Debian GNU/Linux のインストールのまえに、 SRM へと切り替えることをお勧めします。
他のアーキテクチャの場合と同様、Debian GNU/Linux をインストールする前に、 入手できる限りの最新のファームウェア[4]をインストールしてください。 Alpha の最新ファームウェアは Alpha Firmware Updates から入手できます。
SRM では、イーサネットインターフェースには
ewa という文字列からはじまる名前がつけられていて、
show dev コマンドを使うと以下のようにリスト表示されます
(多少、編集しています):
>>> show dev ewa0.0.0.9.0 EWA0 08-00-2B-86-98-65 ewb0.0.0.11.0 EWB0 08-00-2B-86-98-54 ewc0.0.0.2002.0 EWC0 00-06-2B-01-32-B0
まず、ブートプロトコルを設定します。
>>> set ewa0_protocol bootp
次にメディアのタイプが正しいかどうか確認します。
>>> set ewa0_mode mode
妥当なモードの一覧は >>>set ewa0_mode
で取得できます。
確認できたら、次のように入力すれば 1 番目の イーサネットインターフェースから起動できます。
>>> boot ewa0 -flags ""
これは netboot イメージに含まれているカーネルを、 デフォルトのカーネルパラメータで起動します。
シリアルコンソールを使いたい場合は、カーネルに console=
パラメータを渡さなければなりません。
これには SRM の boot コマンドで
-flags 引数を使います。
シリアルポートの名前は、
/dev 以下に置かれているファイルのものと同じです。
また、追加のカーネルパラメータを指定するときには、
debian-installer イメージに必要なデフォルトオプションを必ず繰り返さなければなりません。
例えば ewa0 から起動し、
1 番目のシリアルポートからコンソールを利用するには、
以下のように入力します。
>>> boot ewa0 -flags "root=/dev/ram ramdisk_size=16384 console=ttyS0"
以下のように入力してください。
>>> boot xxxx -flags 0
ここで xxxx には、
SRM における CD-ROM ドライブの呼び名を入れます。
[3] 特に、コンソールサブシステム仕様が要求するブートセクタの フォーマットは、DOS パーティションテーブルの場所と衝突します。
[4] ただし Jensen は例外で、 バージョン 1.7 以降のファームウェアでは Linux がサポートされていません。 詳しくは http://www.alphalinux.org/faq/FAQ-9.html をご覧ください。