Skip to main content.
Google custom search

NetBSD/sgimips: よくある質問

全般的な質問

他の情報源


全般的な質問

Indy のシリアルコンソールに関して知っておく価値のある事柄 (トップ)

この情報は他の機種にも適用できるかもしれないことに留意しておいてください。 マシンをシリアルコンソールでブートできるようにするため、 マシンを立ち上げるときはキーボードを外しておいてください。 シリアルコンソールは、デフォルトでは serial #1 で、 9600、 8N1 で動作します。

PROM モニターで "setenv console d" とすることでコンソールを serial #1 に、 "setenv console d2" とすることで serial #2 にすることもできます (デフォルトは "g" です) 。また、 コンソールの速度は "setenv dbaud <bps>" で設定できます。 これらの PROM 変数を設定した後は、 "init" するか、マシンを リブートします。

IRIX をコンソールからブートした場合、シリアルコンソール上でのログインが できなくなります。 /etc/inittab を編集して下記の行を追加することで、 ログインできるようになります。

st:23:respawn:/sbin/getty systty co_9600        # serial console - HF

このあと、忘れずに "init q" して inittab を再読み込みしてください。

シリアルポートのピン配置は SPARC システムのシリアルポートと同じですので、 ハードウェアハンドシェーキング線を使わない用途に限れば、 Macintosh のシリアルケーブルはシリアルコンソール用のケーブルとしてしっかり使えます。 詳細については、 NetBSD シリアルポート入門を参照してください。

IP22 その他で $eaddr をリセットする方法は ? (トップ)

ここに示すのは、少なくとも Indy と、おそらく HPC3 を持つ他のマシンでも 使える、イーサネットアドレスの設定方法です。

一切の責任を持たないので…以下省略。

PROM プロンプトで:

dump -w -x 0xbfbe04e8

この出力の妥当性チェックとして、 'ec0: bad ethernet address' エラーメッセージで示されるアドレスと一致するかどうか調べます。 もし一致していなければ、なにも上書きすべきではないでしょう。

fill -w -v 0xGG 0xbfbe04e8
fill -w -v 0xHH 0xbfbe04ec
fill -w -v 0xII 0xbfbe04f0
fill -w -v 0xJJ 0xbfbe04f4
fill -w -v 0xKK 0xbfbe04f8
fill -w -v 0xLL 0xbfbe04fc

ここで、 GG:HH:II:JJ:KK:LL が、予定しているイーサネットアドレスになるように します。マシンに附属してきたアドレスを使うのがよいでしょう。 わからなければマシンの背面を調べてください。

電源を落とし、一分間待ってから電源を入れます。これで、 $eaddr 以外の すべての変数は、 resetenv コマンドを使ったときのようにリセットされています。

PROM tftp クライアントがデフォルトの設定の NetBSD の tftpd との組み合わせでうまく動きません (トップ)

SGI マシンの PROM tftp クライアントは、デフォルトの設定の NetBSD の tftpd との組み合わせで、うまく動作しないことがあります。そのマシンの PROM が 符号ビットの立ったポート番号に対応していないせいかもしれません。 これに対する次善策は、匿名コネクション用のポート番号の上限を 32767 にすることです。次のように調整すると解決するはずです:

# sysctl -w net.inet.ip.anonportmin=20000
# sysctl -w net.inet.ip.anonportmax=32767

このほかにありそうな PROM の問題 (トップ)

PROM バージョンやインストールされた OS (SASH) バージョンによる、 いくつかの問題があります:

  1. 古いバージョンの SASH には、メモリーマップを誤って報告するという 問題があります。ブート (copyright message 以前でも) 時に、カーネルが UVM 絡みのメッセージとともに panic する場合は、 sash を介さずに PROM から直接カーネルをブートしてみてください (IRIX 6.x にアップグレード前の (5.3 が動作している) I2 にもこの問題があります) 。
  2. もうひとつの古い PROM の問題 -- 古い PROM は ELF を扱えないため、 ECOFF カーネルが必要かもしれません。これの回避策は sash (IRIX 5.x においてでも ELF を理解するようです) を使うことですが、 問題 #1 を見てください。

ブートローダーを (sgivol を使って) 更新する (トップ)

sysinst を使って NetBSD をインストールすると、ディスクの先頭部分が、 PROM がブートローダーを読み込むためなどのパーティション用として確保されます。 このパーティションは、ボリュームヘッダーと呼ばれます。 このパーティションには、最低限 3135 ブロックが必要です (/usr/include/sys/bootblock.h の SGI_BOOT_BLOCK_SIZE_VOLHDR を参照)。disklabel の例を以下に示します。 パーティション i がボリュームヘッダーとなっており、 これは SGI の流儀 (パーティション 8 を使う) と同様です。

sgimips# disklabel sd0
# /dev/rsd0c:
type: SCSI
disk: mydisk
label: fictitious
flags:
bytes/sector: 512
sectors/track: 135
tracks/cylinder: 8
sectors/cylinder: 1080
cylinders: 4078
total sectors: 4404240
rpm: 7200
interleave: 0
trackskew: 0
cylinderskew: 0
headswitch: 0           # microseconds
track-to-track seek: 0  # microseconds
drivedata: 0

16 partitions:
#        size    offset     fstype [fsize bsize cpg/sgs]
 a:   3377306      3183     4.2BSD   1024  8192 45640  # (Cyl.      2*-    3130*)
 b:   1024000   3380489       swap                     # (Cyl.   3130*-    4078+)
 c:   4404489         0    unknown                     # (Cyl.      0 -    4078+)
 i:      3183         0    unknown                     # (Cyl.      0 -       2*)

NetBSD のインストール後、sgivol ユーティリティー (/usr/mdec にあります) を使って、このパーティションを操作することができます。まだセットアップされていない場合は、 以下のようにして、初期化する必要があります (注意: sysinst は適切にセットアップをおこないます)。

sgivol -i sd0

ブートローダーを更新する (あるいは、別機種のマシンにディスクを移した場合に変更する) ためには、まず、既存のファイルを消去します。

sgivol -d boot sd0

次に、新しいブートローダーを、ボリュームヘッダーに 'boot' というファイル名でコピーします。

sgivol -w boot /usr/mdec/ip2xboot sd0

複数のブートローダーを (別々の名前にして) 置いておくこともできます。 別バージョンの NetBSD をブートする場合 (たとえば、新しい INSTALL カーネルを使って NetBSD 3 から 5.0 にアップグレードする場合) には、 非常に便利です。というのも、bootinfo の変更により、 NetBSD 4.0 以前のカーネルは新しいブートローダーとの組合せでは動作しないからです。

ボリュームヘッダーの内容は、以下のコマンドを使って見ることができます。

sgivol sd0

出力例は以下のとおりです。

disklabel shows 4404240 sectors
checksum: 00000000
root part: 0
swap part: 1
bootfile: /netbsd

Volume header files:
sgilabel offset    2 blocks, length      512 bytes (1 blocks)
ide      offset    3 blocks, length   322048 bytes (629 blocks)
sash     offset  632 blocks, length   322048 bytes (629 blocks)
boot     offset 1261 blocks, length    53296 bytes (105 blocks)

SGI partitions:
 0:a blocks  3377306 first     3183 type  4 (BSD4.2)
 1:b blocks  1024000 first  3380489 type  3 (Raw)
 8:i blocks     3199 first        0 type  0 (Volume Header)
10:k blocks  4404489 first        0 type  6 (Volume)

さらなる情報については、boot(8) および sgivol(8) マニュアルページをご覧ください。


他の情報源

NetBSD ドキュメンテーション (トップ)

サイト外のドキュメンテーション (トップ)


Back to NetBSD/sgimips Port Page