戻る | 進む | 目次

Diskless NetBSD HOW-TO ファイルシステムの設定

ここでは、サーバーのオペレーティングシステムに依存しない手順を説明します。 下記は nfs サーバー上で展開や修正を行なうファイル群です:

  1. # cd /export/client/root

  2. nfs サーバーが NetBSD か OpenBSD 以外の場合、 GNU tar の 1.12 以降がインストールされているか確認してください (いくつかの Linux ディストリビューションには、 必要な機能がない古い GNU tar が附属しています):

    # tar --version
    tar (GNU tar) 1.12

    もし違う場合には、 uid と gid を保つオプションのある GNU tar を手に入れてください。 さもないと、アーカイブの展開時に、ファイルのオーナー情報が 不適切に設定され、問題が起こります。

    Net/OpenBSD 以外で GNU tar を使う場合、 [--numeric-owner] オプションを使います。

  3. 必須の配布物を展開します:
    tar [--numeric-owner] -xvpzf /export/client/NetBSD-release/binary/sets/base.tgz
    tar [--numeric-owner] -xvpzf /export/client/NetBSD-release/binary/sets/etc.tgz

  4. 他の配布物も、同様にして展開します。

  5. # mkdir /export/client/root/kern

  6. スワップを設定します:
    # mkdir /export/client/root/swap
    dd if=/dev/zero of=/export/client/swap bs=4k count=4k

    これで 16 MB のスワップファイルができます。 /dev/zero のないオペレーティングシステム (HP-UX など) の場合は、 この 16 MB の swap ファイル (16 KB gzipped) をダウンロードしてください。

    SunOS では、次のようにして 16 MB のスワップファイルを作ります:
    # mkfile 16m /export/client/swap

  7. /etc/ifconfig.le0の設定 (ファイル名の le0 は、 クライアントのイーサネットカードの NetBSD でのデバイス名)。下記の行を内容に持つ、 /export/client/root/etc/ifconfig.le0 というファイルを作ります:
    inet client netmask 255.255.255.0 broadcast 192.168.1.255
    ここで 255.255.255.0 はネットワーク管理者が指定するサブネットマスク、 192.168.1.255 はネットワーク管理者が指定するブロードキャストアドレスです。

  8. /etc/fstab の設定。下記の行を内容に持つ、 /export/client/root/etc/fstab というファイルを作ります:
    #/etc/fstab
    nfsserver:/export/client/swap   none  swap  sw,nfsmntpt=/swap
    nfsserver:/export/client/root   /     nfs   rw 0 0
    nfsserver:/export/client/usr    /usr  nfs   rw 0 0
    nfsserver:/export/client/home   /home nfs   rw 0 0

  9. /etc/rc.conf の作成。エディターで /export/client/root/etc/rc.conf というファイルを開きます。 重要な設定項目 (192.168.1.1 はネットワーク管理者が指定するルーターに置き換えます):
    hostname="client"
    defaultroute="192.168.1.1"
    nfs_client=YES
    auto_ifconfig=NO
    net_interfaces=""

    rc にネットワークデバイスの再設定をさせてはいけません。 ルートファイルシステムが置かれている NFS サーバーへの接続が失われるからです。

  10. /etc/hosts にあなたのマシンを加えます。下記の行を /export/client/root/etc/hosts に追加します:
    #/etc/hosts
    192.168.1.10 client.test.net client
    192.168.1.5  nfsserver.test.net nfsserver

  11. mv /export/client/root/usr/* /export/client/usr/

容量節約のための技巧

Lazaro Daniel Salem は、 疑似的なクラスター環境 (すべてのクライアントとサーバーが設定ファイルをすべて共有する) を作るためのいくつかの提案を寄せてくれました。 これは、すべてのクライアントとサーバーが同一の NetBSD ポート (単に同じアーキテクチャー (マイクロプロセッサー) ならばよい というわけではありません) を使う場合のみ有効です。

もし興味があれば、この提案を読んでください

これでディスクレスマシンをブートできます !

  1. NetBSD/hp300 マシンでのディスクレスブートメッセージの があります。
    もし画面が真っ暗になったり固まったりしたら、 NetBSD がそのマシンの ローカルコンソールに対応しているか確かめてください。 シリアル端末を使う必要があるかもしれません。

    もしシリアル端末に何も表示されない (あるいはマシンにシリアルポートが ない) 場合、さらに、コンソールなしでの リモートアクセスの設定 を読む必要があります。

  2. クライアントマシンがブートしてシングルユーザーモードに入り、 下記のプロンプトが出ます:
    Enter pathname of shell or RETURN for sh:
    リターンキーを押します。

  3. 端末の種類を尋ねられます。
    NetBSD/hp300 マシンのローカルコンソールでは hp300h です。 シリアルコンソールではおそらく vt100 とすべきでしょう。

  4. # mount /usr

  5. /dev ファイルの作成。
    # cd /dev
    # /bin/sh MAKEDEV all

    これにはしばらく (少なくとも 2 分) かかりますので、気長に待ってください。

    注意: HP-UX 9 以前の NFS サーバーは、クライアントがデバイスファイルを 作ることを禁止しているため、これができません。 nfs サーバー上で NetBSD/hp300 用のデバイスフ ァイル (5 KB) をダウンロードして展開する必要があります:
    # cd /export/client/root
    # tar [--numeric-owner] -xpvzf dev.tar.gz

  6. うまくスワップが働いているか、確かめます:
    # swapctl -A
    swapctl: adding nfsserver:/export/client/swap as swap device at priority 0
    # swapctl -l
    Device      512-blocks     Used    Avail Capacity  Priority
    /dev/??          32768        0    32768     0%    0

  7. マルチユーザーモードへ移ります。 nfs サーバー (in /export/client/root/etc/rc.conf) か クライアント上で /etc/rc.conf を編集し、 ファイルが読まれるよう、次のように変更します:
    rc_configured=YES

  8. exit とタイプしてシングルユーザーのシェルを抜けます。

  9. root でログインし、新しい NetBSD ディスクレスワークステーションを楽しんでください !

ここで、さらに続けて、 サーバーをリブートしたときに必要なデーモンがすべて起動するか確かめて、 ディスクレスの作業を仕上げるべきです。


戻る | 進む | 目次
NetBSD ホームページ
NetBSD Documentation top level

(連絡先 - 英語, 日本語: www@jp.NetBSD.org)
$NetBSD: files.html,v 1.3 2007/08/01 15:36:01 kano Exp $
Copyright © 1998-2004 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.