Add Japanese translation of diskless-x/article.sgml.

Submitted by:	sugimura@jp.FreeBSD.org
This commit is contained in:
Jun Kuriyama 2000-03-22 06:31:45 +00:00
parent 107023b3df
commit 4294a5f1c3
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=6830

View file

@ -0,0 +1,373 @@
<!DOCTYPE article PUBLIC "-//FreeBSD//DTD DocBook V3.1-Based Extension//EN" [
<!ENTITY % man PUBLIC "-//FreeBSD//ENTITIES DocBook Manual Page Entities//EN">
%man;
]>
<!-- The FreeBSD Documentation Project -->
<!-- The FreeBSD Japanese Documentation Project -->
<!-- Original revision: 1.3 -->
<!-- $FreeBSD$ -->
<!--
訳:
一宮 亮 ryo@azusa.shinshu-u.ac.jp
杉村 貴士 sugimura@jp.FreeBSD.org
-->
<article>
<artheader>
<title>ディスク無しの X サーバ: 一つのガイド</title>
<authorgroup>
<author>
<firstname> Jerry</firstname>
<surname>Kendall</surname>
<affiliation>
<address>
<email>jerry@kcis.com</email>
</address>
</affiliation>
</author></authorgroup>
<pubdate>1996/12/28</pubdate>
<copyright>
<year>1996</year>
<holder>Jerry Kendall</holder>
</copyright>
<abstract>
<para>FreeBSD-hackers メーリングリストの友人たちの助けによって,
わたしはディスクの無い X 端末を作ることができました.
X 端末の作成には, NFS によってマウントされた最小のユーティリティを持つ
ディスク無しのシステムを作らなくてはなりませんでした.
同じ方法を使って 2 つの別々なディスク無しのシステムを作りました.
一つ目は <hostid role="fqdn">altair.kcis.com</hostid> です.
それは 340M のハードディスクが付いていますが, 交換したくありませんでした.
そのため, そのマシンは <hostid role="fqdn">antares.kcis.com</hostid>
からイーサネットを通じてブートするようになっています.
2 つ目のシステムは 486DX2-66 です.
わたしは全くローカルディスクのないディスク無しの FreeBSD を (完璧に)
セットアップしました.
その場合のサーバは SunOS 4.1.3 が動いている Sun 670MP です.
セットアップの設定は両方に同じものが必要でした.</para>
<para>わたしはこの文書に加えなくてはならない内容がまだあると思っています.
どんなことでもご意見がありましたら送ってください.</para>
</abstract>
</artheader>
<sect1>
<title>ブートフロッピーを作る (ディスク無しのシステム上で)</title>
<para>ネットワークローダは TSR などの MS-DOS が使うものがあると
うまく働かないことがあるので, 最も良い方法は専用のブートフロッピーを作るか,
もしできれば, MS-DOS のメニューを作ってシステムが起動するときに
どの設定を有効にするかを聞いてくるようにすることです.
(<filename>config.sys</filename>/<filename>autoexec.bat</filename>
ファイルによって)
次に挙げるのはわたしが使っているもので, ちゃんと動作しているものです.
わたしの MS-DOS (6.x) メニューを下に載せます.</para>
<example>
<title><filename>config.sys</filename></title>
<programlisting>[menu]
menuitem=normal, normal
menuitem=unix, unix
[normal]
....
normal config.sys stuff
...
[unix]</programlisting>
</example>
<example>
<title><filename>autoexec.bat</filename></title>
<programlisting>@ECHO OFF
goto %config%
:normal
...
normal autoexec.bat stuff
...
goto end
:unix
cd \netboot
nb8390.com
:end</programlisting>
</example>
</sect1>
<sect1>
<title>ネットワークブートのプログラムを手に入れる (サーバ上で)</title>
<para><filename>/usr/src/sys/i386/boot/netboot</filename> にある
'net-boot' プログラムをコンパイルしてください.
そのときには <filename>Makefile</filename> の先頭にあるコメントを
読んでおきましょう. 要求されるように調整してください.
オリジナルのファイルはどこかにバックアップを取っておいてください.
ビルドが終わったら, 2 つの MS-DOS の実行ファイル
<filename>nb8390.com</filename> と <filename>nb3c509.com</filename>
ができているはずです.
これらの 2 つのプログラムの 1 つはディスク無しのサーバ上で動かすのに
必要になるものです. それはブートサーバからカーネルをロードするものです.
ここでは両方のプログラムを先程作った MS-DOS のブートフロッピーに
入れておきます.</para>
</sect1>
<sect1>
<title>どのプログラムを実行するかを調べる (ディスク無しのシステム上で)</title>
<para>もしあなたのイーサネットアダプタが使っているチップセットを知っているなら,
これは簡単なことです. もしそれが NS8390 チップセットか,
NS8390 をベースとするチップセットであれば, <filename>nb8390.com</filename>
を使ってください. もし 3Com 509 をベースとするチップセットなら,
<filename>nb3C509.com</filename> ブートプログラムを使ってください.
もしあなたの持っているものがよくわからなければ, 一つ試してみて,
そこで <errorname>No adapter found</errorname> と言われたら
また他のを試してみてください. それでもだめだったら,
あなたのものはとても珍しいということです.</para>
</sect1>
<sect1>
<title>ネットワークと通じてブートする</title>
<para>config.sys/autoexec.bat ファイルも使わずにディスク無しのシステムを
立ち上げてみてください. あなたのイーサネットアダプタのための
ブートプログラムを実行してみましょう.</para>
<para>わたしのイーサネットアダプタは WD8013 16bit モードで動いているので
<filename>nb8390.com</filename> を実行します.</para>
<screen><prompt>C:&gt;</prompt> <userinput>cd \netboot</userinput>
<prompt>C:&gt</prompt> <userinput>nb8390</userinput>
<prompt>Boot from Network (Y/N) ?</prompt> <userinput>Y</userinput>
BOOTP/TFTP/NFS bootstrap loader ESC for menu
Searching for adapter..
WD8013EBT base 0x0300, memory 0x000D8000, addr 00:40:01:43:26:66
Searching for server...</screen>
<para>ここでは, わたしのディスク無しのシステムは
ブートサーバとして振る舞うようなマシンを探しにいこうとします.
上の <literal>addr</literal> 行を記録しておいてください.
あとからその数が必要になります. ディスク無しのシステムを再起動して,
あなたの <filename>config.sys</filename> や
<filename>autoexec.bat</filename> ファイルを修正して
これらの操作が自動で行われるようにしてください.
おそらくメニューの部分になるでしょう.
もし <command>nb3c509.com</command> を
<command>nb8390.com</command> の代わりに
使わなくてはいけなかったとしても, 出力は上と同じです.
もし <literal>Searching for adapter..</literal>
というメッセージが出るときに
<errorname>No adapter found</errorname> ということを言われたら,
<filename>Makefile</filename> で定義されている
コンパイル時間が正しくセットされているかどうかを確認してみてください.</para>
</sect1>
<sect1>
<title>システムがネットワーク越しにブートすることを許可する (サーバ上で)</title>
<para><filename>/etc/inetd.conf</filename> ファイルが tftp や
bootps についてのエントリを持っているかどうかを確認してください.
わたしのは次のようになっています.</para>
<programlisting>tftp dgram udp wait nobody /usr/libexec/tftpd tftpd /tftpboot
#
# Additions by who ever you are
bootps dgram udp wait root /usr/libexec/bootpd bootpd /etc/bootptab</programlisting>
<para>もし <filename>/etc/inetd.conf</filename> ファイルを変更したときには,
inetd に <literal>HUP</literal> シグナルを送ってください.
これをするには, inetd のプロセス ID を
<command>ps -ax | grep inetd | grep -v grep</command> して
取得してください. プロセス ID がわかったら,
それに向けて HUP シグナルを送ってください.
これは <command>kill -HUP &lt;pid&gt;</command> として行います.
これによって inetd はその設定ファイルを読み直します.</para>
<para>ディスク無しシステム上でブートローダが出力した <literal>addr</literal>
の出力を覚えているでしょうか? ここでそれが必要となるのです.</para>
<para><literal>/etc/bootptab</literal> (おそらくファイルを作成して) に
エントリを加えてください. それはこれと同様の書式で書きましょう.</para>
<programlisting>altair:\
:ht=ether:\
:ha=004001432666:\
:sm=255.255.255.0:\
:hn:\
:ds=199.246.76.1:\
:ip=199.246.76.2:\
:gw=199.246.76.1:\
:vm=rfc1048:</programlisting>
<para>これらの行は次のような意味です.</para>
<informaltable frame="none">
<tgroup cols="2">
<tbody>
<row>
<entry><literal>altair</literal></entry>
<entry>ドメイン名を除いたディスク無しのシステムの名前.</entry>
</row>
<row>
<entry><literal>ht=ether</literal></entry>
<entry>'イーサネット' ハードウェアタイプ.</entry>
</row>
<row>
<entry><literal>ha=004001432666</literal></entry>
<entry>(先に記録した) ハードウェアのアドレス.</entry>
</row>
<row>
<entry><literal>sm=255.255.255.0</literal></entry>
<entry>サブネットマスク.</entry>
</row>
<row>
<entry><literal>hn</literal></entry>
<entry>クライアントにクライアントのホスト名を送るよう,
サーバに伝えます.</entry>
</row>
<row>
<entry><literal>ds=199.246.76.1</literal></entry>
<entry>ドメインサーバがどれなのかをクライアントに伝えます.</entry>
</row>
<row>
<entry><literal>ip=199.246.76.2</literal></entry>
<entry>クライアントの IP アドレスが何なのかを
クライアントに伝えます.</entry>
</row>
<row>
<entry><literal>gw=199.246.76.1</literal></entry>
<entry>デフォルトゲートウェイがどれなのかを
クライアントに伝えます.</entry>
</row>
<row>
<entry><literal>vm=...</literal></entry>
<entry>これはそのままにしておいてください.</entry>
</row>
</tbody>
</tgroup>
</informaltable>
<note>
<para>IP アドレスは正しく設定してください. 上のアドレスは
わたしだけのものです.</para>
</note>
<para>'/tftpboot' ディレクトリをサーバに作成して, サーバがサービスを行う
ディスク無しのシステムのための設定ファイルをこのディレクトリに入れておきます.
これらのファイルは 'cfg.&lt;ip&gt;' という名前になっていて,
&lt;ip&gt; はディスク無しシステムの IP アドレスを表しています.
'altair' の設定ファイルは /tftpbot/cfg.199.246.76.2 となります.
この中身は次のようになっています:</para>
<programlisting>rootfs 199.246.76.1:/DiskLess/rootfs/altair
hostname altair.kcis.com</programlisting>
<para><literal>hostname altair.kcis.com</literal> の行は単に
ディスク無しのシステムがどのような完全なドメイン名を持っているのかを
表しています.</para>
<para><literal>rootfs 199.246.76.1:/DiskLess/rootfs/altair</literal> の行は
ディスク無しのシステムが NFS でマウントできるルートファイルシステムの場所を
表しています.</para>
<note>
<para>NFS でマウントされたルートファイルシステムは
<emphasis>読み出し許可だけで</emphasis> マウントされます.</para>
</note>
<para>ディスク無しのシステムの階層は要求されれば読み書き可能にして
マウントし直すことができます.</para>
<para>わたしは予備の 386DX-40 を専用の X 端末として使用しています.</para>
<para>'altair' の階層は次の通りです.</para>
<literallayout>/
/bin
/etc
/tmp
/sbin
/dev
/dev/fd
/usr
/var
/var/run</literallayout>
<para>実際のファイルのリストは次の通りです.</para>
<screen>-r-xr-xr-x 1 root wheel 779984 Dec 11 23:44 ./kernel
-r-xr-xr-x 1 root bin 299008 Dec 12 00:22 ./bin/sh
-rw-r--r-- 1 root wheel 499 Dec 15 15:54 ./etc/rc
-rw-r--r-- 1 root wheel 1411 Dec 11 23:19 ./etc/ttys
-rw-r--r-- 1 root wheel 157 Dec 15 15:42 ./etc/hosts
-rw-r--r-- 1 root bin 1569 Dec 15 15:26 ./etc/XF86Config.altair
-r-x------ 1 bin bin 151552 Jun 10 1995 ./sbin/init
-r-xr-xr-x 1 bin bin 176128 Jun 10 1995 ./sbin/ifconfig
-r-xr-xr-x 1 bin bin 110592 Jun 10 1995 ./sbin/mount_nfs
-r-xr-xr-x 1 bin bin 135168 Jun 10 1995 ./sbin/reboot
-r-xr-xr-x 1 root bin 73728 Dec 13 22:38 ./sbin/mount
-r-xr-xr-x 1 root wheel 1992 Jun 10 1995 ./dev/MAKEDEV.local
-r-xr-xr-x 1 root wheel 24419 Jun 10 1995 ./dev/MAKEDEV</screen>
<para><filename>dev</filename> ディレクトリで <command>MAKEDEV all</command>
するのを忘れずに.</para>
<para><hostid>altair</hostid> の <filename>/etc/rc</filename> は
次の通りです.</para>
<programlisting>#!/bin/sh
#
PATH=/bin:/
export PATH
#
# localhost の設定
/sbin/ifconfig lo0 127.0.0.1
#
# イーサネットカードの設定
/sbin/ifconfig ed0 199.246.76.2 netmask 0xffffff00
#
# NFS で root ファイルシステムをマウントする
/sbin/mount antares:/DiskLess/rootfs/altair /
#
# NFS で /usr ファイルシステムをマウントする
/sbin/mount antares:/DiskLess/usr /usr
#
/usr/X11R6/bin/XF86_SVGA -query antares -xf86config /etc/XF86Config.altair > /dev/null 2>&1
#
# X を終了すると再起動
/sbin/reboot
#
# うまく行かないときには....
exit 1</programlisting>
<para>コメントや質問はどんなものでも歓迎します.</para>
</sect1>
</article>
<!--
Local Variables:
mode: sgml
sgml-indent-data: t
sgml-omittag: nil
sgml-always-quote-attributes: t
End:
-->