この手引きでは、サーバーの設定と立ち上げに必要な手順の始めから終わりまですべてと、 クライアントの設定に関する基本的な情報のいくらかを網羅しています。
この文書では、 NetBSD システムをネットワークからブートする手順についてのみを 扱います。 NetBSD をブートするためのローカルハードドライブのセットアップ方法は 説明しません。そういった情報は、お使いのプラットフォーム用の INSTALL ノートに あります。この文書で説明する手順は、 NetBSD インストーラーのネットブート (ローカルハードドライブの設定のため) と、ローカルストレージのないシステム上での 完全な NetBSD 配布物のネットブートのいずれにも使えます。
インストーラーをネットブートするだけの場合は、お使いのアーキテクチャー用の指示に従いながら、 NFS の設定ページまで読み進んでください。 NFS の設定ページに、 インストールツールの説明へのリンクがあります。お使いのクライアントシステムが (hp425e や iBook のように) ローカルコンソールとシリアルコンソールの いずれもサポートしていない場合であっても、動作するシステムのネットブートが 可能です。お使いのアーキテクチャー用の指示に従いながら、 ファイルシステムのページまで読み進んでください。ファイルシステムのページに、 やらなければならない特別な手順の説明ページへのリンクがあります。
この文書は、完全なものを目指したため、非常に長いものになっています。 ネットブートのことを概ね知っている方でも、序説ページは斜め読みすべきです。 その場合、このページは飛ばして、お使いの プラットフォーム別の序説ページに直行してもかまいません。
上記の各アーキテクチャーでは、それぞれ異なる方法で、最初の ブートローダーのコードをロードします。 ここで、ネットブート手順の概観を説明します:
この段階では、プラットフォームによって 4 種類の方法が使われます。
カーネルは、ブートローダーがしたことをまた行う必要があります。すでに ブートローダーが得た情報をカーネルに渡すための標準的な方法がないからです。 つまり、 IP アドレス、 NFS サーバー上の NFS パスを知るために、上記の方法 のいずれかを使うということです。
普通はブートローダーと同じ手順を使うようカーネルを設定しますが、 カーネル構築時に別の方法を使うよう設定することも可能です。
サーバーがクライアントと同じアーキテクチャー (例えば、 NetBSD/hp300 や next68k なら Motorola 680X0 マイクロプロセッサー、 NetBSD/sparc なら Sparc マイクロプロセッサー、 NetBSD/vax なら Vax マイクロプロセッサー) で、しかも NetBSD が動いている場合は、クライアントはサーバーの /usr ディレクトリー構造を利用して、ディスク容量を相当量節約することができます。
サーバーがクライアントと (同じマイクロプロセッサーというだけでなく) 同じポート の場合は、クライアントとサーバーでほとんどを共用した疑似クラスター環境を 作り上げることができます。
特筆すべきは、ネットブート手順の各段階は、それぞれ別のサーバーや別の OS で行うことが出来るということです。つまり、 rbootd 要求の処理 (例えば NetBSD/hp300 向け) には HP-UX を使い、 rarp と bootparams 要求には SunOS が応答し、 nfs ファイルシステムは NeXTSTEP が担当する、といったこともできます。このため、 非常に柔軟性を持たせることができます。また、このページが OS ではなくデーモン別に分かれた構成になっているのはこのためです。
この表は、クライアントアーキテクチャー別に、どのデーモンがサーバーで走っている 必要があるかを示した、汚い早見表です。
プラットフォーム \ デーモン | rbootd | mopd | ndbootd | rarpd | bootparamd | bootpd (1) | dhcpd (1) | tftpd | nfsd |
alpha | no | no | no | no | no | yes | no | yes | yes |
hp300 | yes | no | no | yes | yes | no | no | no | yes |
hp700 | yes (2) | no | no | no | no | yes | no | yes (2) | yes |
i386 | no | no | no | no | no | no | yes | yes | yes |
macppc | no | no | no | no | no | yes | no | yes | yes |
next68k | no | no | no | no | no | yes | no | yes | yes |
pmax | no | no | no | no | no | yes | no | yes | yes |
sparc | no | no | no | yes (3) | no | no | yes (3) | yes | yes |
sparc64 | no | no | no | yes | no | no | yes | yes | yes |
sun2 | no | no | yes | yes | yes | no | no | no | yes |
sun3 | no | no | no | yes | yes | no | no | yes | yes |
vax | no | yes | no | yes | yes | yes | no | no | yes |
(1) dhcpd は bootpd サーバーとして機能します。
(2) hp700 ワークステーションの最近の機種では、 rbootd ではなく tftp が必要です。
(3) 一部のバージョンの JavaStation では、 rarp を必要としません。
この表は、どのデーモンがどのサーバー OS で利用可能かをまとめたものです。 これらのソフトウェアは、特に指定がなければ、サポート OS のどのアーキテクチャー でも動作します (例えば Solaris では、 sparc と i386 アーキテクチャーの どちらでも動作するはずです) 。
サーバー側に必要なソフトウェアを、 2 個追加しています: gzip と gnutar です。以下の表で、お使いのサーバーの オペレーティングシステムの欄に (c) とある場合は、ここで gzip と gnutar を入手してコンパイルしておくとよいでしょう。 gnutar は、クライアントの ファイルシステムを展開する際に、 uid と gid 番号を適切なままで展開してくれます。
OS\デーモン | rbootd | mopd | ndbootd | rarpd | bootparamd | bootp | dhcp | tftp | nfs | gzip | gnutar |
NetBSD | yes | yes | yes | yes | yes | yes | yes | yes | yes | yes | yes |
OpenBSD | yes | yes | yes (c) | yes | yes | yes | yes | yes | yes | yes | yes |
FreeBSD | yes (c) | yes (c) | yes (c) | yes | yes | yes | yes | yes | yes | yes | yes (c) |
Mac OS X/Darwin | yes | no | no | yes (?) | yes | yes (2) | yes (c) | yes | yes | yes | yes (3) |
Linux | yes (c) | yes (c) | no | yes (k) | yes (c) | yes | yes (c) | yes | yes | yes | yes (c) |
SunOS 4 | yes (c) | no | no | yes | yes | yes (c) | yes (c) | yes | yes | yes (c) | yes (c) |
Solaris 2 | yes (c) | no | no | yes | yes (1) | yes (c) | yes | yes | yes | yes (c) | yes (c) |
NEWS-OS 4.x | yes (c) | no | no | yes | yes | yes | no | yes | yes | yes (c) | yes (c) |
NEXTSTEP 3.3 | no | no | no | yes (?) | yes (?) | yes (?) | yes (c) | yes | yes | yes (c) | yes (c) |
HP-UX 7, 9 | yes (c) | no | no | no | no | no | no | yes | yes (k) | yes (c) | yes (c) |
HP-UX 10 | yes (c) | no | no | yes | no | yes | yes | yes | yes | yes | yes (c) |
DomainOS | no | no | no | no | no | ? | ? | ? | no | yes (c) | yes (c) |
(1) Solaris には bootparamd がありますが、 NetBSD ブートローダーとは
うまく協調しません。ただしこれは回避策があります
(2) Mac OS X と Darwin にはネイティブの bootpd がありますが、
NetBSD システムのネットブートには使えません
(3) Mac OS X と Darwin には gnutar と古い tar があります
─ ファイルの展開には gnutar を使うようにしてください
(c) のものは、プログラムをソースからコンパイルする必要があります
(k) のものは、カーネルを再構築して再起動する必要があります
(?) のものは、ネイティブ版のデーモンがありますが、
それが使えるかどうかは不明です
名前 | 説明 |
10Base2, Thin LAN, Thin net, Coax |
同軸ケーブルを数珠繋ぎに接続するもので、 BNC コネクターを使います。 チェーンの各末端には 50 オームの終端抵抗が必要で、チェーン内のマシンは T 字型コネクターを使って接続します。 |
10Base5, Thick, AUI |
数珠繋ぎ/スター型接続 (つまり、どのワークステーションも、
バックボーンまたはバックボーンに接続された「ファンアウト」箱に接続)
で、 DB 15 コネクター (15 ピンの D 型コネクター) を使います。
Thick ネットワークのトポロジーは、
実際にはもっと複雑なものにもなります。 最も重要なことは、 US$30 ほどで買えるトランシーバーを使って、 Thick コネクターを他の種類のイーサネット (Thin、 10BaseT、 FDDI、その他いろいろ) に接続できることです。 |
10BaseT, UTP, Twisted Pair |
スター型の構成で、 RJ45 コネクター (ピン数が多いほかは米国の電話線のジャックと同様) を使います。また、 10Base-T のネットワークには "T" 字型分岐があってもよく、 そこからワークステーションを数珠繋ぎに接続できます。 |
これでメディアがはっきりしましたが、クライアントはサーバーと同じ サブネットに繋げなければならないので注意してください。 ルーターを越えることは絶対にできないからです。 ハブやスイッチを介して接続することは問題ありません。 これについて不安があれば、ネットワーク管理者に相談してください。 ただし、 nfs サーバーだけはこの限りでなく、 同じサブネットにいる必要はありません。
注意事項:
サーバーのイーサネットメディアを変更する
お使いのネットワーク接続に問題がある場合 (つまり、イーサネットメディアの 種類がまずい場合) 、お使いのサーバーのイーサネットカードが使っている イーサネットメディアを変える必要があるかもしれません。 その方法を簡単に説明します。詳細は、イーサネットカード (内蔵イーサネットの 場合はコンピューター) の附属ドキュメントに書いてあるかもしれません。 この手のことに詳しくない方は、ネットワーク管理者に相談してください。 簡単にまとめると、以下のとおりになります:
別の方法として、もしサーバーに 2 枚目のイーサネットカードが付いていれば、 そのサーバーとクライアントだけの専用のネットワークを作ってしまうという方法も あります。こうしたときにクライアントがアクセスできるように サーバーを設定する方法については、この HOW-TO の管轄外です。
le0 | イーサネットインターフェースのデバイス名 (sun、 HP、 DEC のハードウェアで共通) |
192.168.1.10 | ディスクレスクライアントの IP アドレス (十進数) 。 |
client.test.net | ディスクレスクライアントのインターネット規準名。 |
C0A8010A |
ディスクレスクライアントの IP アドレス (十六進数) 。 SunOS、 Solaris および sun-rbootd デーモンでのみ使います。 |
CCCCCCCCCCCC CC:CC:CC:CC:CC:CC | ディスクレスクライアントのイーサネットハードウェアアドレス。 |
192.168.1.5 | ディスクレスサーバーの IP アドレス (十進数) 。 |
rbootdserver.test.net |
ディスクレス rbootd サーバーのインターネット規準名。 (hp300 でのみ使用) |
mopserver.test.net |
ディスクレス mop サーバーのインターネット規準名。 (vax でのみ使用) |
SSSSSSSSSSSS SS:SS:SS:SS:SS:SS |
ブートローダーサーバーのイーサネットハードウェアアドレス。 |
tftpserver.test.net | ディスクレス tftp サーバーのインターネット規準名。 |
rarpserver.test.net | ディスクレス rarp サーバーのインターネット規準名。 |
bootparamserver.test.net | ディスクレス bootparams サーバーのインターネット規準名。 |
bootpserver.test.net | ディスクレス bootp サーバーのインターネット規準名。 |
dhcpserver.test.net | ディスクレス dhcp サーバーのインターネット規準名。 |
nfsserver.test.net | ディスクレス nfs サーバーのインターネット規準名。 |
/export/client/root | クライアント用ファイルシステムの、 nfsserver 上でのパス。 |
dns.test.net | ドメインネームサーバー (DNS) のインターネット規準名。 |
router.test.net | クライアントの属するサブネットのルーターのインターネット規準名。 |
255.255.255.0 | クライアントが使うサブネットマスク (bootpd や dhcpd の設定に使います) 。 |
192.168.1.255 | クライアントが使うブロードキャストアドレス (bootpd や dhcpd の設定に使います) 。 |
いくつか注意しておきます:
hp300 マシンでは、 Shift-Reset を押すか、 シリーズ 400 ワークステーションではリセットボタンを押すか、 シリーズ 300 ワークステーションでは電源を入れ直すことで、 リセットすることができます。
サーバー側に全ファイルを置けるだけの容量がなくても心配は無用です。 NetBSD の最低限の機能を使うために 本当に 必要なのは、以下のものだけです (/pub/NetBSD/NetBSD-release/<client-arch>/ からの相対パス) :
INSTALL.txt binary/sets/kern.tgz binary/sets/base.tgz binary/sets/etc.tgz installation/misc/SYS_UBOOT.gz (hp300 の場合) installation/misc/rbootd.tgz (hp300 の場合)
|
|