NetBSD/sparc Frequently Asked Questions
一般的な質問
mpg123 から No supported rate found!
というエラーメッセージが表示されました
もし、このエラーが表示されたら、チャンネルの数とストリームのレートを、
mpg123 の引数に指定する必要があります。古いシステム(sun4c マシンや
SPARC Classic のような)は、8 bit の 8 kHz モノサンプリングレートにしか
対応していません。これらのシステムでは、以下のように指定してください:
mpg123 -m -r 8000 filename
-m オプションは両チャンネルをモノ出力にミックスするためのものです。
-r はオーディオカードが対応しているレートを指定します。
シリアルコンソールがごみを表示します
これは大抵、コンソール用のデフォルトの端末の種類が sun
であり、また、
ほとんどのシリアル端末が vt100
(またはその眷族) であって、両者が
異なるエスケープコードを使うためです。その場での回避策は、端末の種類の変更です:
# setenv TERM vt100
永続的な解決法は、 /etc/ttys
を編集して console
行を変更することです:
console "/usr/libexec/getty suncons" vt100 on secure
変更後、 kill -HUP 1
またはリブートする必要があります。
どうすれば色や文字サイズといったコンソールオプションを変更できますか
変更するためにはカーネルの再コンパイルが必要です。黒地コンソールと白字にする
場合は、カーネルコンフィグファイルに以下を追加します:
options RASTERCONSOLE_FGCOL=WSCOL_WHITE
options RASTERCONSOLE_BGCOL=WSCOL_BLACK
フォントを小さくするには、以下を追加します:
options FONT_BOLD8x16
このほか便利なオプションは、以下のものです
options RASTERCONS_FULLSCREEN
SPARCstation Voyager の X 上のマウスの挙動が変です (ms0: input error (0xc47)
)
どうやら Voyager 附属の純正マウス (Compact1 370-1865-01 マウス。 370-1865-03
ではない) は、他の Sun マウスのどれよりも速いシリアル速度
(1200 bps に対して、 4800 bps) で動作するようです。
対応策は二つあります:
別のマウスを使う
カーネルコンフィギュレーションに options SUN_MS_BPS=4800
を追加して再コンパイルする
より詳しくは &man.ms.4; を参照してください。
スクロールバック時にフレームバッファーがごみを表示します
vi を終了した時、それからたまにスクロールバックした時に、ディスプレイは
数秒間ごみを表示しながらスクロールバックします。また、スクリーンの非テキ
スト部に、常にごみが表示されることもあります。これは、Sbus cgsix ボードの
ファームウェアのバグによるものであり、現在でも cgsix ボードがインストール
されているすべてのマシンで発生しています。
これに対応するために、いくつかの方法があります:
端末タイプを sun-cgsix
に設定してください
termcap を編集し、デフォルトの 'sun
' エントリーが
:tc=sun-il:
でなく:tc=sun-cgsix:
を使用するように
変更してください。
/etc/ttys
を編集し、
console "/usr/libexec/getty suncons" sun on secure
を
console "/usr/libexec/getty suncons" sun-cgsix on secure
に変更してください。
nell sbus-to-PCMCIA ブリッジを使う
NetBSD では、 SPARCstation Voyager のオンボードインターフェースや
nell sbus-to-PCMCIA ブリッジカードに繋がった CardBus および PCMCIA カードを
サポートしています。
機種独立の PCMCIA ドライバー
ページに挙げられたあらゆる PCMCIA デバイスが NetBSD/sparc で動作するはずです。
一部のものはテスト済みですが、多くのものはテストされていません。デフォルトの GENERIC カーネルでは nell
インターフェースは有効になっていませんので、 nell および各種 pcmcia
インターフェースのコメントを外してカーネルを再構築する必要があります。
ハードウェアに関する質問
どの CPU モジュールがマルチプロセッサーで動作可能ですか
註: 現在、5.0 および -current でのマルチプロセッサー対応は壊れています。
sparc ポートでマルチプロセッサー対応が機能するリリース版としては、
NetBSD 4.0 が最新のものとなります。
SMP 対応の NetBSD/sparc モデルは、Sun 4/600、 SPARCstation/server 10、
SPARCstation/server 20 と、これらのクローンだけです。
SuperSPARC-I、 SuperSPARC-II および hyperSPARC MBus CPU
モジュールのほとんどは、 SMP システムで利用可能です。
手短にいえば、速度と
(ゼロでない) キャッシュサイズが同じモジュール 2 個の組み合わせでは、
問題ないはずです。キャッシュサイズや速度が異なるモジュールの組み合わせは、
動作報告はありましたが、古い (つまり遅い) モジュールやキャッシュを持たない
モジュールを使った場合には問題が起きるでしょう。以下の参照先で確認してください:
Sun CPU
and Memory Tables
The Rough Guide to MBus Modules
SMP で利用するためには、 GENERIC.MP カーネル
または以下のオプションを有効にしたカーネルを使う必要があります:
options MULTIPROCESSOR # include multiprocessor support
cpu* at mainbus0 # declare additional
CPUs
別の CPU からブートするには、 PROM プロンプトで以下のコマンドを
実行します:
<#0> ok N switch-cpu
このコマンド中の N
は、どの CPU を使うかを指定するものです。
0 は 1 番目の mbus モジュール上の 1 個目の CPU、
1 は 1 番目のモジュール上の 2 個目の CPU、 2 は 2 番目のモジュール上の 1 個目の CPU、
3 は 2 番目のモジュール上の 2 個目の CPU を表します。
存在しない CPU を指定すると、システムが固まるかもしれません。
CPU コードをロードするためには、あらかじめ一度は NetBSD をブートしておく
必要があります。 Paul Kranenburg の 投稿記事をご覧ください。
どうすれば VGA モニターを Sun に接続できますか
Well, ケーブルを作るのと、アダプターを買うのと二つの方法があります。
アダプターは 30米ドル程度で見つけることができ、通常、フレームバッファー
はデフォルトの解像度で動作するでしょう。
ケーブルを作る方法は、Izumi Tsutsui の書いた
手順
を参照してください。
フレームバッファー FAQ
のフレームバッファーの情報、対応している解像度、デフォルトの解像度
を prom に設定する方法を見る事を忘れないでください。
PROM の "*** U0209 ***
" "PMAP 000d5000, Exp = 00000000, Obs = 04000000
" といったメッセージはどういう意味ですか?
sparc2 でページマップ ram が機能しない場合、 PROM はフレームバッファーを
初期化しませんが、シリアルコンソールに
*** U0209 ***
PMAP = 000d5000, Exp = 00000000, Obs = 04000000
といったメッセージを出力します。 (U0209 が U0208 となっていることもあります)
これへの対処はチップの交換しかありませんが、これには非常にデリケートな
ハンダ作業か、完全なマザーボード交換が必要になります。
hyperSPARC mbus モジュールには対応していますか?
はい。すべての Ross の hyperSPARC モジュールは動作するはずです。
どの CPU モジュールがマルチプロセッサーで動作可能ですかの項も参照してください。
Ross sparc 20 クローンのメモリー配置はどのようになっていますか?
Ben Cottrell は以下のように報告しています:
興味がある人のために書くと、Ross sparc クローンのスロットは:
一般的な方向にケースを見た時に、上から下へ 0 4 1 5 2 6 3 7 となっています。
どうすれば奇妙な型の SCSI コントローラーに普通のデバイスを接続できますか
古い sun4 マシンは、古い型の 三段の SCSI コネクターをもっています。
このピンはこのページにのっています。
PROM とブートに関する質問
PROM に落とす方法
PROM に落す三つの方法があります:
Sun キーボードを使用している場合、[L1]
+[A]
(あるいは [STOP]
+[A]
)を押下してください。
Tadpole SPARCbook キーボードを使用している場合、
[Pause]
+[A]
を押下してください。
シリアルコンソールを使用している場合、BREAK シグナルを送信してください
(端末の種類によって方法は異なります)。
PROM に落ちれば、'go
' ('ok' プロンプト)、または
'c
' (> プロンプト)で処理を続行することができます。
PROM の問題のトラブルシューティング
docs.sun.com
にあるトラブルシューティングガイドを参照してください。
また、イーサネットアドレスが FF:FF:FF:FF:FF:FF
になってしまった場合は、
NVRAM が死んでおり、ブートに問題があるかもしれません。
イーサネットアドレス、あるいは hostid がすべて 1 になります
を参照してください。
Sun 以外の CD-ROM ドライブで NetBSD/sparc CD-ROM がブートできないのですが、なぜ?
Sun の OpenBoot PROM を含む、ほとんどの UNIX ワークステーションの PROM では、
CD-ROM が 512 バイトのブロックサイズをサポートしていることを必要とします。
ほとんどの OEM Sun CD-ROM ドライブは、デフォルトで 512 バイトブロックサイズに
設定されています。ほとんどの最近のサードパーティー製ドライブは、 512 バイトと
2048 バイトのブロックサイズの両方を自動でサポートします。古いサードパーティー製
ドライブには、 2048 バイトと 512 バイトを切り替えるジャンパーがあるかもしれません。
ハードウェアベンダーで確認してください─
512 バイトセクターをサポートしないドライブはブートには使えませんが、
カーネルのロード後に通常の操作用としてなら使えます。
Sun CD-ROM
FAQ を参照してください。
sun4c ホスト上で、どうすればフレームバッファーをスピードアップできますか
greywolf@starwolf.com が作ったシェルスクリプトがあります。これは、
OBP バージョン 2 以上(IPX のような)の sun4c ホストで、フレームバッファー
への PROM アクセスのスピードを向上させます。
#! /bin/sh -
eeprom 'nvramrc=probe-all install-console
ramforth
: cache-page dup pgmap@ cacheable swap pgmap! ;
up@ cache-page
here origin do i cache-page pagesize +loop
banner'
eeprom 'use-nvramrc?=true'
exit 0
パーティションの開始、終了位置はシリンダー境界である必要が本当にあるのでしょうか
必要であるとも、いえないともいえます。PROM は、シリンダーの先頭からしか、
ブートローダーをロードすることができません。つまり、ブート可能なパーティ
ションはシリンダー境界で始まる必要があります。ディスクラベルのシリンダー
サイズはディスクの本当の物理的なシリンダーサイズとまったく関係ありません。
シリンダーサイズを 1 に設定することはできません(つまり、シリンダー数=
セクター数)。これは、シリンダー数は16 ビットの整数として保存されるからです。
(あなたのディスクはたったの 32MB になってしまいます)
パーティションは、シリンダー境界で終了する必要はありません。そして、これに
よる副作用はまったくありません。
ブートを中断した時に、PROM がパスワードをたずねます
パスワードを消去するために、マシンに物理的にアクセスする必要があります。
電源をおとし、再度電源をいれます。そして、PROM のプロンプトが表示される
前に、[L1]
+[N]
(または [STOP]
+[N]
)
を押下します。これにより、PROM は工場出荷時の状態にもどります。
また別の方法として(驚かせるわけではありませんが)、電源をおとし、再度、
電源をいれ、prom に落とします。パスワードプロンプトが表示されるのを待って、
細心の注意をしながら PROM チップを取り除いてください。リターンを押下し、
PROM を注意深く交換してから、新しいパスワードを入力してください。
カーネルメッセージ cache chip bug; trap page uncached
はどういう意味ですか?
もし、このカーネルのメッセージが表示されても、まったく問題はありません。
「buserr-type」が 1 のマシンは、キャッシュチップにバグがあります。
cache chip bug; trap page uncached
というメッセージは、
このバグに対応するためにカーネルの応急措置がおこなわれたという事です。
この応急措置をおこなわなければ、キャッシュは間違ったデータを送りだ
します。この結果、しばしば不正なインストラクションが発生し、トラップ
につぐトラップにより、リセットがかかります。この状況は、ROM によって
のみ捕捉可能ですが、捕捉時に何かをしようとしても遅すぎます。もし、たま
たまこのメッセージを目にしたとしても、これは問題は発生しないであろうと
いう事を意味しているにすぎません。
RDI PowerLite 85 および 100 をフロッピーディスクからブートする方法は?
PowerLite 85 (および 100) の OpenBoot PROM は、フロッピードライバーにバグがあるようです。
Cliff Wright はこれを修正する nvramrc パッチを作りました:
: trk0_delay
50 ms 4
;
['] trk0_delay false ['] 4 false ffd34e90 (patch)
4 true ['] 2 false ffd34f28 (patch)
より詳しくは、彼の
投稿
を参照してください。
シリアルポートに関する質問
シリアルコンソールを unplug するとマシンがいつも再起動します
連続するゼロのストリームは prom に入力される「BREAK」コマンドと同じです。
ケーブルを抜くとシリアルラインが空くので、このような現象が発生します。
pullup 抵抗を使用するスイッチボックスを作れば、この問題を避けることができ
ます。
4.7 KOhm の抵抗を ピン 3 と 25 の間に挿入してください。
MiniDin8 コネクターを持っているマシンで Macintosh シリアルケーブルを使うことはできますか?
はい、そしていいえです。もちろん、このケーブルを使うことはできます。しかし、
いくつかのハードウェアハンドシェーキングラインには対応していないので、
ハードウェアハンドシェーキングをおこなう事ができません。
詳しくは、 NetBSD
シリアルポート入門を見てください。
SPARCstation 20 と SPARC classic 上のシリアルポートの分割
SPARCstation 20 や SPARC Classic のようないくつかの sparc マシンは、
シリアルポートを二つもっていますが、ひとつの DB-25 コネクターを使用
します。シリアルポート A は、標準のピン配置を使うように結線されてい
ます。したがって、「普通の」(シリアルポート用のものであれば何であれ)
シリアルケーブルを使うことができます。シリアルポートB を使うためには、
アダプターケーブルが必要です。Dan McMahill が Sun P/N 530-1677-01
ケーブルのピン配置を描いています。
ケーブル図 (ascii 4k)
ケーブル図 (jpeg 76k)
ケーブル図 (postscript 18k)
組み込みのシリアルポートを 38400 bps 以上の速度で使用できますか?
簡単にいえばできません。
もう少し詳しく説明すると、非標準の速度(76800 bps や 51200 bps のような)
で使用することも可能です。der Mouse は、シリアルチップを
より速いモードで動かすためにパッチをあてています。しかし、これには
全く信頼性がありません(エラーが頻発するということです)。
いくつかのsparc64 マシンは、これ以上の速度で
シリアルポートを使うことができます。しかし、これらのマシンは異なるシリアル
チップセットを使用しているのです。
イーサネットに関する質問
すべてのイーサネットインターフェースが同じハードウェアアドレスを持っています
はい、これは正しい状態です。
一般的には、マシンは、接続された 全てのイーサネットインターフェース
に対してひとつのイーサネットハードウェアアドレス (いわゆる MAC)しか持って
いません。これは、MAC アドレスがイーサネットインターフェースでなく、
マザーボード上の NVRAM に保存されるからです。
これは、一つ以上のイーサネットインターフェースを持つ sparc box の場合、
二つのインターフェースが同じサブネット上に存在することはできない事を
意味しています。現実的には、これはほとんど問題になりません。例えば:
smaug% ifconfig -a
le0: flags=8822<BROADCAST,NOTRAILERS,SIMPLEX,MULTICAST> mtu 1500
address: 08:00:20:20:e2:54
media: Ethernet autoselect
be0: flags=8863<UP,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST> mtu 1500
address: 08:00:20:20:e2:54
media: Ethernet autoselect (10baseT half-duplex)
イーサネットアドレス、あるいは hostid がすべて 1 になります
すべてが 1 のイーサネットアドレス(ff:ff:ff:ff:ff:ff のように)や hostid
でマシンがブートしたら、ほとんどの場合 NVRAM の寿命がつきています。
これは特に sun4c クラスのマシンでよくおこります。これらのシステムで使用
されている NVRAM は比較的寿命が短く、そろそろ寿命がつきつつあるからです。
交換の方法とチップの再初期化、新しい NVRAM チップを入手することができない
場合の一時的な回避方法については、
Sun NVRAM/Hostid FAQ を、御覧下さい。
この IDPROM/NVRAM
Battery Replacement Page も有用でしょう。
システムのオリジナルの hostid とイーサネットアドレスが不明の場合、
nvram チップのバーコードをもとに判別できるかもしれません。
より詳しくは、この
投稿
と、この
投稿
を参照してください。
ブート時に接続されていないと Tadpole 3GX トランシーバーが動きません
物理的に 10Base-T ポートが存在しないので、インターフェースは自動的に
10BaseT と判断されるはずです。
「ifconfig le0
」で出力されるメディアタイプを確認してください。
外部トランシーバーを使用するためには、10Base5
でなければなりません。
もし、そうでなれば、「ifconfig le0 media 10base5
」コマンド
を実行してください。
JavaStation に関する質問
どの JavaStation がサポートされていますか?
あなたが持っている JavaStation が何であるか、また、どのハードウェアがサポートされているかについては、
JavaStation Status ページをお読みください。
ハードウェア情報
Linux on the Sun JavaStation NC HOWTO には、すばらしい情報がたくさん
含まれています。
セクション 2 は、彼らが手にいれたさまざまなモデルとその中身について
記述しています。
セクション 3 には、netboot 環境に関する情報が記述されています。
(初心者向け([訳注: for puppies])の netboot の設定方法に関してはNetBSD Diskless HOW-TO
も御覧下さい)。そして、
セクション 10 には、JavaStation のジャンパーの設定の一覧があります。
Fox とは何だったのですか?
Fox はレンガサイズの SS4 というのが最もふさわしい表現でしょう。特徴としては:
SBus と AFX スロットは一つずつしか存在せず、並んでいます。したがって、どちらか一つしか使用できません
Crystal Semiconductor 4231 オーディオ (audiocs)
stp4020 (PCMCIA) (nell)
通常、オンボードのシリアル a/b、SCSI、10BaseT
これは、Java car の初期バージョンに使用されましたが、後にもっと速いマシン
が使われるようになりました。
SunOS と Solaris エミュレーションに関する質問
NetBSD は Solaris のファイルシステムをサポートしていますか?
種類によります。 Solaris 5 以降でアクセス制御リスト (ACL) 付のファイルシステム
を作った場合、 NetBSD の &man.fsck.8; はスーパーブロックを Solaris
では使えないようにします (つまり、そのファイルシステムはもう Solaris でマウントできません) 。
Solaris のファイルシステムはリードオンリーでマウントするか、
ACL なしで作るべきです。このトピックに関する Christos Zoulas の
投稿
を参照してください。
SunOS/Solaris エミュレーションの設定方法
注意: Sun のマーケティングや Solaris の紛らわしい uname
出力にかかわらず、 SunOS と Solaris は同じ OS ではないことに留意してください!
SunOS 4.x (Solaris 1.x) は BSD、 Solaris 2.x は SysV です。 SunOS の uname は
`SunOS 4.x' を、 Solaris の uname は `SunOS 5.x' を返します。
Solaris エミュレーションを設定するためには、カーネルを COMPAT_SVR4
オプション付きでコンパイルすることと、 Solaris システムから適切なファイルをコピーすることが必要です。
より詳しくは、 &man.compat.svr4.8; を参照してください。
SunOS エミュレーションを設定するためには、カーネルを COMPAT_SUNOS
オプション付きでコンパイルすることと、いくつかの SunOS のライブラリーが必要です。
それのライブラリーは、Sun のサポートサイトにあります。以下のライブラリーが必要になるでしょう:
http://sunsolve.sun.com/pub-cgi/pdownload.pl?target=102545-13&method=f
- このアーカイブは 102545-13/lib/libc.so19
と
102545-13/5lib/libc.so29
を含んでいます。これらを、それぞれ
/emul/sunos/usr/lib/libc.so.1.9
と
/emul/sunos/usr/5lib/libc.so.2.9
という名前に変更してください。
http://sunsolve.sun.com/pub-cgi/pdownload.pl?target=100257-06&method=f
- このアーカイブは 100257-06/4.1.3c/sun4/ld.so
を含んでいます。
これを/emul/sunos/usr/lib/ld.so
という名前に変更してください。
最後に、SunOS マシンからlibdl.so.1.0
を入手する必要があります。
それから、このファイルを/emul/sunos/usr/lib
に置いてください。
Solaris の libdl.so.1.0
は、SunOS エミュレーションでは動作しないの
で注意してください。
より詳しくは、 &man.compat.sunos.8; を参照してください。
その他の情報
Sun System Handbook
Sun System Handbook - Sun のオンラインシステムドキュメント
Memory Modules
Memory Modules - メモリーモジュールの互換性
(有効な Sun Service Plan にもとづく SunSolve へのログインが必要;
これのかわりの、自由に見られるが非公式なリンク)
SunHELP
SunHELP - sun 関連の膨大な情報
Sun ハードウェアリファレンス FAQ
Sun
ハードウェアリファレンス FAQ - 数年にわたる Sun のハードウェアの概要
OpenBoot Collection
OpenBoot Collection
PROM コマンドと変数のリファレンス
Sun NVRAM/Hostid FAQ
Sun
NVRAM/Hostid FAQ - あなたのマシンの PROM のバッテリーがきれた時に
Sun シリアルポートとケーブルのピン配置
Sun シリアルポートとケーブルのピン配置 - ほとんどのモデルのシリアル
ポートのピン配置の一覧
フレームバッファー FAQ
David Tong による フレームバッファー
FAQ
The SunShack Data Archive
Craig Dewick が集めているThe SunShack Data
Archive (BootROM アップグレードと
Sun Field Engineer Handbook を含む)
Technical SPARC CPU resources
MBus モジュールの組合せに関する情報
NetBSD.org にある他の情報源
NetBSD &release.latest; インストールノート
NetBSD &release.latest; インストールノート - 対応ハードウェアとインストール方法。
port-sparc メーリングリスト
port-sparc メーリングリスト
- もし、何か質問があれば、ぜひ参加してください。
Diskless
NetBSD HOW-TO.
NetBSD Serial
Port Primer
一般的な NetBSD ドキュメンテーション
一般的な NetBSD ドキュメンテーション
- NetBSD/sparc 固有でない質問。