<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook V4.1//EN">

<book id="Remote-Serial-Console-HOWTO" lang="en">
 <bookinfo>

  <title>Remote Serial Console HOWTO</title>

  <!--
  <pubdate>v2.4 2002-10-03</pubdate>
  -->
  <pubdate>v2.4 2002年 10月 13日</pubdate>

  <authorgroup>
   <author>
    <firstname>Glen</firstname>
    <surname>Turner</surname>
    <affiliation>
     <orgname>Australian Academic and Research Network</orgname>
     <address><email>glen.turner+howto@aarnet.edu.au</email></address>
    </affiliation>
   </author>

   <author>
    <firstname>Mark</firstname>
    <othername>F.</othername>
    <surname>Komarinski</surname>
    <affiliation>
     <address><email>mkomarinskiATwayga.org</email></address>
    </affiliation>
   </author>
  </authorgroup>

  <authorgroup>
    <!-- Added for Japanese version -->
    <othercredit lang="ja">
      <firstname>日本語訳：芳賀靖史</firstname>
      <surname></surname>
      <affiliation>
      <address>yasufumi.haga@nifty.com</address>
      </affiliation>
    </othercredit>
  </authorgroup>

  <revhistory>
   <revision>
   <!--
    <revnumber>2.4</revnumber> <date>2002-10-03</date>
    -->
    <revnumber>2.4</revnumber> <date>2002年10月3日</date>
<!--
    <revremark>Kernel flow control bug, more cabling, Debian,
    Livingston Portmaster, typos (especially those found during
    translation to Japanese).</revremark>
-->
    <revremark>カーネルフロー制御のバグ情報とケーブリング、
    Debian および Livingston Portmaster の追加、誤字修正（特に
    日本語への翻訳の際見つかったもの）
    </revremark>
   </revision>
   <revision>
   <!--
    <revnumber>2.3</revnumber> <date>2002-07-11</date>
    -->
    <revnumber>2.3</revnumber> <date>2002年7月11日</date>
    <!--
    <revremark>Updates for Red Hat Linux 7.3, corrections to serial
    port speeds and UARTs, ioctlsave.</revremark>
    -->
    <revremark>
    Red Hat Linux 7.3 用にアップグレード。
    シリアルポート速度とUART、ioctlsave の修正。
    </revremark>
   </revision>
   <revision>
    <revnumber>2.2</revnumber>
    <!--
    <date>2002-05-22</date>
    -->
    <date>2002年5月22日</date>
    <!--
    <revremark>Minor changes</revremark>
    -->
    <revremark>マイナーチェンジ</revremark>
   </revision>
   <revision>
    <revnumber>2.1</revnumber>
    <!--
    <date>2002-05-16</date>
    -->
    <date>2002年5月16日</date>
    <authorinitials>gdt</authorinitials>
    <!--
    <revremark>Corrections to kernel console syntax. Addition of USB
    and devfs.</revremark>
    -->
    <revremark>
    カーネルのコンソール構文を訂正。USB と devfsを追加
    </revremark>
   </revision>
   <revision>
    <revnumber>2.0</revnumber>
    <!--
    <date>2002-02-02</date>
    -->
    <date>2002年2月2日</date>
    <authorinitials>gdt</authorinitials>
    <!--
    <revremark>Second edition.</revremark>
    -->
    <revremark>第二版</revremark>
   </revision>
   <revision>
    <revnumber>&le;1.0</revnumber>
    <!--
    <date>2001-03-20</date>
    -->
    <date>2001年3月20日</date>
    <authorinitials>mfk</authorinitials>
    <!--
    <revremark>First edition.</revremark>
    -->
    <revremark>初版</revremark>
   </revision>
  </revhistory>



  <abstract>
  <!--
   <para>An <acronym>RS-232</acronym> serial console allows
   <systemitem class="osname">Linux</systemitem> to be controlled from
   a terminal or modem attached to an asynchronous serial port.  The
   monitor, mouse and keyboard are no longer required for system
   administration.  Serial consoles are useful where <systemitem
   class="osname">Linux</systemitem> systems are deployed at remote
   sites or are deployed in high-density racks.</para>
   -->
   <para>
   <acronym>RS-232</acronym> のシリアルコンソールを使えば、
   非同期シリアルポートに接続した端末やモデムから
   <systemitem class="osname">Linux</systemitem>
   を制御できるようになります。
   そうなれば、もう管理対象マシンのモニターやマウス、
   キーボードを使わなくてもシステムを管理できます。
   シリアルコンソールが役に立つのは、
   <systemitem class="osname">Linux</systemitem>
   システムを遠隔地のサイトや、
   あるいは高密度のラックに配備しているところなのです。
   </para>

   <!--
   <para>This <citetitle>HOWTO</citetitle> describes how to configure
   <systemitem class="osname">Linux</systemitem> to attach a serial
   console.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> では、
   シリアルコンソールを接続するのに必要な、
   <systemitem class="osname">Linux</systemitem>
   の設定方法を説明します。
   </para>
  </abstract>

  <keywordset>
<!--
   <keyword>serial console</keyword>
   <keyword>console</keyword>
   <keyword>serial</keyword>
   <keyword>modem</keyword>
   <keyword>RS-232</keyword>
-->
   <keyword>シリアルコンソール</keyword>
   <keyword>コンソール</keyword>
   <keyword>シリアル</keyword>
   <keyword>モデム</keyword>
   <keyword>RS-232</keyword>
  </keywordset>

 </bookinfo>



 <dedication id="dedication">
 <!--
  <title>Dedication</title>
  -->
  <title>献辞</title>

<!--
  <para>Glen Turner would like to thank his family for allowing him to
  work on this project for the surprisingly large number of evenings
  which it took to write this <citetitle>HOWTO</citetitle>.  Thank you
  Karen, Kayla and Ella.</para>
-->
  <para>
    私 Glen Turnerは、自分の家族に謝意を表したいと思います。
    この <citetitle>HOWTO</citetitle>
    を書くために非常に長い間、幾晩も幾晩も、
    このプロジェクトに注力できたのは、家族のおかげです。
    Karen, Kayla そして Ella、ありがとう。
  </para>

 </dedication> <!-- dedication -->


 <chapter id="intro">
 <!--
  <title>Introduction</title>
  -->
  <title>はじめに</title>

  <epigraph id="intro-skb">
  <!--
   <para><wordasword>console</wordasword> <abbrev>n.</abbrev> [From
   latin <foreignphrase>consolatio(n)</foreignphrase> &ldquo;comfort,
   spiritual solace.&rdquo;] A device for displaying or printing
   condolances or obituaries for the operator.</para>
   -->
   <para>
   <wordasword>console（コンソール）</wordasword> <abbrev>名詞</abbrev> 
   [ラテン語の <foreignphrase>consolatio(n)</foreignphrase> より。
   &ldquo;安楽、精神的慰めの意。&rdquo;]  オペレータに弔辞や死亡記事を
   表示したり印刷したりするための装置。
   </para>

   <!--
   <para>Stan Kelly-Bootle, <citetitle>The Computer
   Contradictionary</citetitle>.</para>
   -->
   <para>Stan Kelly-Bootle, <citetitle>The Computer
   Contradictionary</citetitle>
   <footnote>
   <para>
   訳注：contradictionary = contradiction（矛盾、否定）と 
   dictionary（辞書）を掛けた洒落。反語辞書くらいの意。
   </para></footnote>.
   </para>
  </epigraph> <!-- intro-skb -->


  <section id="intro-what">
  <!--
   <title>What is a console?</title>
   -->
   <title>コンソールとは何か？</title>

   <!--
   <para>The console is the text output device for system
   administration messages.  These messages come from the kernel, from
   the <application>init</application> system and from the system
   logger.</para>
   -->
   <para>
   コンソールとは、システム管理メッセージ用のテキスト出力装置のことです。
   こういったメッセージは、カーネルからも出てくるし、
   <application>init</application> システムからも出ます。
   それにシステムログ採取プログラムからも出てきます。
   </para>

   <!--
   <para>On modern small computers the console is usually the
   computer's attached monitor and keyboard.</para>
   -->
   <para>
   最近の小型コンピュータでは、
   コンソールは通常、
   そのコンピュータに付属しているモニターとキーボードになっています。
   </para>

   <!--
   <para>On many older computers the console is an
   <acronym>RS-232</acronym> link to a terminal such as a
   <acronym>DEC</acronym>
   <productname><acronym>VT100</acronym></productname>.  This terminal
   is in a locked room and is continually observed by the
   minicomputer's operators.  Large systems from Sun, Hewlett-Packard
   and <acronym>IBM</acronym> still use serial consoles.</para>
   -->
   <para>
   一方、昔からずっと使っているコンピュータのコンソールは、
   <acronym>DEC</acronym> <productname>VT100</productname>
   のような端末を、
   <acronym>RS-232</acronym> で接続したものになっています。
   この端末は施錠された部屋の中にあり、
   ミニコンピュータのオペレータが頻繁に監視しています。
   Sun や Hewlett-Packard、
   <acronym>IBM</acronym> の大規模システムでは、
   今でもシリアルコンソールを使っています。
   </para>

   <!--
   <para>It is usually possible to login from the console.  A login
   session from the console is treated by many parts of the operating
   system as being more trustworthy than a login session from other
   sources.  Logging in as the <systemitem
   class="username">root</systemitem> super-user from the console is
   the Command Line of Last Resort when faced with a misbehaving
   system.</para>
   -->
   <para>
   コンソールは、通常ログイン可能になっています。
   そして一番信頼できるログインセッションは、
   他でもないコンソールからのログインセッションだと、
   オペレーティングシステムの多くの部分は考えます。
   ですから、コンソールからスーパーユーザーである
   <systemitem class="username">root</systemitem>
   でログインするというのは、
   システムの動作異常に直面した場合の最後の砦となる、
   切札のコマンドラインなのです。
   </para>

  </section> <!-- intro-what -->


  <section id="intro-why">
  <!--
   <title>Why use a serial console?</title>
   -->
   <title>シリアルコンソールを使う理由</title>

   <!--
   <para>For the average user a serial console has no advantage over a
   a console offered by a directly attached keyboard and screen.
   Serial consoles are much slower, taking up to a second to fill a 80
   column by 24 line screen.  Serial consoles generally only support
   non-proportional <acronym>ASCII</acronym> text, with limited
   support for languages other than English.  A new terminal can be
   more expensive than an old <acronym>PC</acronym>.</para>
   -->
   <para>
   普通のユーザーには、シリアルコンソールよりも、
   直接つながっているキーボードと画面をコンソールにしている方が、
   メリットは大きいものです。
   シリアルコンソールはもっと低速で、
   80桁24行の画面を埋めるのにかかる時間は 1 秒にもなります。
   それに普通は、
   非プロポーショナルフォントの <acronym>ASCII</acronym>
   テキストしかサポートしませんし、
   英語以外の言語サポートも限られています。
   価格にしても、中古の <acronym>PC</acronym>
   より新品の端末の方が高額になることがあります。
   </para>

   <!--
   <para>There are some scenarios where serial consoles are
   useful. These are:</para>
   -->
   <para>
   それでもシリアルコンソールが役に立つ場面がいくつかあります。
   それは、
   </para>

   <variablelist>
    <varlistentry>
    <!--
     <term>Systems administration of remote computers</term>
     -->
     <term>
     遠隔地にあるコンピュータのシステム管理をする
     </term>
     <listitem>
     <!--
      <para><systemitem class="osname">Linux</systemitem> is a good
      operating system for deployment at unstaffed sites.  <systemitem
      class="osname">Linux</systemitem> is also good for hosting
      critical network infrastructure such as <acronym>DNS</acronym>
      and <acronym>DHCP</acronym> services.  These services are
      generally installed at every site of an organisation including
      sites which may be too small or too remote to have information
      technology staff.</para>
      -->
      <para>
      <systemitem class="osname">Linux</systemitem>
      は無人サイトに配置するのに適したオペレーティングシステムです。
      それに 
      <acronym>DNS</acronym> サービスや
      <acronym>DHCP</acronym> サービスといった、
      ネットワークインフラの核になるサービスのホスティングにも適しています。
      このようなサービスは、一般に組織のどの部門でも設置します。
      中には、規模が小さ過ぎたり遠距離すぎて、
      情報技術スタッフを配置できないところもあるでしょう。
      </para>

      <!--
      <para>System administration of these remote computers is usually
      done using <application><acronym>SSH</acronym></application>, but
      there are times when access to the console is the only way to
      diagnose and correct software failures.  Major upgrades to the
      installed distribution may also require console access.</para>
      -->
      <para>
      そういった遠隔地にあるコンピュータのシステム管理には、
      普通は <application><acronym>SSH</acronym></application> を使います。
      しかし、ソフトウェア障害を診断して修正するには、
      コンソールにアクセスするしか手が無い時があります。
      インストール済みのディストリビューションに対して、
      危険を伴う重要なアップグレードを行なう時も、
      コンソールにアクセスする必要があるかもしれません。
      </para>

      <!--
      <para>In these cases the serial console is attached to a modem.
      Access to the console is gained from a remote computer by
      dialing into the modem.  This allows the console to be reached
      from any telephone socket.</para>
      -->
      <para>
      こういう場合は、シリアルコンソールをモデムにつなぎます。
      そしてそのモデムに電話すれば、
      遠隔地のコンピュータからコンソールへアクセスできるようになります。
      こうすれば、どのような電話からでも、
      コンソールに到達できるようになります。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>High density racks of computers</term>
     -->
     <term>
     コンピュータを高密度ラックにマウントする
     </term>
     <listitem>
     <!--
      <para>Clusters of personal computers can outperform mainframe
      computers and form competitive supercomputers for some
      applications.  See the <ulink
      url="http://www.tldp.org/HOWTO/Cluster-HOWTO.html"><citetitle>Cluster-HOWTO</citetitle></ulink>
      for more information on clustering.</para>
      -->
      <para>
      パーソナルコンピュータをクラスターにすると、
      メインフレームコンピュータよりも優れた性能が発揮できます。
      それに、アプリケーションによっては、
      他に負けないようなスーパーコンピュータも作れます。
      クラスタリングの詳細は、
      <ulink url="http://www.tldp.org/HOWTO/Cluster-HOWTO.html">
      <citetitle>Cluster-HOWTO</citetitle></ulink> 
      を参照して下さい。
      </para>

      <!--
      <para>These clusters are typically assembled into 19 inch
      telecommunications equipment racks and the system unit of each
      computer is typically one rack unit (or 1.75 inches) tall.  It
      is not desirable to put a keyboard and monitor on each computer,
      as a small cathode ray tube monitor would consume the space used
      by sixteen rack units.</para>
      -->
      <para>
      こういったクラスターは、
      一般に 19 インチの通信装置用ラックに組まれており、
      各コンピュータのシステムユニットの厚さは、通常
      1 ラック単位（つまり 1.75 インチ）（訳注： 1U）になっています。
      ですから、
      キーボードとモニターはラックに置かない方がいいです。
      小さなブラウン管のモニターでも、16 ラック単位
      （訳注： 16U）分のスペースは使い切ってしまうでしょうからね。
      </para>

      <!--
      <para>A first glance it seems that a monitor and keyboard switch
      is the best solution.  However the <acronym>VGA</acronym> signal
      to the monitor is small, so even with the switch the monitor
      cannot be placed very far away from the rack of
      computers.</para>
      -->
      <para>
      この場合、一見、
      モニターとキーボードの切替器をつけるのが最良の解決法のように思えます。
      しかしモニターへ出力する <acronym>VGA</acronym> 信号は微弱です。
      ですから、スイッチをつけたとしても、
      モニターをコンピュータのラックからあまり離して置くことはできません。
      </para>

      <!--
      <para>It is desirable to allow the consoles to be monitored in
      the operators' room of the computer center, rather than in the
      very expensive space of the machine room.  Although monitor
      switches with remote control and fiber optical extensions are
      available, this solution can be expensive.</para>
      -->
      <para>
      それよりも、マシンルームのような非常に費用のかかる場所に置かず、
      むしろコンピュータセンターのオペレータルームで、
      コンソールが監視できるようにしたいですね。
      遠隔制御ができて、
      光ファイバーで延長できるモニタースイッチも使えますが、
      この方法は費用が高額になることがあります。
      </para>

      <!--
      <para>A standard <acronym>RS-232</acronym> cable can be 15
      meters in length.  Longer distances are easily possible. The
      cabling is cheap.  Terminal servers can be used to allow one
      terminal to access up to 90 serial consoles.</para>
      -->
      <para>
      一方、<acronym>RS-232</acronym> だと、標準的なケーブルでも、
      長さが15メートルのものがありますし、
      もっと長くするのも簡単です。
      それにケーブルの引き回しも安く済みます。
      ターミナルサーバーを使えば、
      端末 1 台で最大 90 台のシリアルコンソールにアクセスできるようになります。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Recording console messages</term>
     -->
     <term>
     コンソールメッセージを記録する
     </term>
     <listitem>
     <!--
      <para>This is useful in two very different cases.</para>
      -->
      <para>
      これは二種類のまったく異なる状況で役に立ちます。
      </para>

      <!--
      <para>Kernel programmers are often faced with a kernel error
      message that is displayed a split second before the computer
      reboots.  A serial console can be used to record that
      message. Another <systemitem class="osname">Linux</systemitem>
      machine can be used as the serial terminal.</para>
      -->
      <para>
      カーネルのエラーメッセージは、
      表示されてもその後瞬時にコンピュータがリブートしてしまうので、
      そのエラー内容は分かりません。
      カーネルのプログラマはこういったことによく直面します。
      このメッセージを記録しておくのに、シリアルコンソールが使えます。
      他の <systemitem class="osname">Linux</systemitem>
      マシンをシリアル端末にしてもかまいません。
      </para>

      <!--
      <para>Some secure installations require all security events to
      be unalterably logged.  One way to meet this requirement is to
      print all console messages.  Connecting the serial console to a
      serial printer can achieve this.<footnote>
      -->
      <para>
      安全性を考慮して設置したマシンの中には、
      セキュリティに関わるイベントをすべて、
      手を加えずそのままログに記録する必要があるものがあります。
      コンソールメッセージをすべて印刷するというのが、
      この要件を満たす一つの方法です。
      シリアルコンソールをシリアルプリンターに接続すれば、
      この条件は達成できます。
      <footnote>

      <!--
        <para>The <systemitem class="osname">Linux</systemitem>
        <productnumber>2.4</productnumber> kernel also supports the
        output of console messages to
        <productname>Centronics</productname> or
        <citetitle><acronym>IEEE</acronym> 1284-2000</citetitle>
        parallel printer interfaces.</para></footnote></para>
	-->
	<para>
	<systemitem class="osname">Linux</systemitem> のバージョン 
        <productnumber>2.4</productnumber> カーネルも、コンソール
	メッセージを <productname>Centronics</productname> または
        <citetitle><acronym>IEEE</acronym> 1284-2000</citetitle> の、
	パラレルプリンタインタフェースに出力する機能をサポートしています。
	</para>
	</footnote>
	</para>

     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Embedded software development</term>
     -->
     <term>
     組み込みソフトウェアを開発する
     </term>
     <listitem>
     <!--
      <para><systemitem class="osname">Linux</systemitem> is
      increasingly being used as an operating system for embedded
      applications.  These computers do not have keyboards or
      screens.</para>
      -->
      <para>
      <systemitem class="osname">Linux</systemitem> は、
      組み込みアプリケーションのオペレーティングシステムとして、
      ますます使われるようになっています。
      このようなコンピュータにはキーボードも画面もありません。
      </para>

      <!--
      <para>A serial port is a cheap way to allow software developers
      to directly access the embedded computer.  This is invaluable
      for debugging.  Most chip sets designed for embedded computers
      have a serial port precisely for this purpose.</para>
      -->
      <para>
      この組み込みコンピュータに、
      ソフトウェア開発者が直接アクセスできるようする簡単な方法が、
      シリアルポートを使うことです。
      これはデバッグにはまことに貴重なものです。
      組み込みコンピュータ用に設計されているチップセットのほとんどに
      シリアルポートがあるのは、まさにこのためなのです。
      </para>

      <!--
      <para>The shipping product need not present the
      <acronym>RS-232</acronym> port on an external connector.
      Alternatively the <acronym>RS-232</acronym> port is often used for
      downloading software updates.</para>
      -->
      <para>
      この <acronym>RS-232</acronym> ポートは、
      出荷する製品では、外部コネクタに出す必要はありませんが、
      出しておいて、
      アップデートするソフトウェアをダウンロードするのにもよく使います。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Craft terminal for telecommunications equipment</term>
     -->
     <term>
     通信装置用保守端末にする
     </term>
     <listitem>
     <!--
      <para><systemitem class="osname">Linux</systemitem> is
      increasingly being used as the operating system inside
      telecommunications equipment.  The <ulink
      url="http://www.osdlab.org/projects/cgl/">Carrier Grade
      Linux</ulink> consortia hopes to accelerate and coordinate this
      trend.</para>
      -->
      <para>
      <systemitem class="osname">Linux</systemitem>
      は通信装置内のオペレーティングシステムとして、
      ますます使われるようになっています。
      <ulink url="http://www.osdlab.org/projects/cgl/">Carrier Grade 
      Linux</ulink> コンソーシアムでは、この流れを加速し一元化したいと
      思っています。
      </para>

      <!--
      <para>Most telecommunications equipment is remotely managed from
      a distant computer.  However, site technicans (called
      <wordasword>craft personnel</wordasword> in telco-speak) need to
      access the equipment to test installation changes, check the
      status of reported faults, and so on.  The terminal used by the
      craft personnel is called the <wordasword>craft
      terminal</wordasword>.  The craft terminal plugs into the
      <wordasword>craft interface</wordasword> on the equipment.  The
      serial console makes an ideal craft interface.</para>
      -->
      <para>
      ほとんどの通信装置は、
      離れた場所にあるコンピュータが遠隔管理しています。
      でもサイトの技術者たち
      （通信業界用語では <wordasword>保守要員</wordasword> といいます）は、
      この装置にアクセスして、設置の変更状況を調べたり、
      報告された障害を調べたりする必要があります。
      この保守要員が使う端末のことを 
      <wordasword>保守端末</wordasword> といいます。
      保守端末は通信装置の
      <wordasword>保守インタフェース</wordasword>
      プラグに差し込んであります。
      シリアルコンソールは理想的な保守インタフェースになるのです。
      </para>
     </listitem>
    </varlistentry>
   </variablelist>

   <!--
   <para>Unlike minicomputer systems, the
   <productname><acronym>IBM</acronym>
   <acronym>PC</acronym></productname> was not designed to use a
   serial console.  This has two consequences.</para>
   -->
   <para>
   ミニコンピュータシステムとは違い、
   <productname><acronym>IBM</acronym> <acronym>PC</acronym></productname> は
   シリアルコンソールを使うような設計にはなっていませんでした。
   しかし、これでは不都合なことが二つ出てきます。
   </para>

   <!--
   <para>Firstly, Power On Self-Test messages and Basic Input/Output
   System (<acronym>BIOS</acronym>) messages are sent to the screen
   and received from the keyboard.  This makes it difficult to use the
   serial port to reconfigure the <acronym>BIOS</acronym> and
   impossible to see Power On Self-Test errors.</para>
   -->
   <para>
   第一に、電源投入時のセルフテストメッセージと基本入出力システム
   （つまり <acronym>BIOS</acronym>）のメッセージは画面に送られ、
   ユーザーの入力はキーボードから受け取るようになります。こうなると、
   シリアルポートを使って <acronym>BIOS</acronym> を再設定するのが難しくなり、
   電源投入時のセルフテストのエラーもわからなくなります。
   </para>

   <!--
   <para>An increasing number of manufacturers of rackable
   <emphasis>server</emphasis> equipment are altering their
   <acronym>BIOS</acronym>s to optionally use the
   <acronym>RS-232</acronym> port for BIOS configuration and test
   messages.  If you are buying a machine specifically for use with
   serial console you should seek this feature.  If you have an
   existing machine that definitely requires access to the
   <acronym>BIOS</acronym> from the serial port then there are
   hardware solutions such as <ulink
   url="http://www.realweasel.com/"><productname>PC Weasel
   2000</productname></ulink>.</para>
   -->
   <para>
   ラックマウント <emphasis>サーバー</emphasis>
   装置の製造業者数はますます増加しており、
   その製造業者は自分たちの
   <acronym>BIOS</acronym> を変更して、
   <acronym>RS-232</acronym> ポートをオプションで使えるようにしています。
   これは BIOS を設定したり、テストメッセージを受け取るためのものです。
   マシン、具体的にいえばシリアルコンソールを用いて運用するマシンを
   購入するつもりなら、この機能が備わっているものにしてください。
   どうしてもシリアルポートから 
   <acronym>BIOS</acronym>
   へアクセスする必要がある既存のマシンについては、
   <ulink url="http://www.realweasel.com/">
   <productname>PC Weasel 2000</productname></ulink>
   などの、ハードウェアによる解決方法があります。
   </para>

   <!--
   <para>Secondly, the <acronym>RS-232</acronym> port on the
   <productname><acronym>IBM</acronym>
   <acronym>PC</acronym></productname> is designed for connecting to a
   modem.  Thus a null modem cable is needed when connecting the PC's
   serial port to a terminal.</para>
   -->
   <para>
   第二に、 <productname><acronym>IBM</acronym> 
   <acronym>PC</acronym></productname> の
   <acronym>RS-232</acronym> ポートは、
   モデムの接続用に設計されています。
   よって、 PC のシリアルポートを端末に接続する場合は、
   ヌルモデムケーブルが必要になります。
   </para>

  </section> <!-- into-why -->


  <section id="intro-word">
  <!--
   <title>Alternative meanings of &lsquo;console&rsquo;</title>
   -->
   <title>
   &lsquo;コンソール&rsquo; の新しい意味
   </title>

   <!--
   <para>Some authors use the word &lsquo;console&rsquo; to refer to
   the keyboard and monitor that are attached to the system unit.
   This is described as a &lsquo;physical console&rsquo; by some
   <systemitem class="osname">Linux</systemitem> documentation.  The
   console where system messages appear is described as the
   &lsquo;logical console&rsquo; by that documentation.</para>
   -->
   <para>
   文書の作者の中には、
   システムユニットに付いているキーボートとモニターの組を指して
   &lsquo;コンソール&rsquo;という言葉を使っている人がいます。
   ある <systemitem class="osname">Linux</systemitem> の文書では、
   これを&lsquo;物理コンソール&rsquo;と表現しています。
   この文書によれば、
   システムメッセージが現れるコンソールを、
   &lsquo;論理コンソール&rsquo;と表現しています。
   </para>

   <!--
   <para>As an illustration of the difference, <productname>X
   Windows</productname> should start on the physical console but
   system messages issued by failures when starting <productname>X
   Windows</productname> should be written to the logical
   console.</para>
   -->
   <para>
   この違いを実例で示しましょう。
   <productname>X ウィンドウ</productname>
   は物理コンソール上でスタートするでしょうが、
   <productname>X ウィンドウ</productname>
   のスタート時に発生した障害が出したシステムメッセージは、
   論理コンソールに書かれるはずです。
   </para>

   <!--
   <para>To avoid confusion this <citetitle>HOWTO</citetitle> uses the
   word &lsquo;console&rsquo; to describe the place where system
   messages are printed.  This <citetitle>HOWTO</citetitle> uses the
   phrase &ldquo;attached monitor and keyboard&rdquo; rather than the
   confusing words &ldquo;physical console&rdquo;.</para>
   -->
   <para>
   混乱を避けるため、この <citetitle>HOWTO</citetitle>
   ではシステムメッセージが表示される場所を
   &lsquo;コンソール&rsquo;という言葉で表現します。
   また、&ldquo;物理コンソール&rdquo;という混乱を招く言葉ではなく、
   &ldquo;付属のモニター・キーボード&rdquo;と表現を使います。
   </para>

   <!--
   <para>These distinctions are also made in the naming of devices.
   The device <filename class="devicefile">/dev/console</filename> is
   used to send messages to the console.  The symbolic link <filename
   class="symlink">/dev/systty</filename> points to the device which
   is used by the attached monitor and keyboard, often <filename
   class="devicefile">/dev/tty0</filename>.</para>
   -->
   <para>
   デバイス名についても同じように区別します。
   <filename class="devicefile">/dev/console</filename>
   というデバイスは、コンソールにメッセージを送るのに使います。
   <filename class="symlink">/dev/systty</filename>
   というシンボリックリンクは、
   付属のモニター・キーボードで使用するデバイスを指しています。
   このデバイスは、たいてい
   <filename class="devicefile">/dev/tty0</filename> になっています。
   </para>

   <table frame="topbot" colsep="0" rowsep="0" id="intro-word-console">
   <!--
    <title>Different ways of referring to the &lsquo;console&rsquo;</title>
    -->
    <title>
    &lsquo;コンソール&lsquoを指すいろいろな言葉
    </title>
    <tgroup cols="3">
     <thead>
      <row>
      <!--
       <entry>Document</entry>
       -->
       <entry>文書</entry>
      </row>
     </thead>
     <tbody>
      <row>
      <!--
       <entry><para>This <citetitle>HOWTO</citetitle></para></entry>
       <entry><para><quote>Console</quote></para></entry>
       <entry><para><quote>Attached monitor and keyboard</quote></para></entry>
       -->
       <entry><para>この <citetitle>HOWTO</citetitle></para></entry>
       <entry><para><quote>コンソール</quote></para></entry>
       <entry><para><quote>付属のモニター・キーボード</quote></para></entry>
      </row>
      <row>
      <!--
       <entry><para>Some Linux documentation</para></entry>
       <entry><para><quote>Logical console</quote></para></entry>
       <entry><para><quote>Physical console</quote></para></entry>
       -->
       <entry><para>ある Linux 文書</para></entry>
       <entry><para><quote>論理コンソール</quote></para></entry>
       <entry><para><quote>物理コンソール</quote></para></entry>
      </row>
      <row>
      <!--
       <entry><para>Device names</para></entry>
       -->
       <entry><para>デバイス名</para></entry>
       <entry><para><filename class="devicefile">/dev/console</filename></para></entry>
       <entry><para><filename class="devicefile">/dev/systty</filename></para></entry>
      </row>
     </tbody>
    </tgroup>
   </table> <!-- intor-word-console -->

  </section> <!-- intro-word -->

  <section id="intro-config">
  <!--
   <title>Configuration overview</title>
   -->
   <title>設定の概要</title>

   <!--
   <para>There are five major steps to configuring a serial
   console.</para>
   -->
   <para>
   シリアルコンソールの設定には、主な段階が五つあります。
   </para>

   <procedure>
    <step>
    <!--
     <para>Optionally, the <acronym>BIOS</acronym> may be configured
     to use the serial port.</para>
     -->
     <para>
     シリアルポートを使うため、場合によっては
     <acronym>BIOS</acronym> の設定を変えることがあります。
     </para>
    </step>

    <step>
    <!--
     <para>If needed, the boot loader may be configured to use the
     serial port.</para>
     -->
     <para>
     シリアルポートを使うため、
     必要に応じてブートローダーを修正することがあります。
     </para>
    </step>

    <step>
    <!--
     <para>The Linux kernel must be configured to use the serial port
     as its console.  This is done by passing the kernel the
     <literal>console</literal> parameter when the kernel is started
     by the boot loader.</para>
     -->
     <para>
     シリアルポートをコンソールとして使えるように、
     Linux カーネルを設定しなければなりません。
     この場合は、ブートローダーがカーネルをスタートさせる時に、
     <literal>console</literal>
     パラメータをカーネルに渡すようにします。
     </para>
    </step>

    <step>
    <!--
     <para>The <application>init</application> system should keep a
     process running to monitor the serial console for logins.  The
     monitoring process is traditionally called
     <application>getty</application>.</para>
     -->
     <para>
     <application>init</application> システムは、
     シリアルコンソールからのログインを監視するため、
     あるプロセスを実行し続けます。
     この監視するプロセスのことを、
     昔から <application>getty</application> と呼んでいます。
     </para>
    </step>

    <step>
    <!--
     <para>A number of system utilities need to be configured to make
     them aware of the console, or configured to prevent them from
     disrupting the console.</para>
     -->
     <para>
     多くのシステムユーティリティは、コンソールを認識するように設定する、
     または、（すでに認識している場合は）コンソールの動作を乱さないように
     設定する必要があります。
     </para>
    </step>
   </procedure>

   <!--
   <para>Examples in this <citetitle>HOWTO</citetitle> are from
   <productname>Red Hat Linux</productname> versions
   <productnumber>7.1</productnumber> through to
   <productnumber>7.3</productnumber> (released 2001 through to 2002).
   The maintainer would appreciate updates when new versions of
   <productname>Red Hat Linux</productname> appear.  The maintainer
   would very much appreciate examples for <systemitem
   class="osname">Linux</systemitem> distributions that are dissimilar
   to <productname>Red Hat Linux</productname>; particularly
   <productname>Debian GNU/Linux</productname> and
   <productname>Slackware Linux</productname>.  All contributors are
   acknowledged in <xref linkend="about-credits">.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> に載せている例は、
   <productname>Red Hat Linux</productname> のバージョン 
   <productnumber>7.1</productnumber> から 
   <productnumber>7.3</productnumber> 
   （2001 年から 2002 年にかけてリリースされました）
   までのものを用いています。
   <productname>Red Hat Linux</productname> の新しいバージョンが出た際には、
   この <citetitle>HOWTO</citetitle> の保守担当者に、
   最新情報をいただければありがたいと思います。また、
   <productname>Red Hat Linux</productname> 以外の 
   <systemitem class="osname">Linux</systemitem> ディストリビューション、
   特に <productname>Debian GNU/Linux</productname> と 
   <productname>Slackware Linux</productname> に関する事例は大歓迎です。
   この <citetitle>HOWTO</citetitle> に貢献していただいた方々については、
   <xref linkend="about-credits"> で謝意を表しました。
   </para>

  </section> <!-- intro-config -->

 </chapter> <!-- intro -->


 <chapter id="preparation">
 <!--
  <title>Preparation</title>
  -->
  <title>準備</title>

  <!--
  <para>This chapter ensures that access the existing console can be
  restored should the serial console fail to start.</para>
  -->
  <para>
  この章では、万一シリアルコンソールのスタートに失敗しても、
  元のコンソールをもう一度確実に使えるようにします。
  </para>

  <!--
  <para>This chapter then discusses the selection of the
  <acronym>RS-232</acronym> port and its parameters.</para>
  -->
  <para>
  それから <acronym>RS-232</acronym>
  ポートとそのパラメータの選び方を論じます。
  </para>


  <section id="preparation-fallback">
  <!--
   <title>Create fallback position</title>
   -->
   <title>万が一に備える</title>

   <!--
   <para>Good system administrators always have a viable fallback
   plan to cope with failures.  A mistake configuring the serial
   console can make both the serial console and the attached monitor
   and keyboard unusable.  A fallback plan is needed to retrieve
   console access.</para>
   -->
   <para>
   有能なシステム管理者には、万が一を考えた実践的な対応策が常にあり、
   それで障害を何とかうまく処理するものです。
   シリアルコンソールを設定する上で誤りがあると、
   シリアルコンソールと付属のモニター・キーボードの両方が、
   使用不能になる可能性があります。
   ですから、もう一度コンソールへアクセスできるようにするには、
   こういった対応策が必要になるのです。
   </para>

   <!--
   <para>Many <systemitem class="osname">Linux</systemitem>
   distributions allow boot diskettes to be created.  Writing a boot
   diskette before altering the console configuration results in a
   boot diskette that passes good parameters to the kernel rather than
   parameters that may contain an error.</para>
   -->
   <para>
   <systemitem class="osname">Linux</systemitem>
   ディストリビューションの多くは、
   ブートディスクが作れるようになっています。
   コンソールの設定を変更する前にブートディスクを作れば、
   ブートディスクがカーネルに渡すパラメータは正しいものになります。
   設定の変更後に作ってしまうと、
   そのパラメータにはエラーが入っているかもしれません。
   </para>

   <!--
   <para>Under <productname>Red Hat Linux</productname> a boot
   diskette is created by determining the running kernel
   version</para>
   -->
   <para>
   <productname>Red Hat Linux</productname> では、
   ブートディスクの作成前に、
   動作中のカーネルのバージョンを確認します。
   </para>

   <informalfigure id="preparation-fallback-kernelversion">
<screen format="linespecific">
<prompt>bash$</prompt> <command>uname -r</command>
<computeroutput>2.4.2-2</computeroutput></screen>
   </informalfigure>

   <!--
   <para>and then using that version to create the boot
   diskette</para>
   -->
   <para>
   そして、このバージョンを使ってブートディスクを作ります。
   </para>

   <informalfigure id="preparation-fallback-rhldisk">
<screen format="linespecific">
<prompt>bash#</prompt> <command>mkbootdisk &hyphen;&hyphen;device /dev/fd0 2.4.2-2</command></screen>
   </informalfigure>

   <!--
   <para>Under <productname>Debian
   <acronym>GNU</acronym>/Linux</productname> the boot diskette is
   created by determining the version of the running kernel and then
   using that version to write the boot diskette</para>
   -->
   <para>
   一方、<productname>Debian <acronym>GNU</acronym>/Linux</productname>
   でブートディスクを作る場合は、
   動作しているカーネルのバージョンを確認し、
   そのバージョンを使ってブートディスクを書きます。
   </para>

   <informalfigure id="preparation-fallback-debiandisk">
<screen format="linespecific">
<prompt>bash#</prompt> <command>mkboot /boot/vmlinuz-2.4.2-2</command></screen>
   </informalfigure>

   <!--
   <para>An alternative fallback position is have a rescue diskette
   with the machine.  A common choice is <ulink
   url="http://www.toms.net/rb/">Tom's root boot</ulink>.</para>
   -->
   <para>
   あるいは、
   そのマシンを使ってレスキューディスクを用意するという方法もあります。
   良く使うのは
   <ulink url="http://www.toms.net/rb/">Tom's root boot</ulink>
   です。
   </para>

  </section> <!-- preparation-fallback -->

  <section id="preparation-setport">
  <!--
   <title>Select a serial port </title>
   -->
   <title>シリアルポートを選択する</title>


   <section id="preparation-setport-name">
   <!--
    <title>Serial port names</title>
    -->
    <title>シリアルポートの名前</title>

    <!--
    <para>Linux names its serial ports in the
    <productname>UNIX</productname> tradition.  The first serial port
    has the file name <filename
    class="devicefile">/dev/ttyS0</filename>, the second serial port
    has the file name <filename
    class="devicefile">/dev/ttyS1</filename>, and so on.</para>
    -->
    <para>
    Linux のシリアルポート名は、
    <productname>UNIX</productname> の流儀に従っています。
    ですから、
    最初のシリアルポートは
    <filename class="devicefile">/dev/ttyS0</filename>
    というファイル名で、
    二番目のシリアルポートは
    <filename class="devicefile">/dev/ttyS1</filename> 
    等というようになります。
    </para>

    <!--
    <para>This differs from the <productname><acronym>IBM</acronym>
    <acronym>PC</acronym></productname> tradition.  The first serial
    port is named <filename class="devicefile">COM1:</filename>, the
    second serial port is named <filename
    class="devicefile">COM2:</filename>, and so on.  Up to four serial
    ports can be present on a <productname><acronym>IBM</acronym>
    <acronym>PC/AT</acronym></productname> computer and its
    successors.</para>
    -->
    <para>
    しかし <productname><acronym>IBM</acronym> 
    <acronym>PC</acronym></productname> のやり方は違います。
    この場合は、
    最初のシリアルポートの名前は 
    <filename class="devicefile">COM1:</filename>
    となり、
    二番目のシリアルポートは
    <filename class="devicefile">COM2:</filename>
    等々、というような具合です。
    <productname><acronym>IBM</acronym> 
    <acronym>PC/AT</acronym></productname> コンピュータとその後継機には、
    一台あたりシリアルポートが 4 つまで搭載できます。
    </para>

    <!--
    <para>Most boot loaders have yet another naming scheme.  The first
    serial port is numbered <literal>0</literal>, the second serial
    port is numbered <literal>1</literal>, and so on.</para>
    -->
    <para>
    さらに大抵のブートローダーには、また別の命名規則があります。
    最初のシリアルポートは <literal>0</literal>、
    二番目は <literal>1</literal>、等々となります。
    </para>

    <!--
    <para>If your distribution of <systemitem
    class="osname">Linux</systemitem> uses the
    <application>devfs</application> device manager then the serial
    ports have yet another name.  The first serial port is <filename
    class="devicefile">/dev/tts/0</filename>, the second serial port
    is <filename class="devicefile">/dev/tts/1</filename>, and so
    on.</para>
    -->
    <para>
    自分の <systemitem class="osname">Linux</systemitem>
    ディストリビューションで、
    <application>devfs</application>
    というデバイスマネージャを使用している場合は、
    シリアルポートには、さらにまた別の名前があります。
    最初のシリアルポートは 
    <filename class="devicefile">/dev/tts/0</filename>、
    二番目のシリアルポートは
    <filename class="devicefile">/dev/tts/1</filename> 
    等々、というようになります。
    </para>

    <!--
    <para>The result is that the first serial port is labeled
    <filename class="devicefile">COM1:</filename> on the chassis of
    the <productname><acronym>IBM</acronym>
    <acronym>PC</acronym></productname>; is known as <filename
    class="devicefile">/dev/ttyS0</filename> to <systemitem
    class="osname">Linux</systemitem>; is known as <filename
    class="devicefile">/dev/tts/0</filename> to <systemitem
    class="osname">Linux</systemitem> when configured with
    <application>devfs</application>; and is known as port
    <literal>0</literal> to many boot loaders.</para>
    -->
    <para>
    結局、<productname><acronym>IBM</acronym> 
    <acronym>PC</acronym></productname> 
    のシャーシにあるシリアルポートは 
    <filename class="devicefile">COM1:</filename> になっていますが、
    それが <systemitem class="osname">Linux</systemitem>
    では
    <filename class="devicefile">/dev/ttyS0</filename>
    となり、
    <application>devfs</application>
    が使えるように設定している
    <systemitem class="osname">Linux</systemitem>
    では、それが 
    <filename class="devicefile">/dev/tts/0</filename> となります。
    さらに多くのブートローダーでは、
    ポート <literal>0</literal> になっています。
    </para>

    <!--
    <para>The examples in this <citetitle>HOWTO</citetitle> use this
    first serial port, as that is the serial port which most readers
    will wish to use.</para>
    -->
    <para>
    この <citetitle>HOWTO</citetitle> に載せている例では、
    この最初のシリアルポート（訳注：/dev/ttyS0）を使っています。
    というのは、ほとんどの読者が使いたいと思っているのが、
    そのシリアルポートだからです。
    </para>

    <table frame="topbot" colsep="0" rowsep="0" id="preparation-setport-names-many">
    <!--
     <title>Many names for the same serial port</title>
     -->
     <title>同じシリアルポートに対する様々な名前</title>
     <tgroup cols="4" align="center">
      <thead valign="bottom">
       <row rowsep="1">
        <entry align="center" valign="bottom"><productname>IBM PC</productname></entry>
	<!--
        <entry align="center" valign="bottom"><systemitem
        class="osname">Linux</systemitem> kernel</entry>
	-->
        <entry align="center" valign="bottom"><systemitem
        class="osname">Linux</systemitem> カーネル</entry>
	<!--
        <entry align="center" valign="bottom"><systemitem
        class="osname">Linux</systemitem> kernel with
        <application>devfs</application></entry>
	-->
        <entry align="center" valign="bottom">
	<application>devfs</application> 付き 
	<systemitem class="osname">Linux</systemitem> カーネル</entry>
	<!--
        <entry align="center" valign="bottom">Most boot loaders</entry>
	-->
        <entry align="center" valign="bottom">大半のブートローダー</entry>
       </row>
      </thead>
      <tbody>
       <row>
        <entry><filename class="devicefile">COM1:</filename></entry>
        <entry><filename class="devicefile">/dev/ttyS0</filename></entry>
        <entry><filename class="devicefile">/dev/tts/0</filename></entry>
        <entry><literal>0</literal></entry>
       </row>
       <row>
        <entry><filename class="devicefile">COM2:</filename></entry>
        <entry><filename class="devicefile">/dev/ttyS1</filename></entry>
        <entry><filename class="devicefile">/dev/tts/1</filename></entry>
        <entry><literal>1</literal></entry>
       </row>
       <row>
        <entry><filename class="devicefile">COM3:</filename></entry>
        <entry><filename class="devicefile">/dev/ttyS2</filename></entry>
        <entry><filename class="devicefile">/dev/tts/2</filename></entry>
        <entry><literal>2</literal></entry>
       </row>
       <row>
        <entry><filename class="devicefile">COM4:</filename></entry>
        <entry><filename class="devicefile">/dev/ttyS3</filename></entry>
        <entry><filename class="devicefile">/dev/tts/3</filename></entry>
        <entry><literal>3</literal></entry>
       </row>
      </tbody>
     </tgroup>
    </table>

   </section> <!-- preparation-setport-name -->


   <section id="preparation-setport-interrupt">
   <!--
    <title>Cannot share interrupt used for console's serial
    port</title>
    -->
    <title>コンソールのシリアルポート用割り込みが共有できない</title>

    <!--
    <para>When used for a console the serial port cannot share an
    interrupt with another device.  The
    <productname><acronym>IBM</acronym>
    <acronym>PC</acronym></productname> devices are usually installed
    as shown in <xref linkend="preparation-setport-ibmpc">.  If you
    use the serial port <filename
    class="devicefile">/dev/ttyS0</filename> for the console then you
    should avoid sharing interrupt 4 by not installing a serial port
    <filename class="devicefile">/dev/ttyS2</filename> in your
    <acronym>PC</acronym>.  If <filename
    class="devicefile">/dev/ttyS2</filename> cannot be physically
    removed then disable it using the <command>setserial</command>
    command, as shown in <xref
    linkend="preparation-setport-setserial">.</para>
    -->
    <para>
    シリアルポートをコンソール用に使うと、
    そのシリアルポートは他のデバイスと割り込みを共有できなくなります。
    <productname><acronym>IBM</acronym> 
    <acronym>PC</acronym></productname> のデバイスは、
    普通 <xref linkend="preparation-setport-ibmpc">
    で示すように設置されています。
    ですからもしコンソール用にシリアルポート
    <filename class="devicefile">/dev/ttyS0</filename>
    を使う場合は、
    <acronym>PC</acronym> にシリアルポート
    <filename class="devicefile">/dev/ttyS2</filename> 
    を設置しないようにして、割り込み 4 を共有しないようにして下さい。
    <filename class="devicefile">/dev/ttyS2</filename>
    が物理的に取り外せない場合は、
    <xref linkend="preparation-setport-setserial">
    で示しているように、
    <command>setserial</command>
    コマンドを使ってそのポートを無効にして下さい。
    </para>

    <table frame="topbot" colsep="0" rowsep="0" id="preparation-setport-ibmpc">
    <!--
     <title>Interrupts used for <productname><acronym>IBM</acronym>
     <acronym>PC/AT</acronym></productname> <acronym>RS-232</acronym>
     ports</title>
     -->
     <title>
     <productname><acronym>IBM</acronym> 
     <acronym>PC/AT</acronym></productname> の
     <acronym>RS-232</acronym> ポート用に使用する割り込み
     </title>
     <tgroup cols="3" align="center">
      <thead valign="bottom">
       <row rowsep="1">
       <!--
        <entry align="center">Device</entry>
        <entry align="center">Interrupt</entry>
        <entry align="center">Port</entry>
	-->
        <entry align="center">デバイス</entry>
        <entry align="center">割り込み</entry>
        <entry align="center">ポート</entry>
       </row>
      </thead>
      <tbody>
       <row>
        <entry><filename class="devicefile">/dev/ttyS0</filename></entry>
        <entry>4</entry>
        <entry>0x3f8</entry>
       </row>
       <row>
        <entry><filename class="devicefile">/dev/ttyS1</filename></entry>
        <entry>3</entry>
        <entry>0x2f8</entry>
       </row>
       <row>
        <entry><filename class="devicefile">/dev/ttyS2</filename></entry>
        <entry>4</entry>
        <entry>0x3e8</entry>
       </row>
       <row>
        <entry><filename class="devicefile">/dev/ttyS3</filename></entry>
        <entry>3</entry>
        <entry>0x2e8</entry>
       </row>
      </tbody>
     </tgroup>
    </table>

    <figure id="preparation-setport-setserial">
    <!--
     <title>Using the <command>setserial</command> command in
    <filename>/etc/rc.serial</filename>to disable the serial port
    <filename class="devicefile">/dev/ttyS2</filename></title>
    -->
    <title>
    <filename>/etc/rc.serial</filename> で
    <command>setserial</command> コマンドを使い、
    シリアルポート <filename class="devicefile">/dev/ttyS2</filename> を
    無効にする。
    </title>
<programlisting>
<!--
# Disable /dev/ttyS2 so interrupt 4 is not shared,
# then /dev/ttyS0 can be used as a serial console.
-->
# /dev/ttyS2 を無効にしているので、割り込み 4 は共有されない。
# というわけで、/dev/ttyS0 はシリアルコンソールに使える。
setserial /dev/ttyS2 uart none port 0x0 irq 0
</programlisting>
    </figure>

    <!--
    <para>Reading the source code suggests that the interrupt-sharing
    constraint applies to all computer architectures, not just Intel
    Architecture-32.</para>
    -->
    <para>
    ソースコードを読んでいる限りでは、
    割り込み共有の制約はたんに Intel Architecture-32 だけではなく、
    すべてのコンピュータアーキテクチャにあてはまるように思えます。
    </para>

   </section> <!-- preparation-setport-interrupt -->


  </section>  <!-- preparation-setport -->


  <section id="preparation-setspeed">
  <!--
   <title>Select a serial speed and parameters</title>
   -->
   <title>シリアルポートの速度とパラメータを選択する</title>

   <!--
   <para>This <citetitle>HOWTO</citetitle> does not discuss the
   <acronym>RS-232</acronym> standard, which is formally known as
   <citetitle><acronym>ANSI/TIA/EIA-232-F-1997</acronym> Interface
   Between Data Terminal Equipment and Data Circuit-Terminating
   Equipment Employing Serial Data Interchange</citetitle>.  For an
   explanation of &lsquo;bits per second&rsquo;, &lsquo;start
   bits&rsquo;, &lsquo;data bits&rsquo;, &lsquo;parity&rsquo;,
   &lsquo;stop bits&rsquo; and &lsquo;flow control&rsquo; refer to the
   <ulink
   url="http://www.tldp.org/HOWTO/Serial-HOWTO.html"><citetitle>Serial-HOWTO</citetitle></ulink>
   and the <ulink
   url="http://www.tldp.org/HOWTO/Modem-HOWTO.html"><citetitle>Modem-HOWTO</citetitle></ulink>.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> では
   <acronym>RS-232</acronym> 標準の説明はしません。
   この標準は正式には、
   <citetitle><acronym>ANSI/TIA/EIA-232-F-1997</acronym> Interface
   Between Data Terminal Equipment and Data Circuit-Terminating
   Equipment Employing Serial Data Interchange</citetitle>
   といいます。
   &lsquo; 1 秒あたりのビット数（訳注：bps）&rsquo; とか 
   &lsquo;スタートビット&rsquo;、 &lsquo;データビット&rsquo; 、 
   &lsquo;パリティ&rsquo;、 &lsquo;ストップビット&rsquo;、
   それに &lsquo;フロー制御&rsquo; についての説明は、
   <ulink url="http://www.tldp.org/HOWTO/Serial-HOWTO.html">
   <citetitle>Serial-HOWTO</citetitle></ulink>

   <footnote><para>
   邦訳は
   <ulink url="http://www.linux.or.jp/JF/JFdocs/Serial-HOWTO.html">
   <citetitle>Serial-HOWTO</citetitle></ulink> です。
   </para></footnote>

   および 
   <ulink url="http://www.tldp.org/HOWTO/Modem-HOWTO.html">
   <citetitle>Modem-HOWTO</citetitle></ulink>

   <footnote><para>
   邦訳は
   <ulink url="http://www.linux.or.jp/JF/JFdocs/Modem-HOWTO.html">
   <citetitle>Modem-HOWTO</citetitle></ulink> です。
   </para></footnote>

   を参照してください。
   </para>

   <!--
   <para>The description of the command syntax for setting the serial
   parameters in the kernel, boot loaders and login applications uses
   the following variables which describe <acronym>RS-232</acronym>
   parameters.</para>
   -->
   <para>
   カーネルやブートローダー、それにログインアプリケーションで、
   シリアルポートのパラメータを設定するコマンドの構文を説明する場合は、
   <acronym>RS-232</acronym> の特性を表す以下の変数を使用します。
   </para>

   <variablelist>
    <varlistentry>
    <!--
     <term><replaceable>&lt;speed&gt;</replaceable></term>
     -->
     <term><replaceable>&lt;速度&gt;</replaceable></term>
     <listitem>
     <!--
      <para>The speed of the serial link in bits per second.</para>
      -->
      <para>
      一秒あたりのビット数で計測したシリアルリンクの速度
      </para>

      <!--
      <para>The <systemitem class="osname">Linux</systemitem> kernel
      on a modern <acronym>PC</acronym> supports a serial console
      speeds of 1200, 2400, 4800, 9600, 19200, 38400, 57600 and 115200
      bits per second.</para>
      -->
      <para>
      最近の <acronym>PC</acronym> で動作している 
      <systemitem class="osname">Linux</systemitem> 
      カーネルでは、シリアルコンソールの速度として、
      1200, 2400, 4800, 9600, 19200, 38400, 57600,
      115200（ビット毎秒
      <footnote><para>bps</para></footnote>）
      をサポートしています。
      </para>

      <!--
      <para>The kernel supports a much wider range of serial bit rates
      when the serial interface is not being used as a serial
      console.<footnote><para>There is no good reason for this
      difference.  Feel free to submit a patch to the linux-kernel
      mailing list to correct this oddity.</para></footnote></para>
      -->
      <para>
      シリアルインタフェースをシリアルコンソールで使わなければ、
      カーネルがサポートするシリアルビットレートの範囲はもっと広がります。
      <footnote>
      <para>
      この違いについては、筋の通った理由はありません。
      この奇妙な点を修正するパッチを linux-kernel
      メーリングリストに遠慮なく投稿してください。
      </para>
      </footnote>
      </para>

      <!--
      <para>Very recent <systemitem class="osname">Linux</systemitem>
      kernels can also offer a serial console using a
      <acronym>USB</acronym> serial dongle at speeds of 1200, 2400,
      4800, 9600, 19200, 38400, 57600 and 115200 bits per
      second.</para>
      -->
      <para>
      ごく最近の <systemitem class="osname">Linux</systemitem> カーネルでは、
      <acronym>USB</acronym>
      のシリアルドングルを用いたシリアルコンソールを、
      1200, 2400, 4800, 9600, 19200, 38400, 57600,
      115200ビット毎秒で使えるようにもなっています。
      </para>

      <!--
      <para>Most boot loaders only support a different range of speeds
      than are supported by the kernel.
      <productname>LILO</productname>
      <productnumber>21.7.5</productnumber> supports 110, 150, 300,
      600, 1200, 2400, 4800, 9600, 19200, 38400, 56000, 57600 and
      115200 bits per second.  <productname>SYSLINUX</productname>
      <productnumber>1.67</productnumber> supports 75 to 56000 bits
      per second.  <productname>GRUB</productname>
      <productnumber>0.90</productnumber> supports 2400, 4800, 9600,
      19200, 38400, 57600 and 115200 bits per second.</para>
      -->
      <para>
      一方、ほとんどのブートローダーがサポートする速度範囲は、
      カーネルがサポートする範囲とは違っています。
      <productname>LILO</productname>
      のバージョン <productnumber>21.7.5</productnumber> では、
      110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200, 38400, 
      56000, 57600, 115200 ビット毎秒の速度をサポートしています。
      また、<productname>SYSLINUX</productname>
      のバージョン <productnumber>1.67</productnumber> では、
      75ビット毎秒から 56000 ビット毎秒までをサポートしています。 
      <productname>GRUB</productname>
      のバージョン <productnumber>0.90</productnumber>
      がサポートしている速度は、
      2400, 4800, 9600, 19200, 38400, 57600, 115200 ビット毎秒です。
      </para>

      <!--
      <para>You must chose the same speed for both the boot loader and
      for the <systemitem class="osname">Linux</systemitem> kernel.
      An operating system may use more than one boot loader.  For
      example, <productname>Red Hat Linux</productname> uses
      <productname>SYSLINUX</productname> to install or upgrade the
      operating system; <productname>LILO</productname> as the boot
      loader for <productname>Red Hat Linux</productname>
      <productnumber>7.1</productnumber> and earlier; and
      <productname>GRUB</productname> as the boot loader for
      <productname>Red Hat Linux</productname>
      <productnumber>7.2</productnumber> and later.</para>
      -->
      <para>
      シリアルポートで使用する速度は、
      ブートローダーと 
      <systemitem class="osname">Linux</systemitem>
      カーネルの両方で同じ速度にしなければなりません。
      一つのオペレーティングシステムで、
      複数のブートローダーを使っていることがあります。
      例えば、 
      <productname>Red Hat Linux</productname> では、
      オペレーティングシステムのインストールやアップグレードに 
      <productname>SYSLINUX</productname> を使っています。
      <productname>Red Hat Linux</productname>
      のバージョン 
      <productnumber>7.1</productnumber>
      以前ではブートローダーに <productname>LILO</productname> を使い、 
      <productnumber>7.2</productnumber>
      以降は 
      <productname>GRUB</productname> を使用します。
      </para>

      <!--
      <para>If you are using a serial terminal or if you are using a
      dumb modem then the bit rate of the terminal or dumb modem must
      also match the bit rate selected in the boot loader and
      kernel.</para>
      -->
      <para>
      シリアル端末やダムモデムを使うつもりなら、
      その端末やダムモデムのビットレートも、
      ブートローダーとカーネルで用いるビットレートと合わせる必要があります。
      </para>

      <!--
      <para>If the serial console is connected to a Hayes-style modem
      slower than 9600<abbrev>bps</abbrev> then configure the serial
      console with the same speed as the modem.  Modems faster than
      9600<abbrev>bps</abbrev> will generally automatically
      synchronize to the speed of the serial port.</para>
      -->
      <para>
      シリアルコンソールを 9600<abbrev>bps</abbrev>
      未満のヘイズ互換モデムと接続する場合は、
      そのシリアルコンソールをモデムと同じ速度に設定して下さい。 
      9600<abbrev>bps</abbrev> より高速のモデムの場合は、
      たいてい自動的にシリアルポートの速度と同期します。
      </para>

      <!--
      <para>The selected bit rate must also be supported by the serial
      port's <acronym>UART</acronym> semiconductor chip.  Early
      <acronym>UART</acronym>s without on-chip receive buffers could
      only reliably receive at up to 14400<abbrev>bps</abbrev>, this
      includes models 8250A, 82510, 16450 and 16550 (with no
      <wordasword>A</wordasword>).  Recent <acronym>UART</acronym>s with
      receive buffers will work at all serial console bit rates, this
      includes models 16550A, 16552, 16650, 16654, 16750, 16850 and
      16950.</para>
      -->
      <para>
      ここで選んだビットレートは、シリアルポートの
      <acronym>UART</acronym> 
      半導体チップでもサポートしていなければなりません。
      チップ上に受信バッファが無い初期の <acronym>UART</acronym> では、
      信頼して受信できるのは 14400<abbrev>bps</abbrev> までにすぎませんでした。
      この中には 
      8250A や 82510、 16450 それに 16550（<wordasword>A</wordasword> 無し）
      も入ります。受信バッファが付いた最近の <acronym>UART</acronym> は、
      シリアルビットレート全域で動作します。これに該当するモデルは、
      16550A, 16552, 16650, 16654, 16750, 16850, 16950
      です。
      </para>

      <!--
      <para>Unless you have good reason, use the popular bit rate of
      9600 bits per second.  This is the default bit rate of a great
      many devices.</para>
      -->
      <para>
      然るべき理由が無い限り、一般的なビットレートの 9600ビット毎秒
      を使って下さい。これが大多数のデバイスの、デフォルトビットレート
      になっています。
      </para>

      <!--
      <para>The speeds that are supported by the kernel, the three
      common boot loaders, and all <productname><acronym>IBM</acronym>
      <acronym>PC</acronym>s</productname> capable of running
      <systemitem class="osname">Linux</systemitem> are: 2400, 4800,
      9600 and 19200 bits per second.  This is a depressingly small
      selection: not slow enough to support a call over an
      international phone circuit and not fast enough to upload large
      files.  You may need to choose a speed that will result in a
      less robust software configuration.</para>
      -->
      <para>
      カーネルでも、3種類の一般的なブートローダーでも、それに 
      <systemitem class="osname">Linux</systemitem> が
      動作する すべての <productname><acronym>IBM</acronym>
      <acronym>PC</acronym>s</productname> でもサポートしている速度といえば、 
      2400, 4800, 9600 それに 19200ビット毎秒です。
      でもこれではあまりにも選択の幅が狭すぎます。
      低速の国際電話回線では電話をかけられず、かといって、
      大きいファイルのアップロードに耐えられるほど高速でもないのです。
      ですから場合によっては、必要な速度を選んだ結果、
      ソフトウェアの設定がもっと特殊なものになってしまうかもしれません。
      </para>

      <figure id="preparation-setspeed-bps">
      <!--
       <title>Syntax for serial bits per second rate, in extended
       Backus-Naur form</title>
       -->
       <title>
       拡張 BNF 記法で表したシリアルビットレート構文
       </title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;speed&gt;</replaceable> ::=  <replaceable>&lt;digits&gt;</replaceable>
-->
<replaceable>&lt;速度&gt;</replaceable> ::=  <replaceable>&lt;数字列&gt;</replaceable>
<!--
<replaceable>&lt;digits&gt;</replaceable> ::= <replaceable>&lt;digit&gt;</replaceable> | <replaceable>&lt;digit&gt;</replaceable><replaceable>&lt;digits&gt;</replaceable>
-->
<replaceable>&lt;数字列&gt;</replaceable> ::= <replaceable>&lt;数字&gt;</replaceable> | <replaceable>&lt;数字&gt;</replaceable><replaceable>&lt;数字列&gt;</replaceable>
<!--
<replaceable>&lt;digit&gt;</replaceable> ::= <literal>0</literal> | <literal>1</literal> | &hellip; | <literal>9</literal>
-->
<replaceable>&lt;数字&gt;</replaceable> ::= <literal>0</literal> | <literal>1</literal> | &hellip; | <literal>9</literal>
</literallayout>
      </figure>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term><replaceable>&lt;parity&gt;</replaceable></term>
     -->
     <term><replaceable>&lt;パリティ&gt;</replaceable></term>
     <listitem>
     <!--
      <para>Number of parity bits and the interpretation of a parity
      bit if one is present.</para>
      -->
      <para>
      パリティビットの種類と、パリティビットが 1 の場合の解釈
      </para>

      <!--
      <para>Allowed values are <literal>n</literal> for no parity bit,
      <literal>e</literal> for one bit of even parity and
      <literal>o</literal> for one bit of odd parity.</para>
      -->
      <para>
      使用できる値は、パリティ無しの場合は <literal>n</literal> 、
      1 ビットの偶数パリティなら <literal>e</literal> 、
      1 ビットの奇数パリティなら  <literal>o</literal> となります。
      </para>

      <!--
      <para>Using no parity bit and eight data bits is
      recommended.</para>
      -->
      <para>
      この中でも、パリティ無し、
      および 8 ビット幅のデータを使うことをお奨めします。
      </para>

      <!--
      <para>If parity is used then even parity is the common
      choice.</para>
      -->
      <para>
      パリティを使う場合は、普通偶数パリティを用います。
      </para>

      <!--
      <para>Parity is a simple form of error detection.  Modern modems
      have much better error detection and correction.  As a result
      the parity bit guards only the data on the cable between the
      modem and the serial port.  If this cable has a low error rate,
      and it should, then the parity bit is not required.</para>
      -->
      <para>
      パリティはエラーを検出する基本的な方法です。
      最近のモデムに備わっているエラー検出機能とエラー訂正機能は、
      ずっと性能が良いものになっています。
      しかし結果的にパリティビットが保護するのは、
      モデムとシリアルポートの間のケーブル上のデータだけですから、
      そのケーブルのエラー発生率が低ければパリティビットは不要です。
      実際、ケーブルのエラー発生率はたぶん低いと思います。
      </para>

      <figure id="preparation-setspeed-parity">
      <!--
       <title>Syntax for serial parity, in extended Backus-Naur
       form</title>
       -->
       <title>拡張 BNF 記法によるシリアルパリティ構文</title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;parity&gt;</replaceable> ::= <literal>n</literal> | <literal>e</literal> | <literal>o</literal>
-->
<replaceable>&lt;パリティ&gt;</replaceable> ::= <literal>n</literal> | <literal>e</literal> | <literal>o</literal>
</literallayout>
      </figure>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term><replaceable>&lt;data&gt;</replaceable></term>
     -->
     <term><replaceable>&lt;データ&gt;</replaceable></term>
     <listitem>
     <!--
      <para>The number of data bits per character.</para>
      -->
      <para>一文字あたりのデータビット数</para>

      <!--
      <para>Allowed values are <literal>7</literal> bits or
      <literal>8</literal> bits, as Linux uses the
      <acronym>ASCII</acronym> character set which requires at least
      seven bits.</para>
      -->
      <para>
      Linux で使っているのが、最低でも 7 ビット必要な 
      <acronym>ASCII</acronym> 文字セットなので、
      使用できる値は
      <literal>7</literal> ビットか <literal>8</literal> ビットです。
      </para>

      <!--
      <para>Eight data bits are recommended.  This allows the link to
      easily be used for file transfers and allows non-English text to
      be presented.</para>
      -->
      <para>
      データ幅は 8 ビット をお奨めします。
      これならリンクを簡単にファイル転送で使えるし、
      英語以外のテキストが現れても大丈夫です。
      </para>

      <figure id="preparation-setspeed-data">
      <!--
       <title>Syntax for serial data bits, in extended Backus-Naur
       form</title>
       -->
       <title>拡張 BNF 記法によるシリアルデータビット構文</title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;data&gt;</replaceable> ::= <literal>7</literal> | <literal>8</literal>
-->
<replaceable>&lt;データ&gt;</replaceable> ::= <literal>7</literal> | <literal>8</literal>
</literallayout>
      </figure>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term><replaceable>&lt;stop&gt;</replaceable></term>
     -->
     <term><replaceable>&lt;ストップ&gt;</replaceable></term>
     <listitem>
     <!--
      <para>The number of stop bit-times.<footnote>
      -->
      <para>
      ストップビットタイム数
      <footnote>

      <!--
        <para>A <wordasword>bit-time</wordasword> is the time taken to
        transmit one bit.  The distinction between
        <wordasword>bit-times</wordasword> of signal and
        <wordasword>bits</wordasword> of data is apparent when you
        consider that 1.5 bit-times of signal is possible but that 1.5
        bits of data is impossible.</para></footnote></para>
	-->
	<para>
	<wordasword>ビットタイム</wordasword> というのは、
	1 ビットの転送に要する時間のことです。
	信号の <wordasword>ビットタイム</wordasword>
	とデータの <wordasword>ビット</wordasword>
	の違いは、
	1.5 ビットタイムの信号というのはあり得るけれども、
	1.5 ビットのデータというのはあり得ない、
	ということを考えれば明らかです。
	</para>
	</footnote>
	</para>

	<!--
      <para>Allowed values are <literal>1</literal> or
      <literal>2</literal>.</para>
      -->
      <para>
      使用できる値は、<literal>1</literal> か <literal>2</literal> です。
      </para>

      <!--
      <para>One stop bit-time is recommended.</para>
      -->
      <para>ストップビットタイムには 1 をお奨めします。</para>

      <!--
      <para>If the <acronym>RS-232</acronym> cable is very long then
      two stop bit-times may be needed.</para>
      -->
      <para>
      <acronym>RS-232</acronym> ケーブルが非常に長い場合は、
      2 ストップビットタイム必要かも知れません。
      </para>

      <!--
      <para>You may occassionally see 1.5 stop bit-times.  The intent
      is to gain 4% more data throughput when a link is too long for
      one stop bit-time but is too short to require two stop
      bit-times.  1.5 stop bit-times is now rare enough to be a hazard
      to use.</para>
      -->
      <para>
      1.5 ストップビットタイムというのを時折見かけることがあります。
      これは、1 ストップビットタイムで済ますにはリンクが長すぎるし、
      2 ストップビットタイムが必要なほどには長いわけでもない場合に、
      データのスループットをあと 4 パーセント上げるためにそうしているのです。
      でも 1.5 ストップビットタイムというのは危険すぎるので、
      今ではめったに使いません。
      </para>

      <figure id="preparation-setspeed-stop">
      <!--
       <title>Syntax for serial stop bits, in extended Backus-Naur
       form</title>
       -->
       <title>拡張 BNF 記法によるシリアルストップビット構文</title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;stop&gt;</replaceable> ::= <literal>1</literal> | <literal>2</literal>
-->
<replaceable>&lt;ストップ&gt;</replaceable> ::= <literal>1</literal> | <literal>2</literal>
</literallayout>
      </figure>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term><replaceable>&lt;flow_control&gt;</replaceable></term>
     -->
     <term><replaceable>&lt;フロー制御&gt;</replaceable></term>
     <listitem>
     <!--
      <para>The type of flow control to use.</para>
      -->
      <para>使用するフロー制御のタイプ</para>

      <!--
      <para>The Linux kernel allows no flow control and
      <acronym>CTS</acronym>/<acronym>RTS</acronym> flow
      control.</para>
      -->
      <para>
      Linux カーネルでは、無手順と 
      <acronym>CTS</acronym>/<acronym>RTS</acronym> のフロー制御が
      できるようになっています。
      </para>

      <!--
      <para>No flow control is the default, this is indicated by
      omitting &lt;flow_control&gt;.</para>
      -->
      <para>
      デフォルトは無手順です。これを表す場合は
      &lt;フロー制御&gt;を省略します。
      </para>

      <!--
      <para><acronym>CTS</acronym>/<acronym>RTS</acronym> flow control
      is recommended, especially if login access is also provided to
      the serial port.  This is indicated by a &lt;flow_control&gt; of
      <literal>r</literal>.</para>
      -->
      <para>
      推奨するのは <acronym>CTS</acronym>/<acronym>RTS</acronym>
      のフロー制御です。
      シリアルポートへのログインアクセスもできるようにもなっている場合には、
      特にお奨めです。
      これは <literal>r</literal> という &lt;フロー制御&gt; で表します。
      </para>

      <!--
      <para><acronym>CTS</acronym>/<acronym>RTS</acronym> flow control
      regulates the flow of chatacters.  The computer does not send
      characters until Clear To Send is asserted by the modem.  If the
      computer is has enough buffering to recieve characters from the
      modem the computer asserts Ready to Send.  Thus neither the
      computer nor the modem's buffers are filled to
      overflowing.</para>
      -->
      <para>
      <acronym>CTS</acronym>/<acronym>RTS</acronym> のフロー制御は、
      文字の流れを調整するものです。コンピュータが文字を伝送するのは、
      モデムが &quot;Clear To Send&quot; をアサートしてからです。
      コンピュータ側に文字を受け取るだけの充分なバッファがあれば、
      コンピュータは &quot;Ready To Send&quot; をアサートします。
      だから、コンピュータのバッファもモデムのバッファも、
      飽和してオーバーフローするというようなことはありません。
      </para>

      <caution>
      <!--
       <para>The kernel's
       <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control is
       currently buggy.  Machines can take a significant time to write
       console messages if flow control is enabled but
       <acronym>CTS</acronym> will never be asserted (as occurs when
       there is no call present on a modem or no session on a null
       modem cable or cable to a terminal server).  As a result of the
       large number of kernel messages when the kernel is started a
       machine configured with the kernel's
       <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control can
       take many minutes to reboot.</para>
       -->
       <para>
       カーネルの 
       <acronym>CTS</acronym>/<acronym>RTS</acronym> 
       によるフロー制御は、現時点ではバグが多いです。
       フロー制御が有効になっていても、
       <acronym>CTS</acronym>
       がアサートされないと、
       コンソールメッセージの表示に著しく時間がかかることがあります
       （モデムに着信していなかったり、
       ヌルモデムケーブルやケーブルでターミナルサーバー接続しても、
       セッションが無い場合にこうなります）。
       カーネルのスタート時にカーネルメッセージが大量に出ると、
       その結果、カーネルの
       <acronym>CTS</acronym>/<acronym>RTS</acronym>
       フロー制御を組み込んで構成したマシンでは、
       リブートに何分も時間がかかることがあります。
       </para>

       <!--
       <para>The kernel's
       <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control
       cannot be recommended at this time.  The
       <citetitle>HOWTO</citetitle>'s author has a kernel patch
       available which he is seeking to have included in the
       mainstream kernel source code.</para>
       -->
       <para>
       ですから、現時点ではカーネルの
       <acronym>CTS</acronym>/<acronym>RTS</acronym>
       フロー制御はお奨めできません。
       筆者はカーネルパッチを持っています。
       これがカーネル本体に反映されることを強く希望しています。
       </para>

       <!--
       <para>The <acronym>CTS</acronym>/<acronym>RTS</acronym> flow
       control in user-space applications does not share the kernel's
       bugs and <acronym>CTS</acronym>/<acronym>RTS</acronym> flow
       control is still recommended for
       <application>getty</application>.</para>
       -->
       <para>
       しかし、ユーザー空間のアプリケーションで使用する
       <acronym>CTS</acronym>/<acronym>RTS</acronym>
       フロー制御はカーネルのバグとは無関係ですから、
       <application>getty</application>
       にはやはりこのフロー制御をお奨めします。
       </para>
      </caution>

      <figure id="preparation-setspeed-flow">
      <!--
       <title>Syntax for serial flow control, in extended Backus-Naur
       form</title>
       -->
       <title>拡張 BNF 記法によるシリアルフロー制御の構文</title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;flow_control&gt;</replaceable> ::= <replaceable>&lt;nil&gt;</replaceable> | <literal>r</literal>
-->
<replaceable>&lt;フロー制御&gt;</replaceable> ::= <replaceable>&lt;nil&gt;</replaceable> | <literal>r</literal>
</literallayout>
      </figure>
     </listitem>
    </varlistentry>
   </variablelist>

   <!--
   <para>At present the <acronym>RS-232</acronym> status lines are
   ignored by the kernel.  A kernel message will be printed even if
   Data Carrier Detect and Data Set Ready are not asserted.  This
   leads to the kernel messages being sent to a modem which is idle
   and in command mode.</para>
   -->
   <para>
   現時点では、カーネルは <acronym>RS-232</acronym>
   のステータスラインを無視します。
   ですから、
   &quot;Data Carrier Detect&quot; と &quot;Data Set Ready&quot; 
   がアサートされていなくても、カーネルメッセージは出力されます。
   この結果、カーネルメッセージは、
   アイドル状態でコマンドモードになっているモデムに送られることになります。
   </para>

   <!--
   <para>The console's slack interpretation of <acronym>CTS</acronym>,
   <acronym>DSR</acronym> and <acronym>DCD</acronym> makes it
   impossible to connect a serial console to an
   <acronym>RS-232</acronym> multi-drop circuit.  Multi-drop circuits
   have more than two computers on the circuit; they are traditionally
   four-wire, satelite or wireless services.</para>
   -->
   <para>
   コンソールが <acronym>CTS</acronym> や <acronym>DSR</acronym>、それに 
   <acronym>DCD</acronym> をいいかげんに解釈すると、
   <acronym>RS-232</acronym> のマルチドロップ回線に、
   シリアルコンソールを接続できなくなります。
   マルチドロップ回線には、コンピュータが 3 台以上あり、
   従来は 4 芯のケーブルか衛星通信サービス、
   あるいは無線サービスを使用しています。
   </para>

   <!--
   <para>The Linux kernel uses the syntax in <xref
   linkend="preparation-setspeed-modesyntax"> to describe the serial
   parameters.  Many boot loaders use a variation of the syntax used
   by the Linux kernel.</para>
   -->
   <para>
   Linux のカーネルでは
   <xref linkend="preparation-setspeed-modesyntax">
   にある構文を使って、シリアルパラメータを記述します。
   ブートローダーの多くが使っている構文は、
   Linux カーネルが使っている構文のバリエーションです。
   </para>

   <figure id="preparation-setspeed-modesyntax">
   <!--
    <title>Syntax for kernel serial parameters, in extended
    Backus-Naur form</title>
    -->
    <title>拡張 BNF 記法によるカーネルのシリアルパラメータ構文</title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;mode&gt;</replaceable> ::= <replaceable>&lt;speed&gt;</replaceable><replaceable>&lt;parity&gt;</replaceable><replaceable>&lt;data&gt;</replaceable><replaceable>&lt;flow_control&gt;</replaceable>
-->
<replaceable>&lt;モード&gt;</replaceable> ::= <replaceable>&lt;速度&gt;</replaceable><replaceable>&lt;パリティ&gt;</replaceable><replaceable>&lt;データ&gt;</replaceable><replaceable>&lt;フロー制御&gt;</replaceable>
</literallayout>
   </figure>

   <!--
   <para>Note that <replaceable>&lt;mode&gt;</replaceable> does not
   include <replaceable>&lt;stop&gt;</replaceable>.  The kernel
   assumes the number of stop bits to be one.  This shortcoming needs
   to be considered when deploying long <acronym>RS-232</acronym>
   cables.</para>
   -->
   <para>
   <replaceable>&lt;モード&gt;</replaceable> に 
   <replaceable>&lt;ストップビット&gt;</replaceable>
   が入っていないことに注意して下さい。
   カーネルは、ストップビットの数は当然 1 だと思っているのです。
   ですから長い <acronym>RS-232</acronym> ケーブルをつなげる場合には、
   この欠点を考慮する必要があります。
   </para>

   <!--
   <para>Most boot loaders default to <literal>9600n8</literal>.  A
   common default found on older terminals is
   <literal>9600e7</literal>.</para>
   -->
   <para>
   ほとんどのブートローダーでは、
   <literal>9600n8</literal> がデフォルトになっていますが、
   昔の端末になると、<literal>9600e7</literal>
   が一般的なデフォルトになっています。
   </para>

   <!--
   <para>Use <literal>9600n8</literal> if possible, as this is the
   default for most Linux software and modern devices.</para>
   -->
   <para>
   たいていの Linux ソフトウェアやモデム装置では 
   <literal>9600n8</literal> がデフォルトになっているので、
   できればこれを使って下さい。
   </para>

   <!--
   <para>This <citetitle>HOWTO</citetitle> always configures the
   serial speed and parameters, even where not strictly necessary.
   This is so that people configuring parameters other than the
   recommended and common default value <literal>9600n8</literal>
   will know what to alter.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> では、
   常にシリアルポートの速度とパラメータを設定しています。
   厳密には必要無いところであってもそうしています。
   こうしておけば、推奨値や一般的なデフォルトになっている
   <literal>9600n8</literal>
   以外のパラメータを設定している人たちに、
   変更すべき箇所がわかるからです。
   </para>

  </section> <!-- preparation-setspeed -->


  <section id="preparation-modem">
  <!--
   <title>Configure the modem or the null-modem cable</title>
   -->
   <title>モデムを設定する、あるいはヌルモデムケーブルを使う</title>

   <!--
   <para>If a modem is used, configure it to be a dumb modem at the
   port speed selected in <xref linkend="preparation-setspeed">.  If
   the modem accepts Hayes <acronym>AT</acronym> commands see <xref
   linkend="modem"> to dumb-down the modem.</para>
   -->
   <para>
   モデムを使う場合は、<xref linkend="preparation-setspeed">
   で選んだポート速度で動作するダムモデムになるように設定して下さい。
   そのモデムがヘイズの <acronym>AT</acronym> コマンドを受け付ける場合は、
   <xref linkend="modem">を参照して、モデムをダムモデムにして下さい。
   </para>

   <!--
   <para>Alternatively if a terminal and a null-modem cable are used
   see <xref linkend="serial-pc-terminal">, which discusses the pinout
   of the null modem cable.</para>
   -->
   <para>
   端末とヌルモデムケーブルを使う場合は、
   <xref linkend="serial-pc-terminal">
   を見て下さい。ここで、ヌルモデムケーブルのピン配置を論じています。
   </para>

  </section> <!-- preparation-modem -->


  <section id="preparation-terminal">
  <!--
   <title>Configure the terminal or the terminal emulator</title>
   -->
   <title>端末あるいは端末エミュレータを設定する</title>

   <!--
   <para>Configure the terminal to match the serial parameters.  The
   data bits, parity bits and stop bits must match.  If a modern
   &lsquo;smart&rsquo; modem is used then the bit speeds need not
   match.  If a dumb modem or a null modem cable is used then the bit
   speeds must match.</para>
   -->
   <para>
   使う端末は、シリアルパラメータに合わせて設定して下さい。
   データビットやパリティビット、
   それにストップビットが一致しなければなりません。
   最近の&lsquo;スマート&rsquo;モデムを使う場合は、
   ビットスピードを合わせる必要はありません。
   ダムモデムやあるいはヌルモデムケーブルを使用する場合は、
   ビットスピードを合わせる必要があります。
   </para>

   <!--
   <para>Set <acronym>CTS</acronym>/<acronym>RTS</acronym> handshaking
   on, <acronym>DTR</acronym>/<acronym>DSR</acronym> handshaking off
   and <acronym>XON</acronym>/<acronym>XOFF</acronym> handshaking off.
   Your equipment may call
   <acronym>CTS</acronym>/<acronym>RTS</acronym> handshaking or
   <acronym>DTR</acronym>/<acronym>DSR</acronym> handshaking
   &lsquo;hardware handshaking&rsquo; and may call
   <acronym>XON</acronym>/<acronym>XOFF</acronym> handshaking
   &lsquo;software handshaking&rsquo;.</para>
   -->
   <para>
   <acronym>CTS</acronym>/<acronym>RTS</acronym>
   のハンドシェークはオンにして、
   <acronym>DTR</acronym>/<acronym>DSR</acronym>
   のハンドシェークはオフに、
   そして <acronym>XON</acronym>/<acronym>XOFF</acronym>
   のハンドシェークもオフにしてください。
   お使いの装置では、
   <acronym>CTS</acronym>/<acronym>RTS</acronym>
   のハンドシェークや
   <acronym>DTR</acronym>/<acronym>DSR</acronym>
   のハンドシェークを&lsquo;ハードウェアハンドシェーク&rsquo;
   と呼んでいるかも知れません。
   また、<acronym>XON</acronym>/<acronym>XOFF</acronym>
   ハンドシェークのことを、
   &lsquo;ソフトウェアハンドシェーク&rsquo;と呼んでいることもあります。
   </para>

   <!--
   <para>Set automatic line wrapping on.  This allows all of a long
   console message to be read.</para>
   -->
   <para>
   行は自動的に折り返すように設定して下さい。
   これで長いコンソールメッセージが読めるようになります。
   </para>

   <!--
   <para>Set the received end of line characters to
   <acronym>LF</acronym> <acronym>CR</acronym> (line feed then
   carriage return).  Set the transmitted end of line characters to
   just <acronym>CR</acronym> (carriage return).</para>
   -->
   <para>
   受け取った行末文字は <acronym>LF</acronym> <acronym>CR</acronym>
   （つまり行送りしてから改行する）に設定して下さい。
   送信する場合の行末文字は <acronym>CR</acronym>（改行）だけにしてください。
   </para>

   <!--
   <para>If you are using a terminal emulator then it is best to
   choose to emulate the popular <acronym>DEC</acronym>
   <productname>VT100</productname> or
   <productname>VT102</productname> terminal.  Later terminals in the
   <acronym>DEC</acronym> <acronym>VT</acronym> range are compatible
   with the <productname>VT100</productname>. If this terminal is not
   available then try to emulate another terminal that implements
   <citetitle><acronym>ANSI</acronym> <acronym>X3.64-1979</acronym>
   Additional Controls for Use with American National Standard Code
   for Information Interchange</citetitle> (or its successor
   <citetitle> <acronym>ISO</acronym>/<acronym>IEC</acronym> 6429:1992
   <acronym>ISO</acronym> Information technology &mdash; Control
   functions for coded character sets</citetitle>).  For example, many
   emulators have a terminal called <literal>ANSI BBS</literal> which
   uses the <productname>IBM PC</productname> character set, the 16
   <productname>IBM PC</productname> colors, a 80 column by 25 line
   screen and a selection of <citetitle>X3.64-1979</citetitle> control
   sequences.</para>
   -->
   <para>
   端末エミュレータを使う場合に一番良いのは、
   一般的な <acronym>DEC</acronym>
   <productname>VT100</productname> 端末か 
   <productname>VT102</productname> 端末をエミュレートすることです。
   <acronym>DEC</acronym> <acronym>VT</acronym> シリーズの、
   それ以降の端末は <productname>VT100</productname> と互換性があります。
   この端末が使えない場合は、
   <citetitle><acronym>ANSI</acronym> <acronym>X3.64-1979</acronym>
   Additional Controls for Use with American National Standard Code
   for Information Interchange</citetitle> (あるいはその後継の
   <citetitle> <acronym>ISO</acronym>/<acronym>IEC</acronym> 6429:1992
   <acronym>ISO</acronym> Information technology &mdash; Control
   functions for coded character sets</citetitle>) を実装している、
   別の端末をエミュレートしてみて下さい。例えば、多くのエミュレータには
   <literal>ANSI BBS</literal> という端末があり、これは
   <productname>IBM PC</productname> の文字セットと、
   16 色の <productname>IBM PC</productname> カラー、
   それに 80 桁 25 行の画面と
   <citetitle>X3.64-1979</citetitle> の制御シーケンスを備えています。
   </para>

   <!--
   <para>See the <ulink
   url="http://www.tldp.org/HOWTO/Text-Terminal-HOWTO.html"><citetitle>Text-Terminal-HOWTO</citetitle></ulink>
   for much more information on configuring terminals.</para>
   -->
   <para>
   端末の設定に関する詳細は、
   <ulink url="http://www.tldp.org/HOWTO/Text-Terminal-HOWTO.html">
   <citetitle>Text-Terminal-HOWTO</citetitle></ulink> を参照して下さい。

   <footnote><para>
   邦訳は、
   <ulink url="http://www.linux.or.jp/JF/JFdocs/Text-Terminal-HOWTO.html">
   <citetitle>Text-Terminal-HOWTO</citetitle></ulink> です。
   </para></footnote>

   </para>

  </section> <!-- preparation-terminal -->

 </chapter> <!-- preparation -->

 <chapter id="bios">
 <!--
  <title>Optionally configure the <acronym>BIOS</acronym></title>
  -->
  <title>必要なら <acronym>BIOS</acronym> の設定を行なう</title>

  <!--
  <para>Some <acronym>BIOS</acronym>s provide support for serial
  consoles.  If your computer's <acronym>BIOS</acronym> is one of
  these you should investigate the extent of the support provided.
  Depending upon the extent of serial console support you may not need
  to explicitly configure the boot loader to use the serial
  port.</para>
  -->
  <para>
  <acronym>BIOS</acronym> によっては、
  シリアルコンソールをサポートしているものがあります。
  お使いのコンピュータの <acronym>BIOS</acronym> もそういった BIOS なら、
  サポートの程度を調査しておくといいでしょう。
  シリアルコンソールのサポート度合によっては、
  ブートローダーを明示的に設定しなくても、
  シリアルポートが使えるかも知れません。
  </para>

  <!--
  <para>The contributors to this <citetitle>HOWTO</citetitle> have
  encountered the following styles of <acronym>BIOS</acronym> support
  for serial consoles.</para>
  -->
  <para>
  この <citetitle>HOWTO</citetitle>
  に協力してくれた人たちが遭遇した <acronym>BIOS</acronym>
  では、シリアルコンソールのサポートは、次のようになっていました。
  </para>

  <variablelist>
   <varlistentry>
   <!--
    <term>Redirection of textual VGA output to the serial port</term>
    -->
    <term>
    VGA へのテキスト出力をそのままシリアルポートにリダイレクトしている
    </term>

    <listitem>
    <!--
     <para>The <acronym>BIOS</acronym> takes the interrupt 0x10
     &ldquo;video&rdquo; requests used to write to the screen and
     sends the characters that would have appeared on the screen to
     the serial port.  Characters recieved from the serial port are
     used to supply characters to <acronym>BIOS</acronym> interrupt
     0x16 &ldquo;read key&rdquo; requests.</para>
     -->
     <para>
     <acronym>BIOS</acronym> は画面に表示するために使っている
     0x10 という&ldquo;ビデオ&rdquo;の割り込み要求を捉えて、
     画面に出力するはずの文字をシリアルポートに送信します。
     シリアルポートで受信した文字は、
     &ldquo;キーの読みとり&rdquo; という、<acronym>BIOS</acronym>
     の 0x16 割り込み要求へ与える文字として使われます。
     </para>

     <!--
     <para>Any 16-bit application which uses the
     <acronym>BIOS</acronym> functions for outputing text to the
     screen and reading from the keyboard is redirected to the serial
     port.  This includes the <acronym>BIOS</acronym> itself, the boot
     loader, and 16-bit operating systems (such as
     <productname><acronym>MS-DOS</acronym></productname>).</para>
     -->
     <para>
     <acronym>BIOS</acronym> のこの機能を使って、画面へテキストを出力したり
     キーボードからの読み取りを行なっている 16 ビットのアプリケーション
     は、どれでもシリアルポートにリダイレクトされます。これには
     <acronym>BIOS</acronym> 自身も入るし、ブートローダーや 16 ビットの
     オペレーティングシステム（例えば 
     <productname><acronym>MS-DOS</acronym></productname> など）も
     含まれます。
     </para>

     <!--
     <para>When a 32-bit operating system (such as <systemitem
     class="osname">Linux</systemitem>, <systemitem
     class="osname">BSD</systemitem> or <systemitem
     class="osname">Windows NT/2000/XP</systemitem>) loads the 16-bit
     <acronym>BIOS</acronym> is no longer accessible and the
     <acronym>BIOS</acronym> can no longer be used for input and
     output.  The 32-bit operating system loads its own device drivers
     for this purpose.  These device drivers then need to provide the
     redirection of console <acronym>I/O</acronym> to the serial
     port.</para>
     -->
     <para>
     （<systemitem class="osname">Linux</systemitem>, <systemitem 
     class="osname">BSD</systemitem> あるいは <systemitem 
     class="osname">Windows NT/2000/XP</systemitem> といったような）
      32 ビットオペレーティングシステムの場合は、16 ビットの
      <acronym>BIOS</acronym> をロードしても、そのオペレーティングシステム
      ではもう使用できないので、
      その <acronym>BIOS</acronym> を入出力用には使えません。
      ですから、32 ビットのオペレーティングシステムは、
      32 ビット専用のデバイスドライバをロードします。
      これらのデバイスドライバは、コンソールの
      <acronym>I/O</acronym>
      をシリアルポートにリダイレクトする機能を備えている必要があります。
     </para>

     <!--
     <para>If your <acronym>BIOS</acronym> uses this technique then
     you should:</para>
     -->
     <para>
     自分の <acronym>BIOS</acronym> がこのテクニックを使っている場合は、
     次のようにしてください。
     </para>

     <procedure>
      <step>
      <!--
       <para>Configure the <acronym>BIOS</acronym> to redirect
       keyboard input and video output to the serial port.</para>
       -->
       <para>
       <acronym>BIOS</acronym> を設定して、キーボードからの入力と画面出力
       をシリアルポートにリダイレクトする。
       </para>
      </step>

      <step>
      <!--
       <para>Do not configure the boot loader, as the
       <acronym>BIOS</acronym> will redirect this 16-bit application's
       input and output to the serial port.</para>
       -->
       <para>
       ブートローダーの設定は変えないこと。というのは
       <acronym>BIOS</acronym>
       がこの 16 ビットアプリケーションの入出力を、
       シリアルポートにリダイレクトしてくれるからである。
       </para>
      </step>

      <step>
      <!--
       <para>Configure <systemitem class="osname">Linux</systemitem>
       to use the serial port as a console, as <systemitem
       class="osname">Linux</systemitem> is a 32-bit operating
       system.</para>
       -->
       <para>
       <systemitem class="osname">Linux</systemitem> の設定を変更して、
       シリアルポートをコンソールで使うようにすること。というのは、
       <systemitem class="osname">Linux</systemitem> が 32 ビットの
       オペレーティングシステムだからである。
       </para>
      </step>
     </procedure>
    </listitem>
   </varlistentry>

   <varlistentry>
   <!--
    <term><acronym>BIOS</acronym> configuration and power on self-test
    uses the serial port</term>
    -->
    <term>
    <acronym>BIOS</acronym>
    の設定および電源投入時のセルフテストでシリアルポートを使っている
    </term>

    <listitem>
    <!--
     <para>These <acronym>BIOS</acronym>s use the serial port for
     configuration and the power-on self-test, but do not redirect the
     interrupt 0x10 &ldquo;video&rdquo; requests interrupt 0x16
     &ldquo;read key&rdquo; requests to the serial port.</para>
     -->
     <para>
     この <acronym>BIOS</acronym> は、
     設定と電源投入時のセルフテスト用にシリアルポートを使っています。
     でも 0x10 の&ldquo;ビデオ&rdquo; 割り込み要求と、
     0x16 の&ldquo;キーボードの読みとり&rdquo; 割り込み要求を、
     シリアルポートにリダイレクトしません。
     </para>

     <!--
     <para>Some <acronym>BIOS</acronym>s which usually redirect all
     keyboard and video output to the serial port can be configured in
     only to redirect <acronym>BIOS</acronym> input and output.  Look
     for a <acronym>BIOS</acronym> configuration option similar to
     <guimenuitem>Cease redirection after boot</guimenuitem>.</para>
     -->
     <para>
     いくつかの <acronym>BIOS</acronym> は、通常キーボードと画面出力を、
     すべてシリアルポートにリダイレクトしていますが、 
     中には設定で 
     <acronym>BIOS</acronym>
     の入出力のリダイレクトだけにできるものがあります。
     <acronym>BIOS</acronym> の設定オプションで、
     <guimenuitem>Cease redirection after boot</guimenuitem> 
     （訳注：ブート後リダイレクトを止める）に似たものを探して下さい。
     </para>


     <!--
     <para>If your <acronym>BIOS</acronym> uses this technique or you
     choose to set <guimenuitem>Cease redirection after
     boot</guimenuitem> then you should:</para>
     -->
     <para>
     お使いの <acronym>BIOS</acronym> がこのテクニックを用いていたり、
     <guimenuitem>Cease redirection after boot</guimenuitem>
     を設定するつもりなら、以下のようにしてください。
     </para>

     <procedure>
      <step>
      <!--
       <para>Configure the <acronym>BIOS</acronym> to send its output
       to the serial port.</para>
       -->
       <para>
       <acronym>BIOS</acronym> を設定して、
       その出力をシリアルポートに送るようにする。
       </para>
      </step>

      <step>
      <!--
       <para>Configure the boot loader to use the serial port.</para>
       -->
       <para>ブートローダーを設定して、シリアルポートを使うようにする。</para>
      </step>

      <step>
      <!--
       <para>Configure <systemitem class="osname">Linux</systemitem>
       to use the serila port as the console, as <systemitem
       class="osname">Linux</systemitem> is a 32-bit operating
       system.</para>
       -->
       <para>
       <systemitem class="osname">Linux</systemitem>
       は 32 ビットオペレーティングシステムなので、
       <systemitem class="osname">Linux</systemitem>
       がシリアルポートをコンソールで使うように設定する。       
       </para>
      </step>
     </procedure>
    </listitem>
   </varlistentry>

   <varlistentry>
   <!--
    <term>Redirection of graphical <acronym>VGA</acronym> output to
    the serial port</term>
    -->
    <term>
    グラフィックの <acronym>VGA</acronym>
    出力をシリアルポートにリダイレクトしている
    </term>

    <listitem>
    <!--
     <para>Some graphical 32-bit operating systems do not provide
     their own facilities to send console output to the serial port.
     Some BIOSs attempt to overcome this shortcoming, using a
     propietary serial protocol to send graphical output to a remote
     serial client.</para>
     -->
     <para>
     グラフィックの 32 ビットオペレーティングシステムの中には、
     コンソール出力をシリアルポートに送るための、
     専用の機能が無いものがあります。 BIOS によっては、
     この欠点を克服しようとするものもあります。
     専用のシリアルプロトコルを使って、
     グラフィック出力をリモートのシリアルクライアントに送信するのです。
     </para>

     <!--
     <para>As these machines cannot be connected to from a standard
     terminal emulator this facility is best left unconfigured when
     using the <systemitem class="osname">Linux</systemitem> operating
     system.</para>
     -->
     <para>
     <systemitem class="osname">Linux</systemitem>
     オペレーティングシステムを使っている場合は、
     標準の端末エミュレータからはそういったマシンに接続できないので、
     この機能には手を触れずにおくのが一番です。
     </para>

     <procedure>
      <step>
      <!--
       <para>Configure the <acronym>BIOS</acronym> not to send output
       to the serial port.</para>
       -->
       <para>
       出力をシリアルポートに送らないように <acronym>BIOS</acronym>
       を設定する。
       </para>
      </step>

      <step>
      <!--
       <para>Configure the boot loader to use the serial port.</para>
       -->
       <para>ブートローダーを設定して、シリアルポートを使うようにする。</para>
      </step>

      <step>
      <!--
       <para>Configure <systemitem class="osname">Linux</systemitem>
       to use the serial port as the console.</para>
       -->
       <para>
       シリアルポートをコンソールで使うように
       <systemitem class="osname">Linux</systemitem>
       を設定する。
       </para>
      </step>
     </procedure>
    </listitem>
   </varlistentry>

   <varlistentry>
   <!--
    <term>No serial port facilities</term>
    -->
    <term>シリアルポート機能がない</term>

    <listitem>
    <!--
     <para>The <acronym>BIOS</acronym> cannot be accessed from the
     serial port, so power-on self-test messages cannot be
     seen.</para>
     -->
     <para>
     この <acronym>BIOS</acronym> はシリアルポートからアクセスできないので、
     電源投入時のセルフテストのメッセージがわかりません。
     </para>

     <!--
     <para>Note that <acronym>BIOS</acronym> may still be able to be
     configured remotely using the <filename
     class="devicefile">/dev/nvram</filename> device.  This takes some
     care.</para>
     -->
     <para>
     それでも <filename class="devicefile">/dev/nvram</filename>
     デバイスを使えば、
     遠隔地から <acronym>BIOS</acronym> を設定できるかもしれません。
     これを使う場合は注意して下さい。
     </para>

     <procedure>
      <step>
      <!--
       <para>Configure the boot loader to use the serial port.</para>
       -->
       <para>ブートローダーを設定して、シリアルポートを使うようにする。</para>
      </step>

      <step>
      <!--
       <para>Configure <systemitem class="osname">Linux</systemitem>
       to use the serial port as the console.</para>
       -->
       <para>
       <systemitem class="osname">Linux</systemitem> を設定して、
       シリアルポートをコンソールで使うようにする。
       </para>
      </step>
     </procedure>
    </listitem>
   </varlistentry>
  </variablelist>

  <!--
  <para>If you need to configure the boot loader to use the serial
  port then continue to <xref linkend="configure-boot-loader">.
  Otherwise go to directly to <xref linkend="configure-kernel"> to
  configure the kernel; this is done by configuring the boot loader to
  pass boot parameters to the <systemitem
  class="osname">Linux</systemitem> kernel.</para>
  -->
  <para>
  ブートローダーを設定してシリアルポートを使う必要がある場合は、
  <xref linkend="configure-boot-loader"> に進んで下さい。
  それ以外は、直接 
  <xref linkend="configure-kernel"> に行って、
  カーネルの構成変更を行なって下さい。
  これには、ブートローダーを設定して、ブートパラメータを 
  <systemitem class="osname">Linux</systemitem>
  カーネルに渡すという方法を使います。
  </para>

 </chapter> <!-- bios -->


 <chapter id="configure-boot-loader">
 <!--
  <title>Configure the boot loader</title>
  -->
  <title>ブートローダーを設定する</title>

  <!--
  <para>When a PC boots the CPU it runs code from Read-Only Memory.
  This code is the Basic Input/Output System, or
  <acronym>BIOS</acronym>.  The <acronym>BIOS</acronym> then loads a
  boot loader from the Master Boot Record of the first hard
  disk.<footnote>
  -->
  <para>
  PC が CPU をブートする際、
  CPU は読み出し専用メモリからコードを取り出して実行します。
  このコードが基本入出力システム、つまり
  <acronym>BIOS</acronym> です。
  それから、<acronym>BIOS</acronym>
  は最初のハードディスクのマスターブートレコードから、
  ブートローダーをロードします。

  <footnote>
  <!--
    <para>As usual with <productname><acronym>IBM
    PC/AT</acronym></productname> hardware &ldquo;loads a boot loader
    from the <acronym>MBR</acronym> of the first hard disk&rdquo; is a
    simplification.  <acronym>BIOS</acronym> settings permitting, the
    <acronym>MBR</acronym> can be loaded from the first two detected
    hard disks of any controller card containing a
    <acronym>BIOS</acronym> extension.  Thus the
    <acronym>MBR</acronym> can be loaded from one of the first two
    detected <acronym>IDE</acronym> disks and one of the first two
    detected <acronym>SCSI</acronym> disks.</para></footnote>
    -->
    <para>
    <productname><acronym>IBM PC/AT</acronym></productname>
    のハードウェアにはよくあることですが、
    &ldquo;最初のハードディスクの <acronym>MBR</acronym> から、
    ブートローダーをロードする&rdquo;
    というのは説明が簡単すぎます。
    <acronym>BIOS</acronym> の設定が許せば、
    <acronym>BIOS</acronym> 拡張を搭載しているコントローラカードなら、
    どれに接続されているハードディスクでも、
    そのうち最初に検出した二台のハードディスクから
    <acronym>MBR</acronym> がロードできます。したがって、
    最初に検出した二台の <acronym>IDE</acronym> ディスクのうちの一台と、
    最初に検出した二台の<acronym>SCSI</acronym> ディスクのうちの一台から、
    <acronym>MBR</acronym> はロードできます。
    </para></footnote>

    <!--
  In turn, the boot loader reads the operating system into memory and
  then runs it.<footnote>
  -->
  続いて、ブートローダーがオペレーティングシステムをメモリに読み込み、
  それを起動します。
  <footnote>

  <!--
    <para>Another simplification.  A 512 byte <acronym>MBR</acronym>
    is too small to contain a program big enough to load a complex
    operating system.  Thus most boot loaders have two stages, the
    first stage is located in the <acronym>MBR</acronym> and is only
    able to load the second stage of the boot loader from somewhere on
    a disk (such as the boot sector of the first partition).  The
    second stage of the boot loader presents the user interface and
    loads the operating system.</para></footnote></para>
    -->
    <para>
    これも説明が簡単すぎます。
    <acronym>MBR</acronym> が 512 バイトというのは小さ過ぎて、
    複雑なオペレーティングシステムを、
    充分ロードできるだけのプログラムは収まり切れません。
    ですから、ほとんどのブートローダーには段階が二つあります。
    最初の段階は <acronym>MBR</acronym> の中にあり、
    ディスクのどこか
    （例えば最初のパーティションのブートセクターのような場所）
    から、ブートローダーの第二段階をロードすることしかできません。
    ブートローダーの第二段階では、ユーザーインタフェースを表示して、
    オペレーティングシステムをロードします。
    </para>
    </footnote>
    </para>

    <!--
  <para>Neither the <acronym>BIOS</acronym> nor the boot loader are
  strictly necessary.  For example, there are <ulink
  url="http://www.acl.lanl.gov/linuxbios/">versions of Linux</ulink>
  that run directly from the flash memory which usually contains the
  <acronym>BIOS</acronym>.  Linux was originally designed to run
  without an interactive boot loader, by placing the kernel at
  particular sectors of the disk.</para>
  -->
  <para>
  <acronym>BIOS</acronym> もブートローダーも厳密に言えば不要です。例えば、
  <ulink url="http://www.acl.lanl.gov/linuxbios/">こういうバージョンの
  Linux</ulink> がありますが、これは、普通は <acronym>BIOS</acronym>
  を内蔵しているフラッシュメモリから直接起動します。
  Linux は、もともとカーネルをディスクの然るべきセクターに置いておけば、
  対話的なブートローダーが無くても走るようになっているのです。
  </para>

  <!--
  <para>The benefits of using a boot loader are:</para>
  -->
  <para>それでもブートローダーを使うのは、次のような利点があるからです。</para>

  <itemizedlist>
   <listitem>
   <!--
    <para>Multiple operating systems can be booted.  See the <ulink
    url="http://www.tldp.org/HOWTO/Linux+Windows-HOWTO/"><citetitle><systemitem
    class="osname">Linux</systemitem> + <systemitem
    class="osname">Windows</systemitem> HOWTO</citetitle></ulink> for
    more information.</para>
    -->
    <para>
    複数のオペレーティングシステムがブートできます。詳細は、
    <ulink url="http://www.tldp.org/HOWTO/Linux+Windows-HOWTO/">
    <citetitle><systemitem 
    class="osname">Linux</systemitem> + <systemitem 
    class="osname">Windows</systemitem> HOWTO</citetitle></ulink> 
    を参照してください。
    </para>
   </listitem>

   <listitem>
   <!--
    <para>Parameters can be passed to the kernel interactively.  This
    is useful for solving hardware problems; for example, some
    interrupt lines can be disabled, direct memory access to some
    drives can be disabled, and so on.  See the <ulink
    url="http://www.tldp.org/HOWTO/BootPrompt-HOWTO.html"><citetitle><systemitem
    class="osname">Linux</systemitem>
    BootPrompt-HOWTO</citetitle></ulink> for a list of kernel
    parameters.</para>
    -->
    <para>
    対話的にパラメータをカーネルに渡せます。
    ハードウェアの問題を解決する場合に、これが役に立ちます。
    例えば、割り込みラインのいくつかを無効にできるし、
    ドライブへのダイレクトメモリアクセスを無効にできる、等々です。
    カーネルパラメータのリストについては、
    <ulink url="http://www.tldp.org/HOWTO/BootPrompt-HOWTO.html">
    <citetitle><systemitem class="osname">Linux</systemitem>
    BootPrompt-HOWTO</citetitle></ulink> 
    <footnote>
    <para>
    邦訳は、<ulink url="http://www.linux.or.jp/JF/JFdocs/BootPrompt-HOWTO.html">
    <citetitle><systemitem class="osname"
    >Linux</systemitem>
    BootPrompt-HOWTO</citetitle></ulink> です。
    </para>
    </footnote>
    を参照してください。
    </para>
   </listitem>

   <listitem>
   <!--
    <para>Differing kernels can be interactively loaded. This is
    useful when deploying a new kernel, as it provides simple fallback
    to a proven kernel.</para>
    -->
    <para>
    別々のカーネルを対話的にロードできます。
    これは新しいカーネルをインストールする際に役立ちます。
    というのは、こうすれば、
    正しく動作するカーネルを簡単な予備にできるからです。
    </para>
   </listitem>
  </itemizedlist>

  <!--
  <para>For these reasons systems administrators want to be able to
  interactively control the boot loader from the serial
  console.</para>
  -->
  <para>
  こういった理由から、システム管理者はシリアルコンソールから、
  ブートローダーを対話的に管理可能にする必要があるのです。
  </para>

  <!--
  <para><application>LILO</application>,
  <application>GRUB</application> and
  <application>SYSLINUX</application> are popular boot loaders for
  <productname><acronym>IBM</acronym>
  <acronym>PC</acronym>s</productname>.  Find which of these boot
  loaders your <systemitem class="osname">Linux</systemitem>
  installation uses and then follow the instructions for your boot
  loader in the following section.</para>
  -->
  <para>
  <application>LILO</application> や
  <application>GRUB</application>、
  <application>SYSLINUX</application> は、
  <productname><acronym>IBM</acronym> <acronym>PC</acronym></productname> 
  では一般的なブートローダーです。お使いの
  <systemitem class="osname">Linux</systemitem>
  では、これらのうちどのブートローダーを使っているのかを調べて、
  そのブートローダーに該当するセクションの指示に従ってください。
  </para>

  <section id="configure-boot-loader-lilo">
  <!--
   <title>Configure the <application>LILO</application> boot
   loader</title>
   -->
   <title><application>LILO</application> ブートローダーを設定する</title>

   <!--
   <para><application>LILO</application> is the Linux Boot Loader used
   on Intel machines.  Other boot loaders for Intel machines exist,
   common alternatives are <application>GRUB</application> and
   <application>SYSLINUX</application>.  Equivalents to
   <application>LILO</application> exist for other processor
   architectures, their names are usually some play upon
   &lsquo;LILO&rsquo;.</para>
   -->
   <para>
   <application>LILO</application>
   はインテルのマシンで使われている Linux のブートローダーです。
   インテルのマシン用には他にもブートローダーが存在しますが、
   一般的な選択肢としては、<application>GRUB</application>
   と
   <application>SYSLINUX</application> になります。
   他のプロセッサアーキテクチャ用にも
   <application>LILO</application> と同等のものがあり、
   その名前は普通 &lsquo;LILO&rsquo; をもじったものになっています。
   </para>

   <!--
   <para><application>LILO</application> is documented in the
   <citetitle>lilo(8)</citetitle> and
   <citetitle>lilo.conf(5)</citetitle> manual pages; the
   <citetitle><application>LILO</application> Generic boot loader for
   Linux &hellip; User's Guide</citetitle> found in the file
   <filename>/usr/share/doc/lilo&hellip;/doc/User_Guide.ps</filename>;
   and the <ulink
   url="http://www.tldp.org/HOWTO/mini/LILO.html"><citetitle>LILO
   mini-HOWTO</citetitle></ulink>.</para>
   -->
   <para>
   <application>LILO</application> は
   <citetitle>lilo(8)</citetitle> と 
   <citetitle>lilo.conf(5)</citetitle>
   のマニュアルページで文書になっています。それに
   <citetitle><application>LILO</application> 
   Generic boot loader for Linux &hellip; User's Guide</citetitle>
   が <filename>/usr/share/doc/lilo&hellip;/doc/User_Guide.ps</filename>
   にあります。
   <ulink
   url="http://www.tldp.org/HOWTO/mini/LILO.html"><citetitle>LILO
   mini-HOWTO</citetitle></ulink> 

   <footnote><para>
   邦訳は、
   <ulink url="http://www.linux.or.jp/JF/JFdocs/LILO.html"><citetitle>LILO
   mini-HOWTO</citetitle></ulink> です。
   </para></footnote>

   もあります。
   </para>

   <!--
   <para>The <application>LILO</application> configuration is kept in
   the file <filename>/etc/lilo.conf</filename>.  The first part of
   the file applies to all images.  The following parts are
   <literal>image</literal> descriptions for each kernel.</para>
   -->
   <para>
   <application>LILO</application> の設定は、
   <filename>/etc/lilo.conf</filename> というファイルに保存されます。
   このファイルの最初の部分は、イメージすべてに適用するものです。
   それ以降の部分は、各カーネルごとに <literal>イメージ</literal>
   を記述する部分です。
   </para>

   <!--
   <para>Set <application>LILO</application> to use the serial port.
   The syntax of the serial line parameters follows that used by the
   kernel.</para>
   -->
   <para>
   <application>LILO</application> は、
   シリアルポートを使うように設定してください。
   シリアルラインのパラメータ構文は、カーネルが使うものに従います。
   </para>

   <figure id="configure-boot-loader-lilo-syntax">
   <!--
    <title>Syntax of <productname>LILO</productname>
    <command>serial</command> command, in
    <acronym>EBNF</acronym></title>
    -->
    <title>
    EBNF による <productname>LILO</productname> の
    <command>serial</command> コマンド書式
    </title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
serial=<replaceable>&lt;serial_port&gt;</replaceable>[,<replaceable>&lt;speed&gt;</replaceable>[<replaceable>&lt;parity&gt;</replaceable>[<replaceable>&lt;data&gt;</replaceable>]]]
-->
serial=<replaceable>&lt;シリアルポート&gt;</replaceable>[,<replaceable>&lt;速度&gt;</replaceable>[<replaceable>&lt;パリティ&gt;</replaceable>[<replaceable>&lt;データ&gt;</replaceable>]]]
</literallayout>
   </figure>

   <!--
   <para>Where the variables are the same as used by the kernel (shown
   in <xref linkend="preparation-setspeed-modesyntax">) and:</para>
   -->
   <para>
   ここで使っている変数はカーネルが使うものと同じです
   （<xref linkend="preparation-setspeed-modesyntax">
   に示してあります）。
   また、&lt;ポート&gt; は以下のようになっています。
   </para>

   <figure id="configure-boot-loader-lilo-ebnf">
   <!--
    <title><productname>LILO</productname> <command>serial</command>
    <acronym>EBNF</acronym> variables</title>
    -->
    <title>
    EBNF記法による <productname>LILO</productname> の 
    <command>serial</command> 変数
    </title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;serial_port&gt;</replaceable> ::= <literal>0</literal> | <literal>1</literal>| &hellip; | <literal>3</literal>
-->
<replaceable>&lt;シリアルポート&gt;</replaceable> ::= <literal>0</literal> | <literal>1</literal>| &hellip; | <literal>3</literal>
</literallayout>
   </figure>

   <!--
   <para>Our examples use <filename
   class="devicefile">/dev/ttyS0</filename>, which
   <application>LILO</application> knows as port
   <literal>0</literal>.</para>
   -->
   <para>
   この例では <filename class="devicefile">/dev/ttyS0</filename> 
   を使っています。
   <application>LILO</application>
   は、このデバイスがポート 0 だと認識しています。
   </para>

   <figure id="configure-boot-loader-lilo-configuration">
   <!--
    <title><application>LILO</application> boot loader sample configuration</title>
    -->
    <title><application>LILO</application> ブートローダーの設定サンプル</title>
<programlisting format="linespecific">
serial=0,9600n8
timeout=100
restricted
password=<replaceable>PASSWORD</replaceable></programlisting>
   </figure>

   <!--
   <para>The parameters <literal>restricted</literal> and
   <literal>password</literal> are used to avoid someone dialing in,
   booting the machine, and stepping around the Linux access
   permissions by typing:</para>
   -->
   <para>
   <literal>restricted</literal> パラメータ、
   および <literal>password</literal> パラメータを使用しているのは、
   誰かが電話を使って接続してそのマシンをブートし、
   以下のようにタイプして、
   Linux のアクセスパーミッションの辺りをうろつきまわる、
   というようなことをさせないようにするためです。
   </para>

   <example id="configure-boot-loader-lilo-hack">
   <!--
    <title>Using kernel parameters to avoid access permissions</title>
    -->
    <title>カーネルパラメータを使ってアクセスパーミッションを回避する</title>
<screen format="linespecific">
<prompt>LILO:</prompt> <command>linux init=/sbin/sash</command></screen>
   </example>

   <!--
   <para>The password should be good, as it can be used to gain
   <systemitem class="username">root</systemitem> access.  The
   <application>LILO</application> password is stored in plain text in
   the configuration file, so it should never be the same as any other
   password.  The permissions on the configuration file should be set
   so that only <systemitem class="username">root</systemitem> can
   read <filename>/etc/lilo.conf</filename>.</para>
   -->
   <para>
   パスワードは（他人が推測できない）良いものにしてください。というのは、
   パスワードを使えば、
   <systemitem class="username">root</systemitem>
   のアクセス権限を得られるからです。
   <application>LILO</application> のパスワードは、
   設定ファイルの中に平文で書かれています。
   ですから、けっして他のどんなパスワードとも同じものにしないでください。
   また、<filename>/etc/lilo.conf</filename> を読めるのが
   <systemitem class="username">root</systemitem> だけになるように、
   このファイルのパーミッションを設定してください。
   </para>

   <informalfigure>
    <screen format="linespecific">
<prompt>bash#</prompt> <command>chmod u=rw,go= /etc/lilo.conf</command></screen>
   </informalfigure>

   <!--
   <para><application>LILO</application> has an option to display a
   boot message.  This does not work with serial consoles.  Remove any
   lines like:</para>
   -->
   <para>
   <application>LILO</application> には、
   ブートメッセージを表示するオプションがありますが、
   これはシリアルコンソールでは動作しません。
   ですから以下のような行はすべて削除して下さい。
   </para>

   <informalfigure id="configure-boot-loader-lilo-remove-message">
<programlisting format="linespecific">
message=/boot/message</programlisting>
   </informalfigure>

   <!--
   <para><application>LILO</application> is now configured to use the
   serial console.  The kernels booted from
   <application>LILO</application> are yet to be configured to use the
   serial console.</para>
   -->
   <para>
   これで シリアルコンソールを使うための 
   <application>LILO</application> の設定ができました。
   しかし、まだ <application>LILO</application> でブートするカーネルを、
   シリアルコンソールを使うように設定しなければなりません。
   </para>

  </section> <!-- configure-boot-loader-lilo -->


  <section id="configure-boot-loader-grub">
  <!--
   <title>Configure the <application>GRUB</application> boot
   loader</title>
   -->
   <title><application>GRUB</application> ブートローダーを設定する</title>

   <!--
   <para><application>GRUB</application> is a boot loader designed to
   boot a wide range of operating systems from a wide range of
   filesystems.  <application>GRUB</application> is becoming popular
   due to the increasing number of possible root filesystems that can
   Linux can reside upon.</para>
   -->
   <para>
   <application>GRUB</application> は様々なファイルシステムから、
   様々な種類のオペレーティングシステムがブートできるように設計された
   ブートローダーです。 Linux がインストールできるルートファイルシステム
   の種類がますます多くなってきているので、
   <application>GRUB</application> は一般的になりつつあります。
   </para>

   <!--
   <para><application>GRUB</application> is documented in a
   <abbrev>GNU</abbrev> info file.  Type <command>info grub</command>
   to view the documentation.</para>
   -->
   <para>
   <application>GRUB</application> は <abbrev>GNU</abbrev>
   の info ファイル形式で文書になっています。この文書を見る場合は、
   <command>info grub</command> とタイプして下さい。
   </para>

   <!--
   <para>The <application>GRUB</application> configuration file is
   <filename>/boot/grub/menu.lst</filename>. Some distributions use
   another configuration file; for example, <productname>Red Hat
   Linux</productname> uses the file
   <filename>/boot/grub/grub.conf</filename>.</para>
   -->
   <para>
   <application>GRUB</application> の設定ファイルは、
   <filename>/boot/grub/menu.lst</filename> です。
   しかし、ディストリビューションによっては、
   別の設定ファイルを使っているものもあります。例えば、
   <productname>Red Hat Linux</productname> では
   <filename>/boot/grub/grub.conf</filename> というファイルを使っています。
   </para>

   <!--
   <para><application>GRUB</application> configuration files are
   interpreted.  Syntax errors will not be detected until the machine
   is rebooted, so take care not to make typing errors.</para>
   -->
   <para>
   <application>GRUB</application> の設定ファイルは実行時に解釈されます。
   このためマシンをリブートするまで、構文上のエラーは検出されません。
   ですから、タイプミスをしないように気をつけて下さい。
   </para>

   <!--
   <para>Edit the <application>GRUB</application> configuration file
   and remove any <command>splashimage</command> entries.  If these
   entries are not removed <application>GRUB</application> 0.90
   behaves very oddly, transferring control between the serial console
   and the attached monitor and keyboard.</para>
   -->
   <para>
   まず、<application>GRUB</application> の設定ファイルを編集して、
   <command>splashimage</command> のエントリは、いずれも削除して下さい。
   このエントリを削除しないと、 <application>GRUB</application> 0.90 では
   非常に奇妙な動きになります。シリアルコンソールと
   付属のモニター・キーボードとの間で、制御を転送しあってしまいます。
   </para>

   <!--
   <para>If there is not already a <command>password</command> command
   in the <application>GRUB</application> configuration file then
   create a hashed password, see <xref
   linkend="configure-boot-loader-grub-md5">.  The password should be
   good, as it can be used to gain <systemitem
   class="username">root</systemitem> access.</para>
   -->
   <para>
   <application>GRUB</application> の設定ファイルに
   <command>password</command> コマンドがまだ無い場合は、
   ハッシュしたパスワードを作って下さい。
   作り方は <xref linkend="configure-boot-loader-grub-md5"> を参照して下さい。
   このパスワードは <systemitem class="username">root</systemitem> 
   のアクセス権限を得るのに使えますから、
   良い（推定されにくい）ものにしてください。
   </para>

   <figure id="configure-boot-loader-grub-md5">
   <!--
    <title>Using <command>md5crypt</command> to create a hashed
    password for <application>GRUB</application> </title>
    -->
    <title>
    <command>md5crypt</command> を使って、
    <application>GRUB</application> 用のハッシュしたパスワードを作る
    </title>
<screen format="linespecific">
<prompt>grub></prompt> <command>md5crypt</command>
<prompt>Password</prompt>: <userinput>**********</userinput>
<computeroutput>Encrypted: $1$U$JK7xFegdxWH6VuppCUSIb.</computeroutput></screen>
   </figure>

   <!--
   <para>Use that hashed password in the
   <application>GRUB</application> configuration file, this is shown
   in <xref linkend="configure-boot-loader-grub-password">.</para>
   -->
   <para>
   このハッシュ化されたパスワードを
   <application>GRUB</application> の設定ファイルで使って下さい。
   この様子は、
   <xref linkend="configure-boot-loader-grub-password"> に示してあります。
   </para>

   <figure id="configure-boot-loader-grub-password">
   <!--
    <title><application>GRUB</application> configuration to require a
    password</title>
    -->
    <title>
    パスワードを要求するようにした <application>GRUB</application> の設定
    </title>
<programlisting>
password &hyphen;&hyphen;md5 $1$U$JK7xFegdxWH6VuppCUSIb.</programlisting>
   </figure> <!-- configure-boot-loader-grub-password -->

   <!--
   <para>Define the serial port and configure
   <application>GRUB</application> to use the serial port, as shown in
   <xref linkend="configure-boot-loader-grub-serial">.</para>
   -->
   <para>
   <xref linkend="configure-boot-loader-grub-serial"> に示すように、
   シリアルポートを定義し、 そのシリアルポートを使うように
   <application>GRUB</application> を設定して下さい。
   </para>

   <figure id="configure-boot-loader-grub-serial">
   <!--
    <title><application>GRUB</application> configuration for serial
    console</title>
    -->
    <title>
    シリアルコンソール用の <application>GRUB</application> の設定
    </title>
<programlisting>
serial &hyphen;&hyphen;unit=0 &hyphen;&hyphen;speed=9600 &hyphen;&hyphen;word=8 &hyphen;&hyphen;parity=no &hyphen;&hyphen;stop=1
terminal serial</programlisting>
   </figure> <!-- configure-boot-loader-grub-configuration -->

   <!--
   <para><literal>&hyphen;&hyphen;unit</literal> is the number of the
   serial port, counting from zero, unit 0 being
   <literal>COM1</literal>.</para>
   -->
   <para>
   <literal>&hyphen;&hyphen;unit</literal>
   というのはシリアルポートの番号のことで、
   ゼロから数えます。 unit 0 が <literal>COM1</literal> になります。
   </para>

   <!--
   <para>Note that the values of
   <literal>&hyphen;&hyphen;parity</literal> are spelt out in full:
   <literal>no</literal>, <literal>even</literal> and
   <literal>odd</literal>.  The common abbreviations
   <literal>n</literal>, <literal>e</literal> and <literal>o</literal>
   are <emphasis>not</emphasis> accepted.</para>
   -->
   <para>
   <literal>&hyphen;&hyphen;parity</literal> の値は省略せずに、
   <literal>no</literal> や <literal>even</literal> そして
   <literal>odd</literal> のように、一字一字はっきりと綴って下さい。
   <literal>n</literal> や <literal>e</literal> そして 
   <literal>o</literal> のような、一般によく使われる省略形は
   <emphasis>受け付けません</emphasis>。
   </para>

   <!--
   <para>If there is mysteriously no output on the serial port then
   suspect a syntax error in the <command>serial</command> or
   <command>terminal</command> commands.</para>
   -->
   <para>
   なぜだか分からないけれども、シリアルポート上に出力が何もない場合は、
   <command>serial</command> コマンド、または
   <command>terminal</command> コマンドの構文エラーを疑って下さい。
   </para>

   <!--
   <para>If you also want to use and attached monitor and keyboard as
   well as the serial port to control the
   <application>GRUB</application> boot loader then use the
   alternative configuration in <xref
   linkend="configure-boot-loader-grub-serialconsole">.</para>
   -->
   <para>
   シリアルポートの他に、付属のモニター・キーボードでも
   <application>GRUB</application> ブートローダーを管理したい場合は、
   <xref linkend="configure-boot-loader-grub-serialconsole"> 
   にある別の設定を使って下さい。
   </para>

   <figure id="configure-boot-loader-grub-serialconsole">
   <!--
    <title><application>GRUB</application> configuration for serial
    console and attached monitor and keybaord console</title>
    -->
    <title>
    シリアルコンソールおよび、付属のモニター・キーボード用の
    <application>GRUB</application> の設定
    </title>
<programlisting>
password &hyphen;&hyphen;md5 $1$U$JK7xFegdxWH6VuppCUSIb.
serial &hyphen;&hyphen;unit=0 &hyphen;&hyphen;speed=9600 &hyphen;&hyphen;word=8 &hyphen;&hyphen;parity=no &hyphen;&hyphen;stop=1
terminal &hyphen;&hyphen;timeout=10 serial console</programlisting>
   </figure> <!-- configure-boot-loader-grub-configuration -->

   <!--
   <para>When both the serial port and the attached monitor and
   keyboard are configured they will both ask for a key to be pressed
   until the timeout expires.  If a key is pressed then the boot menu
   is displayed to that device.  Disconcertingly, the other device
   sees nothing.</para>
   -->
   <para>
   シリアルポートと付属のモニター・キーボードの両方を設定すると、
   タイムアウトになるまで、両方のデバイスでキーの押下が要求されます。
   キーが押されると、キーを押したそのデバイスにブートメニューを表示します。
   ちょっとまごつくかもしれませんが、他のデバイスには何も現れません。
   </para>

   <!--
   <para>If no key is pressed then the boot menu is displayed on the
   whichever of <literal>serial</literal> or
   <literal>console</literal> is listed first in the
   <command>terminal</command> command.  After the timeout set by the
   <command>timeout</command> the default option set by
   <command>default</command> is booted.</para>
   -->
   <para>
   キーを何も押さないと、
   <command>terminal</command> コマンドで
   <literal>serial</literal> か 
   <literal>console</literal> 
   のいずれか最初に記述してある方にブートメニューを表示します。
   <command>timeout</command> で設定された時間が満了した後、
   <command>default</command>
   で設定されたデフォルトオプションの内容でブートします。
   </para>

   <figure id="configure-boot-loader-grub-press">
   <!--
    <title>GRUB output to default device when configured for serial
    and attached monior output</title>
    -->
    <title>
    シリアルコンソールと付属のモニター用に設定した場合の、
    デフォルトデバイスへの GRUB の出力
    </title>
<screen format="linespecific">
<computeroutput>Press any key to continue.
Press any key to continue.
Press any key to continue.
Press any key to continue.
Press any key to continue.
Press any key to continue.
Press any key to continue.
Press any key to continue.
Press any key to continue.
Press any key to continue.

    GRUB  version 0.90  (639K lower / 162752K upper memory)

 +-------------------------------------------------------------------------+
 | [ Red Hat Linux (2.4.9-21)   ]                                          |  
 |                                                                         |
 |                                                                         |
 +-------------------------------------------------------------------------+
      Use the ^ and v keys to select which entry is highlighted.
      Press enter to boot the selected OS or 'p' to enter a
      password to unlock the next set of features.

   The highlighted entry will be booted automatically in 10 seconds.
</computeroutput></screen>
   </figure>

   <!--
   <para>If you are not using a <acronym>VT100</acronym> terminal then
   the cursor keys may not work to select a
   <application>GRUB</application> menu item.  The instructions shown
   in <xref linkend="configure-boot-loader-grub-press"> are literally
   correct: <guilabel>Use the ^ and v keys</guilabel> means that the
   caret key
   (<keycombo><keycap>Shift</keycap><keycap>6</keycap></keycombo>)
   moves the cursor up and letter vee key (<keycap>V</keycap>) moves
   the cursor down.</para>
   -->
   <para>
   <acronym>VT100</acronym> 端末を使っていない場合は、
   カーソルキーを使った <application>GRUB</application> 
   のメニュー項目の選択ができないかもしれません。しかし、
   <xref linkend="configure-boot-loader-grub-press"> 
   に示したやり方は、文字とおり正しいのです。
   <guilabel>Use the ^ and v keys</guilabel> 
   は、キャレット(^)キー
   （<keycombo><keycap>Shift</keycap><keycap>6</keycap></keycombo>）
   でカーソルが上方に動き、
   v キー (<keycap>V</keycap>) でカーソルが下方に動くという意味です。
   </para>

   <!--
   <para>Note when configuring <application>GRUB</application> that
   there are two timeouts involved.  <computeroutput>Press any key to
   continue</computeroutput> is printed for <command>terminal
   &#045;&#045;timeout=10</command> seconds, waiting for someone on the keyboard
   or terminal to press a key to get the input focus.  Then the menu
   is displayed for <command>timeout 10</command> seconds before the
   default boot option is taken.</para>
   -->
   <para>
   <application>GRUB</application> の設定に際しては、
   2 種類のタイムアウトが関係していることに注意して下さい。
   <computeroutput>Press any key to continue</computeroutput> は
   <command>terminal --timeout=10</command> 
   コマンドで設定した時間だけ表示されており、
   キーボードか端末でだれかがキーを押して、
   入力フォーカスを取得するのを待っています。
   それからメニューが 
   <command>timeout 10</command> 秒間表示されて、
   その後でデフォルトのブートオプションが採用されます。
   </para>

   <!--
   <para>If the terminal attached to the serial port is not a real or
   emulated <productname>VT100</productname>, then force
   <application>GRUB</application> to use it's command line interface.
   This interface is much more difficult to use than
   <application>GRUB</application>'s menu interface; however, the
   command line interface does not assume the
   <productname>VT100</productname>'s terminal language.</para>
   -->
   <para>
   シリアルポートに取り付けた端末が、本物の 
   <productname>VT100</productname> 
   でも <productname>VT100</productname> 
   のエミュレータでもない場合は、
   <application>GRUB</application> 
   のコマンドラインインタフェースを使わざるをえません。
   このインタフェースは 
   <application>GRUB</application> 
   のメニューインタフェースよりもずっと難しいのですが、
   <productname>VT100</productname>
   の端末言語が無くても使えます。
   </para>

   <figure id="configure-boot-loader-grub-dumb">
   <!--
    <title><application>GRUB</application> configuration for command
    line interface for terminals other than
    <productname>VT100</productname></title>
    -->
    <title>
    <productname>VT100</productname> 
    以外の端末でコマンドラインインタフェースを使う場合の
    <application>GRUB</application> の設定
    </title>
<programlisting>
terminal &hyphen;&hyphen;timeout=10 &hyphen;&hyphen;dumb serial console</programlisting>
   </figure> <!-- configure-boot-loader-grub-dumb -->

   <!--
   <para>This <citetitle>HOWTO</citetitle> does not discuss the use of
   <application>GRUB</application>'s command line.  It is far too
   complex and error-prone to recommend for use on production
   machines.  Wizards will know to consult
   <application>GRUB</application>'s <application>info</application>
   manual for the commands required to boot the kernel.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> では、
   <application>GRUB</application>
   のコマンドラインの使用方法は説明しません。
   このコマンドラインははるかに複雑なうえエラーが出易いので、
   本番機で使うのはお奨めできません。
   名人なら、カーネルのブートに必要なコマンドは
   <application>GRUB</application> の <application>info</application> 
   マニュアルを調べればいいはずだということはわかっているでしょう。
   </para>

   <!--
   <para><application>GRUB</application>'s menu's can be edited
   interactively after <keycap>P</keycap> is pressed and the password
   supplied.  A better approach is to add menu items to boot the
   machine into alternative run levels.  A sample configuration
   showing a menu entry for the default run level and an alternative
   menu entry for single user mode (run level
   <wordasword>s</wordasword>) is shown in <xref
   linkend="configure-boot-loader-grub-runlevel">.  Remember to use
   the <command>lock</command> command to require a password for
   single user mode, as single user mode does not ask for a
   <systemitem class="osname">Linux</systemitem> password.</para>
   -->
   <para>
   <application>GRUB</application> のメニューは、
   <keycap>P</keycap> を押してパスワードを入力したら、
   対話的に編集できるようになります。
   メニュー項目を追加して、
   別のランレベルでマシンをブートするというのがうまいやり方です。
   デフォルトランレベル用のメニューエントリと
   シングルユーザーモード
   （ランレベル <wordasword>s</wordasword>）
   用のメニューエントリの設定サンプルを 
   <xref linkend="configure-boot-loader-grub-runlevel"> 
   に示してあります。 
   シングルユーザーモードについては、<command>lock</command> 
   コマンドを使ってパスワードを要求するのを忘れないで下さい。
   シングルユーザーモードでは、
   <systemitem class="osname">Linux</systemitem> のパスワードが
   要求されません。
   </para>

   <figure id="configure-boot-loader-grub-runlevel">
   <!--
    <title>Adding a single user mode option to the
    <application>GRUB</application> menu</title>
    -->
    <title>
    <application>GRUB</application>
    のメニューにシングルユーザーモードのオプションを追加する
    </title>
<programlisting>
password &hyphen;&hyphen;md5 $1$U$JK7xFegdxWH6VuppCUSIb.
default 0
title Red Hat Linux (2.4.9-21)
        root (hd0,0)
        kernel /vmlinuz-2.4.9-21 ro root=/dev/hda6
        initrd /initrd-2.4.9-21.img
title Red Hat Linux (2.4.9-21) single user mode
        lock
        root (hd0,0)
        kernel /vmlinuz-2.4.9-21 ro root=/dev/hda6 s
        initrd /initrd-2.4.9-21.img
</programlisting>
   </figure>

   <!--
   <para>File names in the <command>kernel</command> and
   <command>initrd</command> commands are relative to the
   <application>GRUB</application> installation directory, which is
   usually <filename class="directory">/boot/grub</filename>.  So
   <filename>/vmlinuz-2.4.9-21</filename> is actually the file
   <filename>/boot/grub/vmlinuz-2.4.9-21</filename>.</para>
   -->
   <para>
   <command>kernel</command>
   コマンドと
   <command>initrd</command>
   コマンドにあるファイル名は、
   <application>GRUB</application> 
   をインストールしたディレクトリからの相対パスになっています。
   <application>GRUB</application> をインストールするディレクトリは、
   普通 <filename class="directory">/boot/grub</filename> です。
   ですから、 <filename>/vmlinuz-2.4.9-21</filename> というのは、
   実際は <filename>/boot/grub/vmlinuz-2.4.9-21</filename>
   というファイルになります。
   </para>

   <!--
   <para><application>GRUB</application> is now configured to use the
   serial console.  The kernels booted from
   <application>GRUB</application> are yet to be configured to use the
   serial console.</para>
   -->
   <para>
   これでシリアルコンソールが使えるように
   <application>GRUB</application> を設定しました。
   しかしまだ、 <application>GRUB</application>
   からブートするカーネルを、
   シリアルコンソールが使えるように設定しなければなりません。
   </para>

  </section> <!-- configure-boot-grub -->


  <section id="configure-boot-loader-syslinux">
  <!--
   <title>Configure the <application>SYSLINUX</application> boot
   loader</title>
   -->
   <title><application>SYSLINUX</application> ブートローダーを設定する</title>

   <!--
   <para><ulink
   url="http://syslinux.zytor.com/"><productname><application>SYSLINUX</application></productname></ulink>
   is a boot loader that is installed on a MS-DOS floppy disk.  As
   directed by it's configuration file
   <filename>\SYSLINUX.CFG</filename> it will load one of the files
   from the floppy disk as a Linux kernel.</para>
   -->
   <para>
   <ulink url="http://syslinux.zytor.com/">
   <productname><application>SYSLINUX</application></productname></ulink>
   は、MS-DOS のフロッピーディスク上にインストールするブートローダーです。
   <filename>\SYSLINUX.CFG</filename>
   という設定ファイルが指示する内容にしたがって、
   フロッピーディスクからファイルを一つ、 Linux カーネルとしてロードします。
   </para>

   <!--
   <para><application>SYSLINUX</application> presents a simple text
   interface that can be used to select between canned configurations
   defined in the configuration file and can be used to add parameters
   to the kernel.</para>
   -->
   <para>
   <application>SYSLINUX</application>
   では簡単なテキストインタフェースを用意しています。
   これを使って、設定ファイルに定義してある、予め用意した設定の中から
   ロードするカーネルが選べるし、
   カーネルに与えるパラメータを追加することもできます。
   </para>

   <!--
   <para><application>ISOLINUX</application> and
   <application>PXELINUX</application> are variants of
   <application>SYSLINUX</application> for CD-ROMs and Intel's <ulink
   url="http://developer.intel.com/ial/wfm/"><productname>Preboot
   Execution Environment</productname></ulink>.</para>
   -->
   <para>
   <application>ISOLINUX</application> と 
   <application>PXELINUX</application> は 
   <application>SYSLINUX</application> の変形版で、
   CD-ROM と Intel の <ulink
   url="http://developer.intel.com/ial/wfm/"><productname>Preboot
   Execution Environment</productname></ulink> で使うものです。
   </para>

   <!--
   <para><application>SYSLINUX</application> supports a variety of
   serial port speeds, but it only supports eight data bits, no parity
   and one stop bit.  <application>SYSLINUX</application> supports the
   serial ports <filename class="devicefile">COM1:</filename> through
   to <filename class="devicefile">COM4:</filename>, as with most boot
   loaders these are written as port <literal>0</literal> through to
   port <literal>3</literal>.</para>
   -->
   <para>
   <application>SYSLINUX</application>
   は、シリアルポートの速度については、幅広くサポートしていますが、
   速度以外では、8 ビットデータ、
   パリティ無し、1 ストップビットしかサポートしていません。
   シリアルポートは、 
   <filename class="devicefile">COM1:</filename> から
   <filename class="devicefile">COM4:</filename>
   までをサポートしています。
   たいていのブートローダーでもそうですが、
   これを 0 から 3 までの数字に割り当てて、
   ポート <literal>0</literal> とかポート <literal>3</literal>
   というように書きます。
   </para>

   <!--
   <para>For <application>SYSLINUX</application> to support a serial
   console add a new <emphasis>first line</emphasis> to
   <filename>\SYSLINUX.CFG</filename>:</para>
   -->
   <para>
   <application>SYSLINUX</application> でシリアルポートをサポートする
   には、以下のコマンドを <filename>\SYSLINUX.CFG</filename> の 
   <emphasis>最初の行</emphasis> に新しく追加します。
   </para>


   <figure id="configure-boot-loader-syslinux-serial-syntax">
   <!--
    <title>Syntax of <productname>SYSLINUX</productname>
    <command>serial</command> command, in
    <acronym>EBNF</acronym></title>
    -->
    <title>
    <acronym>EBNF</acronym> 記法による、 <productname>SYSLINUX</productname> の
    <command>serial</command> コマンド構文
    </title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<literal>serial</literal> <replaceable>&lt;space&gt;</replaceable> <replaceable>&lt;serial_port&gt;</replaceable> [ <replaceable>&lt;space&gt;</replaceable> <replaceable>&lt;speed&gt;</replaceable> [ <replaceable>&lt;space&gt;</replaceable> <replaceable>&lt;syslinux_flow_control&gt;</replaceable> ] ]
-->
<literal>serial</literal> <replaceable>&lt;空白&gt;</replaceable> <replaceable>&lt;シリアルポート&gt;</replaceable> [ <replaceable>&lt;空白&gt;</replaceable> <replaceable>&lt;速度&gt;</replaceable> [ <replaceable>&lt;空白&gt;</replaceable> <replaceable>&lt;syslinux_フロー制御&gt;</replaceable> ] ]
</literallayout>
</figure>

<!--
   <para>The variables are the same as used by syntax descriptions in
   <xref linkend="preparation-setspeed-modesyntax"> and <xref
   linkend="configure-boot-loader-lilo-ebnf"> plus those in <xref
   linkend="configure-boot-loader-syslinux-ebnf">.</para>
   -->
   <para>
   この変数で使用している構文は、
   <xref linkend="preparation-setspeed-modesyntax">
   と
   <xref linkend="configure-boot-loader-lilo-ebnf">、
   さらに 
   <xref linkend="configure-boot-loader-syslinux-ebnf">
   で使っているものと同じです。
   </para>

   <figure id="configure-boot-loader-syslinux-ebnf">
   <!--
    <title><productname>SYSLINUX</productname>
    <command>serial</command> <acronym>EBNF</acronym> variables</title>
    -->
    <title>
    <acronym>EBNF</acronym> 記法による、 
    <productname>SYSLINUX</productname> の <command>serial</command> 変数
    </title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;space&gt;</replaceable> ::= &lsquo;<literal> </literal>&rsquo;
<replaceable>&lt;syslinux_flow_control&gt;</replaceable> ::= <replaceable>&lt;hex_digits&gt;</replaceable>
<replaceable>&lt;hex_digits&gt;</replaceable> ::= <literal>0x</literal><replaceable>&lt;hex_digit&gt;</replaceable><replaceable>&lt;hex_digit&gt;</replaceable><replaceable>&lt;hex_digit&gt;</replaceable>
<replaceable>&lt;hex_digit&gt;</replaceable> ::= <literal>0</literal> | <literal>1</literal> | &hellip; | <literal>9</literal> | <literal>a</literal> | <literal>b</literal> | &hellip; | <literal>f</literal></literallayout>
-->
<replaceable>&lt;空白&gt;</replaceable> ::= &lsquo;<literal> </literal>&rsquo;
<replaceable>&lt;syslinux_フロー制御&gt;</replaceable> ::= <replaceable>&lt;16 進数字列&gt;</replaceable>
<replaceable>&lt;16 進数字列&gt;</replaceable> ::= <literal>0x</literal><replaceable>&lt;16 進数字&gt;</replaceable><replaceable>&lt;16 進数字&gt;</replaceable><replaceable>&lt;16 進数字&gt;</replaceable>
<replaceable>&lt;16 進数字&gt;</replaceable> ::= <literal>0</literal> | <literal>1</literal> | &hellip; | <literal>9</literal> | <literal>a</literal> | <literal>b</literal> | &hellip; | <literal>f</literal></literallayout>
   </figure>

   <!--
   <para>The <replaceable>&lt;syslinux_flow_control&gt;</replaceable>
   variable controlling the <acronym>RS-232</acronym> status and flow
   control signals is optional.  If your null-modem cable does not
   present any status or handshaking signals then do not use it.  The
   value of <replaceable>&lt;syslinux_flow_control&gt;</replaceable>
   is calculated by adding the hexadecimal values for the desired flow
   control behaviours listed in <xref
   linkend="configure-boot-loader-syslinux-flowcontrol">.</para>
   -->
   <para>
   <replaceable>&lt;syslinux_フロー制御&gt;</replaceable> 変数は
   <acronym>RS-232</acronym> のステータスを管理するもので、
   フロー制御信号はオプションです。ご自分のヌルモデムケーブルに
   ステータス信号やハンドシェーク信号が何も現れない場合は、
   この変数を使わないでください。
   <replaceable>&lt;syslinux_フロー制御&gt;</replaceable> の値は、
   <xref linkend="configure-boot-loader-syslinux-flowcontrol">
   にリストしてあるフロー制御の動作のうち、
   望ましい値を 16 進数で追加すれば計算されます。
   </para>

   <!--
   <para>The behaviours for a correctly-wired null-modem cable or a
   correctly configured modem are marked &ldquo;Required for full
   <acronym>RS-232</acronym> compliance&rdquo; in the table.  The sum
   of these values is <literal>0xab3</literal>.</para>
   -->
   <para>
   正しく結線したヌルモデムケーブルや、
   正しい設定のモデムを使用するうえで必要なことは、
   表中の &ldquo;<acronym>RS-232</acronym> の完全準拠に必要か？&rdquo; 
   の欄で示してあります。
   これらの値の合計は <literal>0xab3</literal> になります。
   </para>

   <table frame="topbot" colsep="0" rowsep="0" id="configure-boot-loader-syslinux-flowcontrol">
   <!--
    <title><productname>SYSLINUX</productname> flow control
    bitmap</title>
    -->
    <title>
    <productname>SYSLINUX</productname> のフロー制御ビットマップ
    </title>
    <tgroup cols="3" align="center">
     <thead valign="bottom">
      <row rowsep="1">
      <!--
       <entry><para>Flow control behaviour</para></entry>
       <entry><para>Hex value</para></entry>
       <entry><para>Required for full <acronym>RS-232</acronym>
       compliance?</para></entry>
       -->
       <entry><para>フロー制御の動作</para></entry>
       <entry><para>16 進数値</para></entry>
       <entry><para>以下の各信号の制御は 
       <acronym>RS-232</acronym> への完全準拠に必要か？</para></entry>
      </row>
     </thead>
     <tbody>
      <row>
      <!--
       <entry align="left"><para>Assert DTR</para></entry>
       <entry><para>0x001</para></entry>
       <entry><para>Yes</para></entry>
       -->
       <entry align="left"><para>DTR をアサートする</para></entry>
       <entry><para>0x001</para></entry>
       <entry><para>必要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Assert RTS</para></entry>
       <entry><para>0x002</para></entry>
       <entry><para>Yes</para></entry>
       -->
       <entry align="left"><para>RTS をアサートする</para></entry>
       <entry><para>0x002</para></entry>
       <entry><para>必要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Wait for CTS assertion</para></entry>
       <entry><para>0x010</para></entry>
       <entry><para>Yes</para></entry>
       -->
       <entry align="left"><para>CTS のアサートを待つ</para></entry>
       <entry><para>0x010</para></entry>
       <entry><para>必要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Wait for DSR assertion</para></entry>
       <entry><para>0x020</para></entry>
       <entry><para>Yes</para></entry>
       -->
       <entry align="left"><para>DSR のアサートを待つ</para></entry>
       <entry><para>0x020</para></entry>
       <entry><para>必要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Wait for RI assertion</para></entry>
       <entry><para>0x040</para></entry>
       <entry><para>No</para></entry>
       -->
       <entry align="left"><para>RI のアサートを待つ</para></entry>
       <entry><para>0x040</para></entry>
       <entry><para>不要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Wait for DCD assertion</para></entry>
       <entry><para>0x080</para></entry>
       <entry><para>Yes</para></entry>
       -->
       <entry align="left"><para>DCD のアサートを待つ</para></entry>
       <entry><para>0x080</para></entry>
       <entry><para>必要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Ignore input unless CTS asserted</para></entry>
       <entry><para>0x100</para></entry>
       <entry><para>No</para></entry>
       -->
       <entry align="left"><para>CTS がアサートされない限り入力を無視する</para></entry>
       <entry><para>0x100</para></entry>
       <entry><para>不要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Ignore input unless DSR asserted</para></entry>
       <entry><para>0x200</para></entry>
       <entry><para>Yes</para></entry>
       -->
       <entry align="left"><para>DSR がアサートされない限り入力を無視する</para></entry>
       <entry><para>0x200</para></entry>
       <entry><para>必要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Ignore input unless RI asserted</para></entry>
       <entry><para>0x400</para></entry>
       <entry><para>No</para></entry>
       -->
       <entry align="left"><para>RI がアサートされない限り入力を無視する</para></entry>
       <entry><para>0x400</para></entry>
       <entry><para>不要</para></entry>
      </row>
      <row>
      <!--
       <entry align="left"><para>Ignore input unless DCD asserted</para></entry>
       <entry><para>0x800</para></entry>
       <entry><para>Yes</para></entry>
       -->
       <entry align="left"><para>DCD がアサートされない限り入力を無視する</para></entry>
       <entry><para>0x800</para></entry>
       <entry><para>必要</para></entry>
      </row>
     </tbody>
    </tgroup>
   </table>

   <!--
   <para>Our preferred configuration of 9600<abbrev>bps</abbrev>,
   port <literal>0</literal>, full <acronym>RS-232</acronym> status
   signals and <acronym>CTS</acronym>/<acronym>RTS</acronym> flow
   control is written as:</para>
   -->
   <para>
   ここで設定したい、
   9600<abbrev>bps</abbrev>,
   ポート <literal>0</literal>, 完全な <acronym>RS-232</acronym>
   ステータス信号、<acronym>CTS</acronym>/<acronym>RTS</acronym>
   のフロー制御といった内容は次のように書きます。
   </para>

   <informalexample>
<programlisting>
serial 0 9600 0xab3</programlisting>
   </informalexample>

   <tip id="tip-syslinux-flowcontrol">
   <!--
    <para>When using this configuration <acronym>SYSLINUX</acronym>
    will not display anything and will not accept any typed character
    until the <acronym>RS-232</acronym> status signals show a
    connected modem call (or a connected terminal if you are using a
    null-modem cable).</para>
    -->
    <para>
    この設定を使用すると、 モデムが電話で接続されたこと
    （あるいは、ヌルモデムケーブルを使っていれば、端末がつながったこと）を
    <acronym>RS-232</acronym> のステータス信号が示すまで、
    <acronym>SYSLINUX</acronym>
    は何も表示しないし、キーボードでタイプしたどんな文字も受け付けません。
    </para>
   </tip>

   <!--
   <para>If you have a null modem cable with no RS-232 status signals
   and no flow control then use:</para>
   -->
   <para>
   お持ちのヌルモデムケーブルに RS-232 のステータス信号が無く、
   無手順なら、以下のコマンドを使って下さい。
   </para>

   <informalexample>
<programlisting>
serial 0 9600</programlisting>
   </informalexample>

   <!--
   <para>Remember that the <command>serial</command> command must be
   the first line in <filename>\SYSLINUX.CFG</filename>.</para>
   -->
   <para>
   忘れないで下さい。
   <command>serial</command>
   は
   <filename>\SYSLINUX.CFG</filename>
   の中の最初の行でなければなりません。
   </para>

  </section> <!-- configure-boot-loader-syslinux -->

 </chapter> <!-- configure-boot-loader -->


 <chapter id="configure-kernel">
 <!--
  <title>Configure <systemitem class="osname">Linux</systemitem>
  kernel</title>
  -->
  <title>
  <systemitem class="osname">Linux</systemitem> カーネルの設定変更
  </title>

  <!--
  <para>The <systemitem class="osname">Linux</systemitem> kernel is
  configured to use a serial console by passing it the
  <literal>console</literal> parameter.  The
  <literal>console</literal> parameter can be given repeatedly; in
  that case output is sent to all consoles and input is taken from the
  last listed console.  The last <literal>console</literal> is the one
  Linux uses as the <filename
  class="devicefile">/dev/console</filename> device.</para>
  -->
  <para>
  <systemitem class="osname">Linux</systemitem>
  カーネルは設定を変更し、
  与えられた <literal>console</literal>
  パラメータを用いてシリアルコンソールを使うようにします。
  <literal>console</literal> パラメータは繰り返し与えることができます。
  その場合出力はすべてのコンソールに送られ、
  入力は一番最後にリストしてあるコンソールから取得します。
  この一番最後の <literal>console</literal> は Linux が 
  <filename class="devicefile">/dev/console</filename>
  デバイスに使うものです。
  </para>

  <!--
  <para>The syntax of the <literal>console</literal> parameter is
  given in <xref linkend="configure-kernel-syntax">.</para>
  -->
  <para>
  <literal>console</literal> のパラメータ構文は 
  <xref linkend="configure-kernel-syntax"> に示してあります。
  </para>

  <figure id="configure-kernel-syntax">
  <!--
   <title>Kernel <literal>console</literal> syntax, in EBNF</title>
   -->
   <title>EBNF 記法によるカーネルの <literal>console</literal> 構文</title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<literal>console=ttyS</literal><replaceable>&lt;serial_port&gt;</replaceable>[<literal>,</literal><replaceable>&lt;mode&gt;</replaceable>]
<literal>console=tty</literal><replaceable>&lt;virtual_terminal&gt;</replaceable>
<literal>console=lp</literal><replaceable>&lt;parallel_port&gt;</replaceable>
<literal>console=ttyUSB</literal>[<replaceable>&lt;usb_port&gt;</replaceable>[<literal>,</literal><replaceable>&lt;mode&gt;</replaceable>]
-->
<literal>console=ttyS</literal><replaceable>&lt;シリアルポート&gt;</replaceable>[<literal>,</literal><replaceable>&lt;モード&gt;</replaceable>]
<literal>console=tty</literal><replaceable>&lt;仮想端末&gt;</replaceable>
<literal>console=lp</literal><replaceable>&lt;パラレルポート&gt;</replaceable>
<literal>console=ttyUSB</literal>[<replaceable>&lt;USBポート&gt;</replaceable>[<literal>,</literal><replaceable>&lt;モード&gt;</replaceable>]
</literallayout>
  </figure>

  <!--
  <para><replaceable>&lt;serial_port&gt;</replaceable> is the number
  of the serial port.  This is defined in <xref
  linkend="configure-boot-loader-lilo-ebnf"> and discussed in <xref
  linkend="preparation-setport">.  The examples in this
  <citetitle>HOWTO</citetitle> use the first serial port, giving
  <replaceable>&lt;serial_port&gt;</replaceable> the value
  <literal>0</literal>, which in turn gives kernel parameter
  <literal>console=ttyS0</literal>.</para>
  -->
  <para>
  <replaceable>&lt;シリアルポート&gt;</replaceable> 
  はシリアルポートの番号です。
  これは <xref linkend="configure-boot-loader-lilo-ebnf">
  で定義してありますし、
  <xref linkend="preparation-setport"> で説明しています。
  この <citetitle>HOWTO</citetitle> の例では、
  最初のシリアルポートを使い、
  <replaceable>&lt;シリアルポート&gt;</replaceable>
  に <literal>0</literal> という値を与えています。
  そして今度はこれが、カーネルパラメータに
  <literal>console=ttyS0</literal> 
  という値を渡しています。
  </para>

  <!--
  <para>If you are using the <application>devfs</application> device
  filesystem with your Linux installation the kernel parameter for the
  first serial port is still <literal>ttyS0</literal>, even though the
  first serial device is no longer known as <filename
  class="devicefile">/dev/ttyS0</filename> but as <filename
  class="devicefile">/dev/ttys/0</filename>.</para>
  -->
  <para>
  ご自分の Linux 機で
  <application>devfs</application> 
  デバイスファイルシステムを使っている場合、
  最初のシリアルポートに対するカーネルパラメータは、
  やはり <literal>ttyS0</literal> になります。
  これは、
  この最初のシリアルデバイスが、
  <filename class="devicefile">/dev/ttyS0</filename> ではなく、
  <filename class="devicefile">/dev/ttys/0</filename> だとしても、
  そうなります。
  </para>

  <!--
  <para><replaceable>&lt;mode&gt;</replaceable> is defined in <xref
  linkend="preparation-setspeed-modesyntax"> and is discussed in <xref
  linkend="preparation-setspeed">.  The examples in this
  <citetitle>HOWTO</citetitle> use 9600 bits per second, one start
  bit, eight data bits, no parity, one stop bit, and no
  <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control giving
  <replaceable>&lt;mode&gt;</replaceable> the value of
  <literal>9600n8</literal>.  When the current kernel flow control
  bugs are corrected this <citetitle>HOWTO</citetitle> will once again
  recommend the value <literal>9600n8r</literal>.</para>
  -->
  <para>
  <replaceable>&lt;モード&gt;</replaceable> は、
  <xref linkend="preparation-setspeed-modesyntax"> で定義してあります。
  さらに、<xref linkend="preparation-setspeed"> で説明しています。
  この <citetitle>HOWTO</citetitle> の例で使用しているのは、
  速度が 9600ビット毎秒、1 スタートビット、
  データは 8 ビット、パリティ無し、1 ストップビット、
  および
  <acronym>CTS</acronym>/<acronym>RTS</acronym>
  によるフロー制御無しです。
  ですから <replaceable>&lt;モード&gt;</replaceable> には 
  <literal>9600n8</literal> という値を与えています。
  しかし、現在のカーネルにあるフロー制御のバグが修正された時は、
  この <citetitle>HOWTO</citetitle> で、再度
  <literal>9600n8r</literal> を推奨します。
  </para>

  <!--
  <para><replaceable>&lt;usb_port&gt;</replaceable> can specify the
  address of a <acronym>USB</acronym> dongle containing a serial port
  to be used as a serial console.<footnote>
  -->
  <para>
  <replaceable>&lt;USBポート&gt;</replaceable> には、
  シリアルコンソールに使うシリアルポートを搭載している、
  <acronym>USB</acronym> ドングル
  <footnote>

  <!--
    <para>A serial console attached to a <acronym>USB</acronym> dongle
    is only available in Linux kernel version 2.5.7 and later.  The
    2.5 series of kernels are developer's kernels and are not ready
    for production use.</para></footnote>
    -->
    <para>
    <acronym>USB</acronym> ドングルに付けたシリアルコンソールは 
    Linux のバージョン 2.5.7 以降のカーネルでのみ使用可能です。 
    2.5 シリーズのカーネルは開発者向けのバージョンであり、本番用
    にすぐ使えるものではありません。
    </para>
    </footnote>

    のアドレスが指定できます。
    <!--
  For example, the serial port <literal>console=ttyS0,9600n8</literal>
  when moved to a <acronym>USB</acronym> serial dongle would be
  written as <literal>console=ttyUSB0,9600n8</literal>. The
  <acronym>USB</acronym> subsystem is started rather late in the boot
  process, console messages printed during boot before the
  <acronym>USB</acronym> subsystem is loaded will be lost.</para>
  -->
  例えば、 <literal>console=ttyS0,9600n8</literal> というシリアルポートは、 
  <acronym>USB</acronym> のシリアルドングルに移すと、 
  <literal>console=ttyUSB0,9600n8</literal> と書くことになります。
  <acronym>USB</acronym> サブシステムがスタートするのはブートする過程の
  むしろ最後のほうなので、 <acronym>USB</acronym> サブシステムのロード
  前に出たコンソールメッセージは失われます。
  </para>

  <!--
  <para>With no <literal>console</literal> parameter the kernel will
  use the first virtual terminal, which is <filename
  class="devicefile">/dev/tty0</filename>.  A user at the keyboard
  uses this virtual terminal by pressing
  <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap></keycombo>.</para>
  -->
  <para>
  <literal>console</literal> パラメータを何も付けないと、
  カーネルは
  <filename class="devicefile">/dev/tty0</filename> という、
  最初の仮想端末を使います。
  ユーザーはキーボードで 
  <keycombo><keycap>Ctrl</keycap><keycap>Alt</keycap><keycap>F1</keycap></keycombo>
   と押して、この仮想端末を使用します。
  </para>

  <!--
  <para>If your computer contains a video card then we suggest that
  you also configure it as a console.  This is done with the kernel
  parameter <literal>console=tty0</literal>.</para>
  -->
  <para>
  お使いのコンピュータにビデオカードがあるなら、
  それもコンソールで使えるように設定したらどうでしょうか。
  カーネルパラメータの 
  <literal>console=tty0</literal> を使えばそうなります。
  </para>

  <!--
  <para>For computers with both a video card and a serial console in
  the port marked &lsquo;<acronym>COM1:</acronym>&rsquo; this
  <citetitle>HOWTO</citetitle> suggests the kernel parameters:</para>
  -->
  <para>
  ビデオカードを搭載しており、&lsquo;<acronym>COM1:</acronym>&rsquo;
  という印のポートにシリアルコンソールも付いているコンピュータについては、
  この <citetitle>HOWTO</citetitle>
  では次のカーネルパラメータをお奨めします。
  </para>

  <figure id="configure-kernel-parameters-video">
  <!--
   <title>Recommended kernel parameters, <acronym>PC</acronym>s with
   video card</title>
   -->
   <title>
   ビデオカード付 <acronym>PC</acronym> で推奨するカーネルパラメータ
   </title>
<programlisting format="linespecific">
console=tty0 console=ttyS0,9600n8
</programlisting>
  </figure>  <!-- configure-kernel-parameters-video -->

  <!--
  <para>Kernel messages will appear on both the first virtual terminal
  and the serial port.  Messages from the
  <application>init</application> system and the system logger will
  appear only on the first serial port.  This can be slightly
  confusing when looking at the attached monitor: the machine will
  appear to boot and then hang.  Don't panic, the
  <application>init</application> system has started but is now
  printing messages to the serial port but is printing nothing to the
  screen.  If a <application>getty</application> has been configured
  then a <computeroutput>login:</computeroutput> prompt will
  eventually appear on the attached monitor.</para>
  -->
  <para>
  カーネルメッセージは、最初の仮想端末とシリアルポートの両方に現れます。
  ですが、<application>init</application>
  システムとシステムログ採取プログラムが出すメッセージは、
  最初のシリアルポートにしか現れません。
  ですから、付属のモニターを見ると、若干混乱するかもしれません。
  マシンがブートして、それからハングするように見えるからです。
  でもうろたえないで。
  <application>init</application> システムはスタートしています。
  でもその時は、シリアルポートにはメッセージを表示していますが、
  付属モニターの画面には何も表示していないのです。
  <application>getty</application> を設定していれば、
  最終的には <computeroutput>login:</computeroutput>
  プロンプトが、付属のモニター上に現れます。
  </para>

  <!--
  <para>For <acronym>PC</acronym>s without a video card, this
  <citetitle>HOWTO</citetitle> suggests the kernel parameters:</para>
  -->
  <para>
  ビデオカードが付いていない <acronym>PC</acronym> については、
  この <citetitle>HOWTO</citetitle> では次のようなカーネルパラメータを
  お奨めします。
  </para>

  <figure id="configure-kernel-parameters-novideo">
  <!--
   <title>Recommended kernel parameters, <acronym>PC</acronym>s
   without video card</title>
   -->
   <title>
   ビデオカード無しの <acronym>PC</acronym> で推奨するカーネルパラメータ
   </title>
<programlisting format="linespecific">
console=ttyS0,9600n8
</programlisting>
  </figure>  <!-- configure-kernel-parameters-video -->

  <!--
  <para>These parameters are passed to the booting kernel by the boot
  loader.  Next we will configure the boot loader used by your
  <systemitem class="osname">Linux</systemitem> installation to pass
  the <literal>console</literal> parameters to the kernel.</para>
  -->
  <para>
  これらのパラメータは、ブートローダーがブートするカーネルに渡します。
  次に、ご自分の
  <systemitem class="osname">Linux</systemitem>
  機で使用しているブートローダーを設定し、
  <literal>console</literal> パラメータをカーネルに渡すようにします。
  </para>


  <section id="configure-kernel-lilo">
  <!--
   <title>Configure Linux kernel using
   <application>LILO</application></title>
   -->
   <title>
   <application>LILO</application> を使った Linux カーネルの設定
   </title>

   <!--
   <para>For each <literal>image</literal> entry in
   <filename>/etc/lilo.conf</filename> add the line:</para>
   -->
   <para>
   <filename>/etc/lilo.conf</filename>
   の各 <literal>image</literal> エントリに対して、
   以下の行を追加して下さい。
   </para>

  <figure id="configure-kernel-lilo-parameters">
  <!--
   <title>Recommended kernel parameters, <application>LILO</application> configuration</title>
   -->
   <title>
   <application>LILO</application> を設定する際の、
   推奨するカーネルパラメータ
   </title>
<programlisting>
append=&quot;console=tty0 console=ttyS0,9600n8&quot;</programlisting>
   </figure>
   
   <!--
   <para>Sometimes the <literal>append</literal> line will already
   exist.  For example</para>
   -->
   <para>
   既に <literal>append</literal> 行が存在することもあります。
   例えば以下のようなものです。
   </para>

  <informalexample id="configure-kernel-lilo-append-exists">
<programlisting>
append=&quot;mem=1024M&quot;</programlisting>
   </informalexample>

   <!--
   <para>In this case, the existing <literal>append</literal> line is
   modified to pass all the parameters.  The result is:</para>
   -->
   <para>
   この場合、既存の <literal>append</literal> 行は、パラメータ
   すべてを渡すように修正します。結果は次のとおりです。
   </para>

  <informalexample id="configure-kernel-lilo-append-merge">
<programlisting>
append=&quot;mem=1024M console=tty0 console=ttyS0,9600n8&quot;</programlisting>
   </informalexample>

   <!--
   <para>As a complete example, a typical
   <filename>/etc/lilo.conf</filename> configuration from
   <productname>Red Hat Linux</productname>
   <productnumber>7.1</productnumber> is:</para>
   -->
   <para>
   設定全文の例として、 <productname>Red Hat Linux</productname> 
   <productnumber>7.1</productnumber> の
   典型的な <filename>/etc/lilo.conf</filename> の設定を以下に示します。
   </para>

  <example id="configure-kernel-lilo-rhl-vendor">
  <!--
   <title>Complete <application>LILO</application> configuration, as
   installed by vendor</title>
   -->
   <title>
   ベンダーがインストールした、 <application>LILO</application> の
   設定の全文
   </title>
<programlisting>
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
timeout=50
message=/boot/message
default=linux

image=/boot/vmlinuz-2.4.2-2
  label=linux
  read-only
  root=/dev/hda6
  initrd=/boot/initrd-2.4.2-2.img</programlisting>
   </example> <!-- configure-kernel-lilo-rhl-vendor -->

   <!--
   <para>This is modified to</para>
   -->
   <para>これを次のように修正します。</para>

  <example id="configure-kernel-lilo-rhl-serial">
  <!--
   <title>Complete <application>LILO</application> configuration, modified for serial console</title>
   -->
   <title>
   シリアルコンソール向けの修正を加えた、<application>LILO</application> 
   設定の全文
   </title>
<programlisting>
boot=/dev/hda
map=/boot/map
install=/boot/boot.b
prompt
default=linux
<!--
# Changes for serial console on COM1: in global section
#   Deleted: message=/boot/message
-->
# COM1 のシリアルコンソール向け変更：グローバルセクション内
#   message=/boot/message を削除
serial=0,9600n8
timeout=100
restricted
password=de7mGPe3i8

image=/boot/vmlinuz-2.4.2-2
  label=linux
  read-only
  root=/dev/hda6
  initrd=/boot/initrd-2.4.2-2.img
<!--
  # Changes for serial console on COM1: in each image section
-->
  # COM1 のシリアルコンソール向け変更：各イメージセクション内
  append=&quot;console=tty0 console=ttyS0,9600n8&quot;</programlisting>
   </example> <!-- configure-kernel-lilo-rhl-serial -->

   <!--
   <para>Now that we have finished configuring
   <application>LILO</application>, use the <command>lilo</command>
   command to install the new boot record onto the disk:</para>
   -->
   <para>
   さて、これで <application>LILO</application> の設定が終了しました。
   <command>lilo</command> コマンドを使って新しいブートレコードを
   ディスクにインストールしましょう。
   </para>

   <informalfigure id="configure-kernel-lilo-install">
<screen format="linespecific">
<prompt>bash#</prompt> <command>chown root:root /etc/lilo.conf</command>
<prompt>bash#</prompt> <command>chmod u=rw,g=,o= /etc/lilo.conf</command>
<prompt>bash#</prompt> <command>lilo</command>
<computeroutput>Added linux *</computeroutput></screen>
</informalfigure> <!-- configure-kernel-lilo-install -->
  </section> <!-- configure-kernel-lilo -->
  

  <section id="configure-kernel-grub">
  <!--
   <title>Configure Linux kernel using
   <application>GRUB</application></title>
   -->
   <title>
   <application>GRUB</application> を使っている Linux カーネルの設定
   </title>

   <!--
   <para>Find each <literal>title</literal> entry in the GRUB
   configuration file.  It will be followed by a
   <literal>kernel</literal> line.  For example</para>
   -->
   <para>
   GRUB の設定ファイルで、 各 <literal>title</literal> エントリを
   見つけてください。
   そのエントリの後に <literal>kernel</literal> 行が続いています。
   例えば、次のようなものです。
   </para>

   <informalfigure id="configure-kernel-grub-kernel-before">
<programlisting>
title Red Hat Linux (2.4.9-21)
  root (hd0,0)
  kernel /vmlinuz-2.4.9-21 ro root=/dev/hda6
  initrd /initrd-2.4.9-21.img</programlisting>
   </informalfigure>

   <!--
   <para>Modify each of the <literal>kernel</literal> lines to append
   the parameters that inform the kernel to use a serial
   console.</para>
   -->
   <para>
   各 <literal>kernel</literal> 行を修正して、
   シリアルコンソールを使うことをカーネルに通知するパラメータを追加します。
   </para>

   <figure id="configure-kernel-grub-kernel-after">
   <!--
    <title>Recommened kernel parameters,
    <application>GRUB</application> configuration</title>
    -->
    <title>
    <application>GRUB</application> の設定で推奨するカーネルパラメータ
    </title>
<programlisting>
title Red Hat Linux (2.4.9-21)
  root (hd0,0)
  kernel /vmlinuz-2.4.9-21 ro root=/dev/hda6 console=tty0 console=ttyS0,9600n8
  initrd /initrd-2.4.9-21.img</programlisting>
   </figure>

   <!--
   <para>As a complete example, <xref
   linkend="configure-kernel-grub-rhl-vendor"> is a typical GRUB
   configuration from <productname>Red Hat Linux</productname>
   <productnumber>7.2</productnumber>.</para>
   -->
   <para>
   <xref linkend="configure-kernel-grub-rhl-vendor">
   が設定全文の例になっています。これは、
   <productname>Red Hat Linux</productname> 
   <productnumber>7.2</productnumber> の、典型的な GRUB の設定です。
   </para>

  <example id="configure-kernel-grub-rhl-vendor">
  <!--
   <title>Complete <application>GRUB</application> configuration, as
   installed by vendor</title>
   -->
   <title>
   ベンダーがインストールした、<application>GRUB</application>
   の設定の全文
   </title>
<programlisting>
default=0
timeout=10
splashimage=(hd0,0)/grub/splash.xpm.gz
password --md5 $1$wwmIq64O$2vofKBDL9vZKeJyaKwIeT.
title Red Hat Linux (2.4.9-21)
root (hd0,0)
  kernel /vmlinuz-2.4.9-21 ro root=/dev/hda6
  initrd /initrd-2.4.9-21.img</programlisting>
   </example> <!-- configure-kernel-grub-rhl-vendor -->

   <!--
   <para>The modified configuration file is shown in <xref
   linkend="configure-kernel-grub-rhl-serial">.</para>
   -->
   <para>
   修正した設定ファイルは <xref linkend="configure-kernel-grub-rhl-serial"> 
   に示してあります。
   </para>

  <example id="configure-kernel-grub-rhl-serial">
  <!--
   <title>Complete <application>GRUB</application> configuration,
   modified for serial console</title>
   -->
   <title>
   シリアルコンソール用に修正した、<application>GRUB</application>
   の設定の全文
   </title>
<programlisting>
default=0
timeout=10
password --md5 $1$wwmIq64O$2vofKBDL9vZKeJyaKwIeT.
serial --unit=0 --speed=9600 --word=8 --parity=no --stop=1
terminal --timeout=10 serial console
title Red Hat Linux (2.4.9-21)
  root (hd0,0)
  kernel /vmlinuz-2.4.9-21 ro root=/dev/hda6 console=tty0 console=ttyS0,9600n8
  initrd /initrd-2.4.9-21.img
title Red Hat Linux (2.4.9-21) single user mode
  lock
  root (hd0,0)
  kernel /vmlinuz-2.4.9-21 ro root=/dev/hda6 console=tty0 console=ttyS0,9600n8 s
  initrd /initrd-2.4.9-21.img
</programlisting>
   </example> <!-- configure-kernel-grub-rhl-serial -->

  </section>  <!-- configure-kernel-grub-parameters -->


  <section id="configure-kernel-syslinux">
  <!--
   <title>Configure Linux kernel using
   <application>SYSLINUX</application></title>
   -->
   <title>
   <application>SYSLINUX</application> を使っている Linux カーネルの設定
   </title>

   <!--
   <para>Edit each <literal>LABEL</literal> entry to add an
   <literal>APPEND</literal> line containing the serial console
   parameter to pass to the Linux kernel.  Like
   <application>LILO</application>, if a kernel already has
   parameters, then add our parameters to the list after
   <literal>APPEND</literal>.</para>
   -->
   <para>
   各 <literal>LABEL</literal> エントリを編集して、
   Linux カーネルに渡すシリアルコンソールパラメータを含めた、
   <literal>APPEND</literal> 行を追加して下さい。
   <application>LILO</application> 同様、
   既にこのパラメータがある場合は、
   <literal>APPEND</literal> の後のリストに、このパラメータを追加して下さい。
   </para>

   <!--
   <para>For example:</para>
   -->
   <para>例えばこのようになります。</para>

   <figure id="configure-kernel-syslinux-append">
   <!--
    <title>Recommended kernel parameters,
    <application>SYSLINUX</application> configuration</title>
    -->
    <title>
    <application>SYSLINUX</application> の設定で推奨するカーネルパラメータ
    </title>
<programlisting>
APPEND console=tty0 console=ttyS0,9600n8</programlisting>
   </figure>

   <!--
   <para>There are some traps for beginners in the differences between
   <application>LILO</application> and
   <application>SYSLINUX</application>.
   <application>LILO</application> uses <literal>append=</literal>,
   whereas <application>SYSLINUX</application> uses just
   <literal>append</literal>. <command>lilo</command> needs to be run
   after each change to <filename>/etc/lilo.conf</filename>, whereas
   <command>syslinux</command> does not need to be run after changing
   <filename>\SYSLINUX.CFG</filename>.</para>
   -->
   <para>
   でも初心者には、
   <application>LILO</application>
   と
   <application>SYSLINUX</application>
   の違いからくる罠がいくつかあります。
   <application>LILO</application> では
   <literal>append=</literal> を使います。
   ところが <application>SYSLINUX</application> では、ただ
   <literal>append</literal> だけです。
   それに、
   <application>LILO</application> では、
   <filename>/etc/lilo.conf</filename> を変更するたびに
   <command>lilo</command> を実行する必要がありますが、
   <application>SYSLINUX</application> では、
   <filename>\SYSLINUX.CFG</filename> を変更した後でも
   <command>syslinux</command> を実行する必要はありません。
   </para>
 
  </section>

 </chapter> <!-- configure-kernel -->

 <chapter id="getty">
 <!--
  <title>Configure <productname>getty</productname></title>
  -->
  <title><productname>getty</productname> を設定する</title>

  <!--
  <para><application>getty</application> monitors serial lines,
  waiting for a connection.  It then configures the serial link, sends
  the contents of <filename>/etc/issue</filename>, and asks the person
  connecting for their login name.  <application>getty</application>
  then starts <application>login</application> and
  <application>login</application> asks the person for their password.
  If the user does nothing, <application>getty</application> or
  <application>login</application> hang up and
  <application>getty</application> goes back to waiting.</para>
  -->
  <para>
  <application>getty</application>
  はシリアルラインを監視して接続を待っています。
  接続後シリアルリンクを確立し、
  <filename>/etc/issue</filename> の内容を送信し、
  ユーザーにログイン名を要求します。
  それから <application>getty</application>
  は <application>login</application> をスタートさせ、
  <application>login</application> がユーザーにパスワードを要求します。
  ユーザーが何もしないと、
  <application>getty</application> あるいは
  <application>login</application> はハングアップし、
  <application>getty</application> は待ち状態に戻ります。
  </para>

  <!--
  <para>The <application>getty</application> command has been
  re-implemented numerous times.  There is a wide selection of
  <application>getty</application> clones, each with slight
  differences in behavior and syntax.  We will describe the
  traditional <application>getty</application>, and then some popular
  alternatives.</para>
  -->
  <para>
  <application>getty</application>
  コマンドは過去何度となく再実装されてきました。
  ですから <application>getty</application>
  のクローンには幅広い選択肢があり、
  それぞれがその動作と構文の点で少しずつ異なっています。
  ここでは従来の <application>getty</application> の説明をして、
  それから他にもよく使われているものを取り上げます。
  </para>

  <!--
  <para>One of the jobs of a <application>getty</application> is to
  set the <varname>TERM</varname> environment variable to indicate the
  make and model of the terminal which is connecting.  In this
  <citetitle>HOWTO</citetitle> we set the terminal to the commonly
  emulated <productname><acronym>DEC</acronym>
  <acronym>VT100</acronym></productname>.  If you occassionally
  connect using a different terminal emulation then you can
  interactively change your choice of terminal by setting
  <varname>TERM</varname> to the appropiate terminal listed in
  <filename>/etc/termcap</filename>.</para>
  -->
  <para>
  <application>getty</application> の仕事の一つは、
  <varname>TERM</varname> 
  環境変数を設定し、
  接続している端末の種類と型を表すことです。
  この <citetitle>HOWTO</citetitle> では、端末を一般的に
  エミュレートされている <productname><acronym>DEC</acronym>
  <acronym>VT100</acronym></productname> に設定します。
  でもたまに別の端末エミュレーションを使って接続することがあるのなら、
  対話的に別の端末に設定し直すこともできます。
  <filename>/etc/termcap</filename>
  に載っている端末の内、適切なものを
  <varname>TERM</varname> に設定してください。
  </para>

  <figure id="getty-term">
  <!--
   <title>Interactively altering the connecting terminal's make and
   model</title>
   -->
   <title>
   接続している端末の種類と型を対話的に変更する
   </title>
   <screen>
<prompt>bash$</prompt> <command>TERM=kermit</command>
<prompt>bash$</prompt> <command>tset -r</command>
</screen>
  </figure>

  <!--
  <para>But first, let's see how <application>getty</application> gets
  started in the first place.</para>
  -->
  <para>
  でもまずは、<application>getty</application>
  がそもそもどうやってスタートするのかを見てみましょう。
  </para>

  <section id="getty-init">
  <!--
   <title><productname>init</productname> system</title>
   -->
   <title><productname>init</productname> システム</title>

   <!--
   <para>The file <filename>/etc/inittab</filename> contains the
   background programs that used to keep the system running.  One of
   these programs is one <application>getty</application> process per
   serial port.</para>
   -->
   <para>
   <filename>/etc/inittab</filename>
   ファイルにはバックグラウンドプログラムが含まれており、
   これらを使ってシステムを動かし続けます。
   こういったプログラムの一つが <application>getty</application> で、
   シリアルポート一つにつき 1 個の
   <application>getty</application> プロセスがあります。
   </para>

   <figure id="getty-init-inittab">
   <!--
    <title><application>getty</application> is started by
    <application>init</application>, based upon an entry in
    <filename>/etc/inittab</filename></title>
    -->
    <title>
    <application>getty</application> は、 
    <filename>/etc/inittab</filename> のエントリに基づき 
    <application>init</application> が起動する
    </title>
<screen format="linespecific">
co:2345:respawn:/sbin/getty ttyS0 CON9600 vt102</screen>
</figure>

<!--
   <para>Each field in <filename>inittab</filename> is separated by a
   colon and contains:</para>
   -->
   <para>
   <filename>inittab</filename>
   の各フィールドはコロン (:) で区切られており、
   以下のものを含んでいます。
   </para>

   <variablelist>
    <varlistentry>
     <term><literal>co</literal></term>
     <listitem>
     <!--
      <para>Arbitrary entry for <filename>inittab</filename>.  As long
      as this entry doesn't appear anywhere else in
      <filename>inittab</filename>, you're okay.  We named this entry
      <literal>co</literal> because it's for the console.</para>
      -->
      <para>
      <filename>inittab</filename> 内の任意のエントリです。
      このエントリが <filename>inittab</filename>
      の他の場所に現れていない限り大丈夫です。
      このエントリはコンソール用なので、
      <literal>co</literal> という名前にしました。
      </para>

      <!--
      <para><productname>Red Hat Linux</productname>
      <productnumber>7.3</productnumber> has a program called
      <application>kudzu</application> which configures the system
      when it is booted.  <application>kudzu</application> treats an
      <filename>inittab</filename> entry of <literal>co</literal>
      specially, setting it for the attached monitor and keyboard or
      the serial console.  Hardcoding the value of
      <filename>co</filename> prevents this behaviour.</para>
      -->
      <para>
      <productname>Red Hat Linux</productname>
      <productnumber>7.3</productnumber> 
      には <application>kudzu</application>
      というプログラムがあり、
      ブート時にシステム設定を行ないます。
      <application>kudzu</application> は
      <literal>co</literal> という
      <filename>inittab</filename> のエントリを特別扱いします。
      このエントリを用いて、付属のモニター・キーボード、
      あるいはシリアルコンソールの設定を行なうのです。
      <filename>co</filename> の値をハードコーディングすれば、
      これは防げます。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term><literal>2345</literal></term>
     <listitem>
     <!--
      <para>Run levels where this entry gets started.  Run levels 2,
      3, 4 and 5 can be used for an operational system,
      <application>getty</application> should not be used in other run
      levels.  The serial console still works in run level 1 (or
      single user mode) even without a
      <application>getty</application>.</para>
      -->
      <para>
      このエントリがスタートするランレベルです。
      動作可能なシステムについては、
      ランレベル 2、3、4 それに 5 が使えます。
      他のランレベルでは 
      <application>getty</application> は使わないでください。
      シリアルコンソールは、ランレベル 1 
      （ないしはシングルユーザーモード）で、
      <application>getty</application> が無くても動作します。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term><literal>respawn</literal></term>
     <listitem>
     <!--
      <para>Re-run the program if it dies.  We want this to happen so
      that a new <prompt>login</prompt> prompt will appear when you
      log out of the console.</para>
      -->
      <para>
      そのプログラムが死んだ場合に、それを再起動します。
      コンソールからログアウトしたとき、
      新しい <prompt>login</prompt> プロンプトが現れるように、
      再起動させたいんです。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term><literal>/sbin/getty ttyS0 CON9600 vt102</literal></term>
     <listitem>
     <!--
      <para>The command to run.  In this case, we're telling
      <application>getty</application> to connect to <filename
      class="devicefile">/dev/ttyS0</filename> using the settings for
      <literal>CON9600</literal> which exists in
      <filename>/etc/gettydefs</filename>.  This entry represents a
      terminal running at 9600<abbrev>bps</abbrev>. Initially assume
      that the terminal is a later-model
      <productname><acronym>VT100</acronym></productname>.</para>
      -->
      <para>
      実行すべきコマンドです。この場合、 
      <filename>/etc/gettydefs</filename> に存在する 
      <literal>CON9600</literal> の設定を使って、
      <filename class="devicefile">/dev/ttyS0</filename> に接続するよう、
      <application>getty</application> に指示しています。
      このエントリは 9600<abbrev>bps</abbrev> で動いている端末を表しています。
      この端末は <productname><acronym>VT100</acronym></productname> 
      の後継モデルだと最初に仮定しています。
      </para>
     </listitem>
    </varlistentry>
   </variablelist>
    
    <!--
   <para>After changing <filename>/etc/inittab</filename> restart
   <application>init</application> with</para>
   -->
   <para>
   <filename>/etc/inittab</filename> の変更後、以下のコマンドを使って
   <application>init</application> を再起動します。
   </para>

   <informalfigure>
<screen format="linespecific">
<command>telinit q</command></screen>
   </informalfigure>

   <!--
   <para>An alternative is to send the hangup signal to
   <application>init</application> with the command <command>kill -HUP
   1</command>.  This is not recommended: if you make a typing mistake
   and actually kill <application>init</application> then your system
   will suddenly halt.</para>
   -->
   <para>
   あるいは <command>kill -HUP 1</command> コマンドを使って、
   <application>init</application>
   にハングアップシグナルを送ってもかまいません。
   でもこの方法はお奨めしません。というのは、もしタイプミスをして、
   本当に <application>init</application> を殺してしまうと、
   その瞬間にシステムが突然停止してしまうからです。
   </para>

   <note>
   <!--
    <title>Comments in <filename>inittab</filename> and Red Hat's
    <application>kudzu</application></title>
    -->
    <title>
    <filename>inittab</filename> 内のコメントと Red Hat の 
    <application>kudzu</application>
    </title>

    <!--
    <para><application>kudzu</application> uses the
    <literal>#</literal> line comment to activate and deactivate the
    <application>getty</application>s for the attached monitor and
    keyboard and for the serial port.  To prevent a genuine comment
    from becoming confused with a line saved by
    <application>kudzu</application> use <literal>##</literal> at the
    start of a line of genuine comments.</para>
    -->
    <para>
    <application>kudzu</application>
    は <literal>#</literal> のコメント行を使って、
    付属のモニター・キーボードやシリアルポートに対する
    <application>getty</application> の起動や停止を行なっています。
    本当のコメントと 
    <application>kudzu</application> で保存している行が混乱しないように、
    本物のコメント行は、
    <literal>##</literal> で始めて下さい。
    </para>
   </note>

  </section> <!-- getty-init -->


  <section id="getty-getty">
  <!--
   <title>Traditional <productname>getty</productname></title>
   -->
   <title>従来の <productname>getty</productname></title>

   <!--
   <para>Traditional <application>getty</application> implementations
   include <application>uugetty</application> and
   <application>getty_ps</application>.</para>
   -->
   <para>
   従来実装されてきた <application>getty</application> には、
   <application>uugetty</application> と
   <application>getty_ps</application> があります。
   </para>

   <!--
   <para>The traditional <application>getty</application> is listed in
   <filename>/etc/inittab</filename> with the name of a section in
   <filename>/etc/gettydefs</filename> to use for its configuration.
   Our example in <xref linkend="getty-init-inittab"> used the section
   <literal>CON9600</literal>.</para>
   -->
   <para>
   従来の <application>getty</application> は、
   <filename>/etc/gettydefs</filename> にあるセクション名で、
   <filename>/etc/inittab</filename> に載っています。
   このセクション名は、その <application>getty</application>
   の設定に用います。
   <xref linkend="getty-init-inittab"> の例では、
   <literal>CON9600</literal> というセクションを使いました。
   </para>

   <!--
   <para>There is no <literal>CON9600</literal> in the standard
   <filename>gettydefs</filename>.  This is deliberate, as serial
   consoles sometimes require slight tweaking.  Copy the
   <literal>DT9600</literal> entry and use it as your model.</para>
   -->
   <para>
   標準の <filename>gettydefs</filename> には、
   <literal>CON9600</literal> はありません。わざとこうしました。
   シリアルコンソールでは、若干ひねってみるのが必要なときがたまに
   あるのです。 <literal>DT9600</literal> エントリをコピーして、
   それを自分のモデルに使って下さい。
   </para>

   <figure id="getty-getty-gettydefs">
   <!--
    <title>Define <literal>CON9600</literal> in
    <filename>gettydefs</filename></title>
    -->
    <title>
    <filename>gettydefs</filename> に <literal>CON9600</literal> を定義する
    </title>
<programlisting>
<!--
# Serial console 9600, 8, N, 1, CTS/RTS flow control
-->
# シリアルコンソール 9600, 8, N, 1, CTS/RTS フロー制御
CON9600# B9600 CS8 -PARENB -ISTRIP CRTSCTS HUPCL # B9600 SANE CS8 -PARENB -ISTRIP CRTSCTS HUPCL #@S @L login: #CON9600</programlisting>
   </figure>

   <!--
   <para>Separate each line with a blank line.</para>
   -->
   <para>各々の行は空行で区切って下さい。</para>

   <!--
   <para>Each configuration line has the syntax:</para>
   -->
   <para>各々の設定行の構文は以下のとおりです。</para>

   <figure id="getty-getty-gettydefs-syntax">
   <!--
    <title>Syntax of entries in <filename>/etc/gettydefs</filename>,
    in EBNF</title>
    -->
    <title>
    EBNF記法による、<filename>/etc/gettydefs</filename> のエントリ構文
    </title>
<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<!--
<replaceable>&lt;label&gt;</replaceable># <replaceable>&lt;initial_flags&gt;</replaceable> # <replaceable>&lt;final_flags&gt;</replaceable> #<replaceable>&lt;login_prompt&gt;</replaceable>#<replaceable>&lt;next_label&gt;</replaceable></literallayout>
-->
<replaceable>&lt;ラベル&gt;</replaceable># <replaceable>&lt;初期フラグ&gt;</replaceable> # <replaceable>&lt;最終フラグ&gt;</replaceable> #<replaceable>&lt;ログインプロンプト&gt;</replaceable>#<replaceable>&lt;次のラベル&gt;</replaceable></literallayout>
   </figure>

   <!--
   <para>The <replaceable>&lt;label&gt;</replaceable> is referred to
   on the <application>getty</application> command line.</para>
   -->
   <para>
   <replaceable>&lt;ラベル&gt;</replaceable> は、
   <application>getty</application> コマンドラインで参照します。
   </para>

   <!--
   <para>The <replaceable>&lt;next_label&gt;</replaceable> is the
   definition used if a <acronym>RS-232</acronym> Break is sent.  As
   the console is always 9600<abbrev>bps</abbrev>, this points back
   to the original <replaceable>label</replaceable>.  See <xref
   linkend="security-sysrq"> if you ever intend to have more one line
   for <literal>CON9600</literal> in
   <filename>gettydefs</filename>.</para>
   -->
   <para>
   <replaceable>&lt;次のラベル&gt;</replaceable> は、
   <acronym>RS-232</acronym> のブレーク信号が送られたら使う定義です。
   コンソールが使用する速度は常に 9600<abbrev>bps</abbrev> なので、
   ここでは最初の <replaceable>ラベル</replaceable>
   をもう一度指し示すことになります。
   <filename>gettydefs</filename> の中で、 
   <literal>CON9600</literal> をもう一行書くつもりなら、
   <xref linkend="security-sysrq"> を参照して下さい。
   </para>

   <!--
   <para><replaceable>&lt;initial_flags&gt;</replaceable> are the
   serial line parameters used by <application>getty</application>.
   These are modeled on the <citetitle>stty(1)</citetitle> and
   <citetitle>termios(3)</citetitle> options and the full list varies
   depending upon your <application>getty</application> variant.  The
   parameters in <xref linkend="getty-getty-gettydefs"> ensure that a
   line at 9600<abbrev>bps</abbrev> with eight data bits and no
   parity is configured.</para>
   -->
   <para>
   <replaceable>&lt;初期フラグ&gt;</replaceable> は 
   <application>getty</application>
   が使うシリアルラインのパラメータです。
   これらの元になったのは、<citetitle>stty(1)</citetitle>
   のオプションと
   <citetitle>termios(3)</citetitle> のオプションですが、
   このパラメータの完全なリストは、使っている 
   <application>getty</application> の種類によって様々です。 
   <xref linkend="getty-getty-gettydefs"> のパラメータでは、
   データが 8 ビット、パリティ無しの、
   9600 <abbrev>bps</abbrev> で、確かに設定されています。
   </para>

   <!--
   <para><replaceable>&lt;final_flags&gt;</replaceable> are the serial
   line parameters set by <application>getty</application> before it
   calls login.  You will usually want to set a
   9600<abbrev>bps</abbrev> line, <literal>SANE</literal> terminal
   handling, eight data bits, no parity and to hang up the modem when
   the login session is finished.</para>
   -->
   <para>
   <replaceable>&lt;最終フラグ&gt;</replaceable> は、
   <application>getty</application> が login を呼び出す前に設定する、
   シリアルラインのパラメータです。
   通常は、 9600<abbrev>bps</abbrev> のラインで、
   端末の取り扱いは <literal>SANE</literal> 、データは 8 ビット、
   パリティ無し、およびログインセッション終了後モデムはハングアップ、
   という設定にする必要があります。
   </para>

   <!--
   <para>The <replaceable>&lt;login_prompt&gt;</replaceable> for
   serial lines is traditionally the name of the machine, followed by
   the serial port, followed by <literal>login:</literal> and a space.
   The macro that inserts the name of the machine and the serial port
   varies, see the documentation for your
   <application>getty</application>.</para>
   -->
   <para>
   シリアルラインに対する伝統的な 
   <replaceable>&lt;ログインプロンプト&gt;</replaceable> は、
   まずマシン名、続いてシリアルポート、さらに <literal>login:</literal>
   という文字列、最後に空白を一つです。
   マシン名とシリアルポートを挿入するマクロは様々ですから、
   自分が使っている <application>getty</application>
   のドキュメントを見て下さい。
   </para>

  </section> <!-- getty-getty -->


  <section id="getty-agetty">
   <title><productname>agetty</productname></title>

   <!--
   <para><application>agetty</application> is an &ldquo;alternative
   getty&rdquo;.  It takes all of its parameters on the command line,
   with no use of <filename>/etc/gettydefs</filename> or any other
   configuration file.  <application>agetty</application> is
   documented in the manual page
   <citetitle>agetty(8)</citetitle>.</para>
   -->
   <para>
   <application>agetty</application> は &ldquo;また別の getty&rdquo; です。
   すべてのパラメータはコマンドラインから取得し、
   <filename>/etc/gettydefs</filename> や、
   その他の設定ファイルはいっさい使いません。
   <application>agetty</application> に関する文書は、
   マニュアルページの <citetitle>agetty(8)</citetitle> にあります。
   </para>

   <!--
   <para><xref linkend="getty-agetty-inittab"> shows how to invoke
   <application>agetty</application> for use with a serial
   console.</para>
   -->
   <para>
   <xref linkend="getty-agetty-inittab"> には、
   シリアルラインで使うために 
   <application>agetty</application> を起動する方法を示しています。
   </para>

   <figure id="getty-agetty-inittab">
   <!--
    <title><filename>/etc/inittab</filename> entry for
    <application>agetty</application></title>
    -->
    <title>
    <application>agetty</application> 用の 
    <filename>/etc/inittab</filename> エントリ
    </title>
<programlisting>
co:2345:respawn:/sbin/agetty -h -t 60 ttyS0 9600 vt102</programlisting>
   </figure>

   <!--
   <para><literal>ttyS0</literal> refers to the serial device
   <filename class="devicefile">/dev/ttyS0</filename>.</para>
   -->
   <para>
   <literal>ttyS0</literal> は 
   <filename class="devicefile">/dev/ttyS0</filename>
   というシリアルデバイスを指しています。
   </para>

   <!--
   <para><literal>9600</literal> is the bits per second of the serial
   link.  agetty will support multiple values, using the modem's
   <literal>CONNECT</literal> message or the <acronym>RS-232</acronym>
   Break signal to select between them.  Only use one value, as serial
   consoles only have only one data rate.</para>
   -->
   <para>
   <literal>9600</literal>
   は、シリアルリンクを流れる 1 秒あたりのビット数です。
   agetty では複数種類の値をサポートします。その中から選ぶには、
   モデムの <literal>CONNECT</literal> メッセージや、
   あるいは <acronym>RS-232</acronym>
   のブレーク信号を使います。
   シリアルコンソールにはデータレートが 1 種類しかないので、
   使う値は一つだけにしてください。
   </para>

   <!--
   <para><literal>vt102</literal> sets the <varname>TERM</varname>
   environment variable to indicate that a
   <productname><acronym>VT100</acronym></productname> terminal is
   connecting.</para>
   -->
   <para>
   <literal>vt102</literal> の部分は、
   <varname>TERM</varname> 環境変数を設定し、
   <productname><acronym>VT100</acronym></productname> 
   端末が接続中であることを示します。
   </para>

   <!--
   <para><literal>-h</literal> activates CTS/RTS handshaking.</para>
   -->
   <para>
   <literal>-h</literal> は CTS/RTS のハンドシェークを行なうようにします。
   </para>

   <!--
   <para><literal>-t 60</literal> allows 60 seconds for someone to
   attempt to log in before the modem is hung up.  You should test
   this feature to ensure that <application>init</application> is not
   restarting <application>agetty</application> every 60 seconds when
   the link is idle.  Look for a continually changing process
   identifier for <application>agetty</application>.</para>
   -->
   <para>
   <literal>-t 60</literal> によって、
   モデムは 60 秒後にハングアップしますから、
   ログインできるのはこの 60 秒間です。
   この機能はちゃんとテストして、
   リンクがアイドル状態の時に、
   <application>init</application>
   が 60 秒ごとに 
   <application>agetty</application>
   を再起動していないことを確認した方がいいです。
   <application>agetty</application>
   のプロセス ID が頻繁に変わっていないかどうか調べて下さい。
   </para>

   <!--
   <para><application>agetty</application> uses escape sequences in
   <filename>/etc/issue</filename> to insert information.  For
   example, <literal>\n.\o \l</literal> will appear as
   <literal>remote.example.edu.au ttyS0</literal>.</para>
   -->
   <para>
   <application>agetty</application> は
   <filename>/etc/issue</filename>
   内のエスケープシーケンスを使って、
   情報を挿入します。例えば、
   <literal>\n.\o \l</literal> は
   <literal>remote.example.edu.au ttyS0</literal>
   というように表示されます。

   <footnote><para>
   訳注：\n はそのマシンのホスト名を、\o はそのマシン
   のドメイン名、\l は現在の tty ライン名を、それぞれ表します。
   agetty(8) 参照。
   </para></footnote>

   </para>

   <!--
   <para>When you log out <application>agetty</application> does not
   appear to lower the Data Terminal Ready signal to force the modme
   to hang up.  If having people automatically disconnected at the end
   of their login session matters to you then you might consider
   <application>mgetty</application> instead.</para>
   -->
   <para>
   ログアウトしても、
   <application>agetty</application> が
   &quot;Date Terminal Ready&quot; 信号を落とし、
   モデムをハングアップさせるようには見えません。
   ログインセッションの終りに、自動的に接続を切るのが重要なことなら、
   <application>agetty</application> の代わりに 
   <application>mgetty</application> の使用を考えてみてはどうでしょうか。
   </para>

  </section> <!-- getty-agetty -->

  <section id="getty-mgetty">
   <title><productname>mgetty</productname></title>

   <!--
   <para><productname>mgetty</productname> is a modem-aware
   <application>getty</application>.  It supports modems with the
   Hayes <acronym>AT</acronym> command set and is especially designed
   for supporting modems that are used to send faxes and to dial out
   as well as dial in.  These features are not required for a serial
   console.</para>
   -->
   <para>
   <productname>mgetty</productname> はモデムをサポートする
   <application>getty</application> です。ヘイズの <acronym>AT</acronym> 
   コマンドセットを備えたモデムをサポートしており、
   着信の他に、ファックス送信や発呼に使用されるモデムのサポート用として、
   特別に設計されています。
   しかし、こういった機能はシリアルコンソールでは不要です。
   </para>

   <!--
   <para><application>mgetty</application> does not require the
   traditional <filename>/etc/gettydefs</filename> file.  As a result
   <application>mgetty</application> is invoked from
   <filename>/etc/inittab</filename> without supplying an entry in
   <filename>/etc/gettydefs</filename>.</para>
   -->
   <para>
   <application>mgetty</application> には従来の
   <filename>/etc/gettydefs</filename> ファイルは不要です。結果として、
   <application>mgetty</application> は 
   <filename>/etc/gettydefs</filename> にエントリを書かなくても、
   <filename>/etc/inittab</filename> から起動します。
   </para>

   <figure id="getty-mgetty-inittab">
   <!--
    <title><filename>/etc/inittab</filename> entry for
    <application>mgetty</application></title>
    -->
    <title>
    <application>mgetty</application> 用
    <filename>/etc/inittab</filename> エントリ
    </title>
<programlisting>
co:2345:respawn:/sbin/mgetty ttyS0</programlisting>
   </figure>

   <!--
   <para><application>mgetty</application> is configured using the
   file <filename>/etc/mgetty+sendfax/mgetty.config</filename>.  It
   should contain an entry for the port used by the serial
   console.</para>
   -->
   <para>
   <application>mgetty</application> の設定には 、
   <filename>/etc/mgetty+sendfax/mgetty.config</filename>
   というファイルを使います。
   このファイルには、
   シリアルコンソールが使用するポート用のエントリがあるはずです。
   </para>

   <figure>
   <!--
    <title><application>mgetty</application> configuration file
    <filename>mgetty.config</filename></title>
    -->
    <title>
    <application>mgetty</application> の設定ファイル、
    <filename>mgetty.config</filename>
    </title>
<programlisting id="getty-mgetty-mgettyconfig">
port ttyS0
 speed 9600
 direct yes
 data-only yes
 toggle-dtr yes
 need-dsr yes
 port-owner root
 port-group root
 port-mode 600
 login-prompt @ \P login:\040
 login-time 60
 term vt102</programlisting>
   </figure>

   <!--
   <para>All the options are documented in the
   <productname>PostScript</productname> file
   <filename>/usr/share/doc/mgetty&hellip;/mgetty.ps</filename>.</para>
   -->
   <para>
   これらのオプションはすべて 
   <filename>/usr/share/doc/mgetty&hellip;/mgetty.ps</filename> という、
   <productname>ポストスクリプト</productname>
   ファイル形式の文書になっています。
   </para>

   <!--
   <para>We set <literal>direct</literal>,
   <literal>data-only</literal>, <literal>need-dsr</literal> and
   <literal>toggle-dtr</literal> so that the <acronym>RS-232</acronym>
   control lines are used correctly for a dumb modem.</para>
   -->
   <para>
   <literal>direct</literal> と
   <literal>data-only</literal>、<literal>need-dsr</literal> および
   <literal>toggle-dtr</literal> は yes に設定します。
   これで <acronym>RS-232</acronym>
   の制御ラインはダムモデム用として正しく使われます。
   </para>

   <!--
   <para><literal>port-owner</literal>, <literal>port-group</literal>
   and <literal>port-mode</literal> set the serial device to be
   accessible only by the <systemitem
   class="username">root</systemitem> user. Modem applications, which
   normally use the <systemitem class="groupname">uucp</systemitem>
   group, cannot now accidentally use the serial console.</para>
   -->
   <para>
   <literal>port-owner</literal> と <literal>port-group</literal>
   それに <literal>port-mode</literal> は、
   <systemitem class="username">root</systemitem>
   ユーザーだけがシリアルデバイスにアクセスできるようにします。
   モデムのアプリケーションには、普通 
   <systemitem class="groupname">uucp</systemitem>
   グループを用います。
   ですからこうしておけば、モデムのアプリケーションが、
   誤ってシリアルコンソールにアクセスしてしまうようなことは不可能になります。
   </para>

   <!--
   <para><literal>login-prompt</literal> shows the machine
   (<literal>@</literal>) and serial port (<literal>\P</literal>)
   being used.  The text <literal>\040</literal> is simply the octal
   code for a space after <literal>login:</literal>.</para>
   -->
   <para>
   <literal>login-prompt</literal> は現在使用中のマシン
   (<literal>@</literal>) とシリアルポート(<literal>\P</literal>)
   を表しています。
   <literal>\040</literal> というテキストは、たんに
   <literal>login:</literal> の後ろに空白を表示する 8 進数のコードです。
   </para>

   <!--
   <para><literal>term vt102</literal> gives the make and model of the
   terminal most likely to dial in.  This sets the
   <varname>TERM</varname> environment variable, which you can change
   if you are dialling in from another terminal type.</para>
   -->
   <para>
   <literal>term vt102</literal> には、
   接続元で使いそうな端末の種類と型を指定します。
   この内容で <varname>TERM</varname> 環境変数の値が決まります。
   別の種類の端末から電話するつもりなら、
   この環境変数は変えてもかまいません。
   </para>

   <!--
   <para>The remaining configuration files,
   <filename>/etc/mgetty+sendfax/dialin.config</filename> and
   <filename>/etc/mgetty+sendfax/login.config</filename>, do not need
   to be altered.</para>
   -->
   <para>
   残りの設定ファイル、
   <filename>/etc/mgetty+sendfax/dialin.config</filename> と
   <filename>/etc/mgetty+sendfax/login.config</filename>
   は、変更する必要はありません。
   </para>

   <!--
   <para>If you wish to alter the suggested configuration then note
   that <application>mgetty</application>'s
   <literal>blocking</literal> and <literal>toggle-dtr</literal>
   parameters do not co-exist well.</para>
   -->
   <para>
   ここで提示している設定を変えたい場合、注意して欲しいのは、
   <application>mgetty</application> の
   <literal>blocking</literal> パラメータと
   <literal>toggle-dtr</literal>
   パラメータを一緒に使うのは難しいということです。
   </para>

   <!--
   <para>If you have difficulties, activate debugging by adding
   <literal>debug 8</literal> to <filename>mgetty.config</filename>.
   <application>mgetty</application>'s actions are then visible in the
   file <filename>/var/log/mgetty.log.ttyS0</filename>.</para>
   -->
   <para>
   問題があれば、 <filename>mgetty.config</filename> に 
   <literal>debug 8</literal> を追加して、デバッグ機能を動かして下さい。
   こうすれば <application>mgetty</application> の動作が
   <filename>/var/log/mgetty.log.ttyS0</filename>
   ファイルで明らかになります。
   </para>

  </section> <!-- getty-mgetty -->


  <section id="getty-mingetty">
   <title><productname>mingetty</productname></title>

   <!--
   <para><productname>mingetty</productname> is designed to be a
   minimal <application>getty</application> for the virtual terminals
   on the the workstation's monitor and keyboard.  It has no support
   for serial lines.</para>
   -->
   <para>
   <productname>mingetty</productname> は、
   ワークステーションのモニター・キーボードで仮想端末が使えるように、
   必要最小限の機能に絞った
   <application>getty</application> になっています。
   ですから、これにはシリアルラインのサポートはありません。
   </para>

   <!--
   <para>You must not use <application>mingetty</application> for the
   serial line in <filename>/etc/inittab</filename>, but the current
   <application>mingetty</application> entries for the virtual
   terminals can remain.</para>
   -->
   <para>
   <application>mingetty</application>
   を
   <filename>/etc/inittab</filename> で、
   シリアルライン用に使ってはいけません。
   しかし、今ある仮想端末用の
   <application>mingetty</application>
   エントリは、そのままでもかまいません。
   </para>

   <!--
   <para>Each virtual terminal uses about 8<acronym>KB</acronym> of
   kernel memory.  If this matters, it is easy to allocate fewer
   virtual terminals.  In the <systemitem
   class="osname">Linux</systemitem> 2.4 kernel virtual terminals are
   created on demand, so not starting
   <productname>mingetty</productname> on the virtual terminal will
   not create the virtual terminal. If the machine does not have a
   video card then remove all the <application>mingetty</application>
   entries from <filename>/etc/inittab</filename>.</para>
   -->
   <para>
   仮想端末は、一台あたり約 8<acronym>KB</acronym>
   のカーネルメモリを使用します。
   しかしこれでも多過ぎるようなら、
   生成する仮想端末数をもっと減らすのは簡単です。
   <systemitem class="osname">Linux</systemitem>
   の 2.4 カーネルでは、
   必要に応じて仮想端末を生成します。
   ですから、仮想端末で 
   <productname>mingetty</productname> を起動しなければ、
   仮想端末は生成しません。マシンにビデオカードが無い場合は、
   <filename>/etc/inittab</filename> から 
   <application>mingetty</application> のエントリをすべて削除して下さい。
   </para>

   <figure id="getty-mingetty-inittab">
   <!--
    <title>Fewer virtual terminals. Removing
    <application>mingetty</application> entries from
    <filename>/etc/inittab</filename></title>
    -->
    <title>
    仮想端末の数を減らす。<filename>/etc/inittab</filename> から
    <application>mingetty</application> エントリを取り除く。
    </title>
<programlisting>
1:2345:respawn:/sbin/mingetty tty1
<!--
# Additional virtual terminals are not used
-->
# 余分な仮想端末は使わない
# 2:2345:respawn:/sbin/mingetty tty2
# 3:2345:respawn:/sbin/mingetty tty3
# 4:2345:respawn:/sbin/mingetty tty4
# 5:2345:respawn:/sbin/mingetty tty5
# 6:2345:respawn:/sbin/mingetty tty6
</programlisting>
   </figure>

   <!--
   <para>After restarting <application>init</application> it would be
   wise to remove the unused device files.</para>
   -->
   <para>
   <application>init</application> の再起動後は、未使用のデバイスファイル
   を取り除いてしまうのが賢明だろうと思います。
   </para>

   <figure id="getty-mingetty-devtty">
   <!--
    <title>Fewer virtual terminals. Deallocating unused virtual
    terminals and removing their device files.</title>
    -->
    <title>
    仮想端末を減らす。未使用の仮想端末を解放し、
    そのデバイスファイルを削除する。
    </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>telinit q</command>
<prompt>bash#</prompt> <command>deallocvt /dev/tty[2-9] /dev/tty[0-9][0-9]</command>
<prompt>bash#</prompt> <command>rm /dev/tty[2-9] /dev/tty[0-9][0-9]</command>

</screen>
   </figure>

  </section> <!-- getty-mingetty -->


  <section id="getty-none">
  <!--
   <title>No <productname>getty</productname></title>
   -->
   <title><productname>getty</productname> 無し</title>

   <!--
   <para>If you are using serial console simply to print console
   messages then do not run a <application>getty</application> process
   on the serial port.</para>
   -->
   <para>
   シリアルコンソールを、コンソールメッセージの印刷にしか使わないのなら、
   シリアルポートで <application>getty</application> 
   プロセスを動かさないでください。
   </para>

   <!--
   <para><application>getty</application> follows a locking convention
   that prevents other serial port applications from using the serial
   port.  Since we do not want other processes to use the serial port,
   but are not running <application>getty</application>, manually
   create the lock file.</para>
   -->
   <para>
   ロックというのは、シリアルポートを使う他のアプリケーションに、
   このシリアルポートを使わせないようにするためのもので、
   <application>getty</application> は、このロックの約束ごとに従います。
   このシリアルポートは他のプロセスには使わせたくないのですが、 
   ここでは <application>getty</application> は動かしていません。
   ですからロックファイルは手作業で作成して下さい。
   </para>

   <!--
   <para>Create a file <filename>/var/lock/LCK..ttyS0</filename> to
   contain the text <literal>1</literal>.  This lets other potential
   serial port applications know that process 1 has the serial port in
   use.  Process 1 is always the <application>init</application>
   process, and <application>init</application> is always running, so
   the serial port is always locked.</para>
   -->
   <para>
   <filename>/var/lock/LCK..ttyS0</filename> というファイルを作って、
   そこに <literal>1</literal> というテキストを入れて下さい。これが
   将来シリアルポートを使う可能性があるアプリケーションに、プロセス 1 が
   このシリアルポートを使用中だということを教えることになります。
   プロセス 1 というのは常に <application>init</application> プロセス
   です。そして <application>init</application> はいつでも稼働中です。
   ですからこのシリアルポートはいつもロックされているわけです。
   </para>

   <!--
   <para>The file is created upon each system boot, as lock files are
   often cleared when the system boots.  A convenient place to create
   the lock file is from <filename>/etc/rc.serial</filename>.  It
   should contain:</para>
   -->
   <para>
   ロックファイルはシステムがブートする時によく削除されますから、この
   ファイルはブートするたびに作成します。ロックファイルを作るのに都合が
   良い場所は <filename>/etc/rc.serial</filename> です。この中には以下の
   ことを書いてください。
   </para>

   <figure id="getty-none-rcserial">
   <!--
    <title>Contents of <filename>/etc/rc.serial</filename> to lock
    console serial port when no <application>getty</application>
    used</title>
    -->
    <title>
    <application>getty</application> を使わない場合に、コンソールの
    シリアルポートをロックする、 <filename>/etc/rc.serial</filename> の
    内容
    </title>
<programlisting>
<!--
# Lock /dev/ttyS0 as it is used by an output-only console
-->
# 出力専用のコンソールが使用するので、/dev/ttyS0 をロック
(umask 022 &amp;&amp; \
 rm -f '/var/lock/LCK..ttyS0' &amp;&amp; \
 echo '1' > '/var/lock/LCK..ttyS0')</programlisting>
   </figure>

  </section> <!-- getty-none -->

 </chapter> <!-- getty -->


 <chapter id="misc">
 <!--
  <title>Configure incidentals</title>
  -->
  <title>付随するその他の設定</title>

  <!--
  <para>A surprising number of other configuration files need small
  modifications before the serial console works well.</para>
  -->
  <para>
  シリアルコンソールをちゃんと動かす前に、
  他にも驚くほど多くの設定ファイルに、
  こまごまとした修正が必要です。
  </para>

  <!--
  <para>The configuration of many items depends upon your security
  requirements, especially depending upon the level of trust and
  corresponding need for security at the remote site.  By assuming a
  high need for security at the remote site this
  <citetitle>HOWTO</citetitle> can illustrate a large number of
  configuration items.</para>
  -->
  <para>
  多くの項目をどう設定するかは、
  セキュリティに対する要求条件によって違ってきます。
  特に遠隔地のサイトがどの程度信頼できて、
  それに対応して、どのくらいのセキュリティが必要なのかに依存するのです。
  この
  <citetitle>HOWTO</citetitle> では、
  遠隔地のサイトには高いセキュリティが必要だと仮定して、
  かなり多くの設定項目を例示することがあります。
  </para>


  <section id="misc-securetty">
  <!--
   <title>Allow <systemitem class="username">root</systemitem> to
   login from serial console</title>
   -->
   <title>
   シリアルコンソールから <systemitem class="username">root</systemitem> が
   ログインできるようにする。
   </title>

   <!--
   <para>The file <filename>/etc/securetty</filename> controls the
   devices that the <systemitem class="username">root</systemitem>
   user can log in upon.</para>
   -->
   <para>
   <filename>/etc/securetty</filename> ファイルは、
   <systemitem class="username">root</systemitem>
   ユーザーがログインできるデバイスを管理するものです。
   </para>

   <!--
   <para>It is usually desirable to have <systemitem
   class="username">root</systemitem> be able to log in from the
   console, so add the basename of the serial console device to
   <filename>/etc/securetty</filename>.</para>
   -->
   <para>
   普通は <systemitem class="username">root</systemitem> を、
   コンソールからログインできるようにしておきたいものです。そこで 
   <filename>/etc/securetty</filename>
   にシリアルコンソールデバイスのベース名を追加して下さい。
   </para>

   <figure id="misc-secretty-ttys0">
   <!--
    <title>Alter <filename>securetty</filename> to allow <systemitem
    class="username">root</systemitem> to log in from the serial
    console</title>
    -->
    <title>
    <systemitem class="username">root</systemitem>
    がシリアルコンソールからログインできるように、
    <filename>securetty</filename> を変更する。
    </title>
<programlisting>
ttyS0</programlisting>
   </figure>

   <!--
   <para>Almost anyone can now dial into the modem and attempt to
   guess the <systemitem class="username">root</systemitem> password.
   Normally we do not allow <systemitem
   class="username">root</systemitem> to log in from a remote site,
   rather we have a normal user log in and then use
   <command>su</command> or <ulink
   url="http://www.courtesan.com/sudo/"><command>sudo</command></ulink>
   to become <systemitem class="username">root</systemitem>.  This
   gives some traceability.</para>
   -->
   <para>
   しかしこれだと、ほとんど誰でもモデムに電話をかけて接続し、
   <systemitem class="username">root</systemitem>
   のパスワードを推測してみることが可能です。
   でも普通は、遠隔サイトから
   <systemitem class="username">root</systemitem>
   でログインできるようにはしません。
   それよりも、一般ユーザーでログインし、
   それから <command>su</command> か 
   <ulink url="http://www.courtesan.com/sudo/"><command>sudo</command></ulink>
   を使って <systemitem class="username">root</systemitem> になります。
   これである種の追跡能力が備わります。
   </para>

   <!--
   <para>Unfortunately, the <systemitem
   class="username">root</systemitem> user needs to be able to log in
   from the console to fix a full disk.  Disk subsystems typically
   reserve 5% of their space for root's exclusive use.<footnote>
   -->
   <para>
   あいにく <systemitem class="username">root</systemitem> ユーザーは、
   飽和したディスクを修復するためには、
   コンソールからログインできなければなりません。
   一般的に、ディスクサブシステムの容量のうち 5 パーセントは、
   root が排他的に使用するのに取っておきます。
   <footnote>

   <!--
     <para>This is not as inefficient as it may appear.  The last 5%
     of a disk formatted with a general purpose filesystem always
     performs poorly and is best left empty.</para></footnote>
     -->
     <para>
     これは見かけほど非効率ではありません。
     汎用のファイルシステムでフォーマットしているディスクの内、
     最後の 5 パーセントはいつも性能が悪化するので、
     空のままで残すのが一番なんです。
     </para>
     </footnote>

     <!--
   This is enough space for the <systemitem
   class="username">root</systemitem> user to log in and start
   deleting the files that filled the disk.</para>
   -->
   これは、<systemitem class="username">root</systemitem>
   ユーザーがログインして、
   ディスクを埋めているファイルの削除を始めるのに充分な量です。
   </para>

   <note>
   <!--
    <title><filename>securetty</filename> and Red Hat's
    <application>kudzu</application></title>
    -->
    <title>
    <filename>securetty</filename> と Red Hat の
    <application>kudzu</application>
    </title>

    <!--
    <para><application>kudzu</application> automatically adds the
    device being used as the console to
    <filename>securetty</filename>.</para>
    -->
    <para>
    <application>kudzu</application> はコンソールに使っているデバイスを、
    自動的に <filename>securetty</filename> に追加します。
    </para>
   </note>

  </section> <!-- misc-securetty -->


  <section id="misc-init">
  <!--
   <title>Change <application>init</application> level to textual</title>
   -->
   <title>
   <application>init</application> レベルをテキストレベルに変える
   </title>

   <!--
   <para>There is little point in running the <productname>X Window
   System</productname> on a server with no screen. Edit
   <filename>/etc/inittab</filename> finding the line containing
   <literal>initdefault</literal>, such as</para>
   -->
   <para>
   画面がないサーバーで 
   <productname>X ウィンドウシステム</productname>
   を動かしても、ほとんど意味がありません。
   <filename>/etc/inittab</filename> を編集して、
   <literal>initdefault</literal>
   を含んでいる行を見つけて下さい。以下のような行です。
   </para>

   <informalfigure id="misc-init-x">
<programlisting>
id:5:initdefault:</programlisting>
   </informalfigure>

   <!--
   <para>Alter the default from run level 5 (multiuser with X Window
   System) to run level 3 (multiuser).</para>
   -->
   <para>
   そしてデフォルトのランレベルを、
   5 （X ウィンドウが動作しているマルチユーザー）から
   3 （マルチユーザー）に変更して下さい。
   </para>

   <informalfigure id="misc-init-text">
<programlisting>
id:3:initdefault:</programlisting>
   </informalfigure>

   <!--
   <para>The <command>startx</command> command can be used if an
   occassional <productname>X Windows</productname> session is
   required upon an attached keyboard and monitor.</para>
   -->
   <para>
   付属のキーボード・モニターで
   <productname>X ウィンドウ</productname> 
   セッションが必要なことがあれば、
   <command>startx</command> コマンドを使えばいいのです。
   </para>

   <note>
   <!--
    <title>Run levels and Red Hat's
    <application>kudzu</application></title>
    -->
    <title>ランレベルと Red Hat の <application>kudzu</application></title>

    <!--
    <para><application>kudzu</application> automatically updates the
    <literal>initdefault</literal> entry in
    <filename>inittab</filename> to use run level 3 if a serial device
    is being used as a console.</para>
    -->
    <para>
    シリアルデバイスをコンソールに使っている場合、
    <application>kudzu</application> は、
    <filename>inittab</filename> の
    <literal>initdefault</literal> エントリを自動的に更新するので、
    ランレベル 3 を使うようになります。
    </para>
   </note>

   <section id="misc-init-x11">
   <!--
    <title>Continuing to run X</title>
    -->
    <title>X を動かし続ける</title>

    <!--
    <para>Sometimes a computer with a serial console and no attached
    monitor still needs to run the <application>X Window
    System</application>.  For example, the computer might host a
    number of <application>X</application> terminals.</para>
    -->
    <para>
    シリアルコンソールが付いていて、
    付属のモニターが無いコンピュータでも、
    時にはやはり <application>X ウィンドウシステム</application>
    を動かす必要があります。
    例えばそのコンピュータは、数多くの
    <application>X</application> 端末のホストをしているかも知れません。
    </para>

    <!--
    <para>In this case the computer should remain in run level 5, but
    should not run a <application>X</application> server for any
    attached monitors.  Alter
    <filename>/etc/X11/xdm/Xservers</filename> and remove any lines
    starting with a colon (which indicates an
    <application>X</application> server on the local machine).  <xref
    linkend="misc-init-x11-xservers"> shows an unaltered
    <filename>Xservers</filename> file.</para>
    -->
    <para>
    そのような場合は、コンピュータをランレベル 5 のままにして、
    どの付属のモニターに対しても <application>X</application>
    サーバーを動かさないで下さい。
    このためには <filename>/etc/X11/xdm/Xservers</filename>
    を変更します。コロンで始まる行はどれも削除して下さい
    （コロンは、ローカル機で動いている
    <application>X</application> サーバーを示しています）。
    <xref linkend="misc-init-x11-xservers"> に、
    変更前の <filename>Xservers</filename> ファイルを示してあります。
    </para>

    <figure id="misc-init-x11-xservers">
    <!--
     <title><filename>Xservers</filename> from Red Hat Linux
     7.2</title>
     -->
     <title>
     Red Hat Linux 7.2 の <filename>Xservers</filename>
     </title>
<programlisting>
:0 local /usr/X11R6/bin/X
</programlisting>
    </figure>

    <!--
    <para>If the operating system uses <acronym>GNOME</acronym>'s
    <application>gdm</application> then alter its configuration file
    <filename>/etc/X11/gdm/gdm.conf</filename>, removing any entries
    for local <application>X</application> servers from the
    <literal>[servers]</literal> section.  <xref
    linkend="misc-init-x11-gdmconf">shows an unaltered
    <literal>[servers]</literal> section.</para>
    -->
    <para>
    オペレーティングシステムが
    <acronym>GNOME</acronym> の
    <application>gdm</application>
    を使っている場合は、その設定ファイル
    <filename>/etc/X11/gdm/gdm.conf</filename>
    を変更して下さい。
    <literal>[servers]</literal> セクションから、
    ローカルの <application>X</application>
    に関するエントリはいずれも削除します。
    <xref linkend="misc-init-x11-gdmconf">には、
    変更前の <literal>[servers]</literal> セクションを示してあります。
    </para>

    <figure id="misc-init-x11-gdmconf">
    <!--
     <title><literal>[servers]</literal> section of
     <filename>gdm.conf</filename> from Red Hat Linux 7.2</title>
     -->
     <title>
     Red Hat Linux 7.2 の <filename>gdm.conf</filename> にある
     <literal>[servers]</literal> セクション
     </title>
<programlisting>
[servers]
0=/usr/bin/X11/X
</programlisting>
    </figure>

   </section>  <!-- misc-init-x11 -->

  </section> <!-- misc-init -->


  <section id="misc-remove-ioctl-save">
  <!--
   <title>Remove saved console settings</title>
   -->
   <title>保存してあるコンソールの設定を削除する</title>

   <!--
   <para>The file <filename>/etc/ioctl.save</filename> contains the
   serial and terminal parameters to use in single user mode.  The
   serial and terminal parameters are usually set by
   <application>getty</application> &mdash; during single user mode no
   <application>getty</application> runs and the contents of
   <filename>/etc/ioctl.save</filename> are used to set the serial and
   terminal parameters.</para>
   -->
   <para>
   <filename>/etc/ioctl.save</filename> ファイルには、
   シングルユーザーモードで使う、
   シリアルポートと端末のパラメータが入っています。
   このパラメータは、普通は
   <application>getty</application> が設定します。
   ですが、シングルユーザーモード中は
   <application>getty</application> が動いていません。
   ですから、この場合は <filename>/etc/ioctl.save</filename>
   の内容を使って、シリアルポートと端末のパラメータを設定します。
   </para>

   <!--
   <para>As we are changing consoles, the saved settings are no longer
   correct.</para>
   -->
   <para>
   ここではコンソールを変更するつもりなので、
   保存してある設定はもう正しくありません。
   </para>

   <figure id="remove-ioctl-save-rm">
   <!--
    <title>Removal of <filename>ioctl.save</filename> containing the
    saved console parameters</title>
    -->
    <title>
    保存してあるコンソールパラメータが入っている
    <filename>ioctl.save</filename> の削除
    </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>rm -f /etc/ioctl.save</command></screen>
</figure>

<!--
   <para>We re-create this file once we can log in from the serial
   console.</para>
   -->
   <para>
   シリアルコンソールからログインできるようになったら、
   このファイルを再作成します。
   </para>

  </section> <!-- misc-remove-ioctl-save -->


  <section id="misc-devmodem">
  <!--
   <title>Serial console is not <filename
   class="symlink">/dev/modem</filename></title>
   -->
   <title>
   シリアルコンソールは
   <filename class="symlink">/dev/modem</filename>
   ではない
   </title>

   <!--
   <para>In many Linux distributions the file <filename
   class="symlink">/dev/modem</filename> is a symbolic link to the
   serial port containing a modem which is available for use.</para>
   -->
   <para>
   多くの Linux ディストリビューションでは、
   <filename class="symlink">/dev/modem</filename> ファイルは、
   使用できるモデムが接続されている、
   シリアルポートへのシンボリックリンクになっています。
   </para>

   <!--
   <para>Although the serial console is a serial port with a modem, we
   certainly don't want it used to place an outgoing call.</para>
   -->
   <para>
   シリアルコンソールはモデムがつながっているシリアルポートになっていますが、
   むろんそこから電話をかけるのに使おうとは思っていません。
   </para>

   <!--
   <para>Check that <filename class="symlink">/dev/modem</filename>
   does not point to the serial port being used for the console, say
   <filename class="devicefile">/dev/ttyS0</filename>.  If it does,
   then remove the symbolic link.</para>
   -->
   <para>
   <filename class="symlink">/dev/modem</filename>
   が、コンソールに使っているシリアルポート
   （たぶん <filename class="devicefile">/dev/ttyS0</filename>）
   を指していないかどうか調べて下さい。
   もし指していたら、そのシンボリックリンクを削除して下さい。
   </para>

   <figure id="misc-devmodem-example">
   <!--
    <title>Remove <filename class="symlink">/dev/modem</filename> if
    it points to the serial console's port</title>
    -->
    <title>
    もし
    <filename class="symlink">/dev/modem</filename>
    がシリアルコンソールのポートを指していれば、それを削除する。
    </title>
<screen format="linespecific">
<prompt>bash$</prompt> <command>ls -l /dev/modem</command>
<computeroutput>lrwxrwxrwx 1 root root 10 Jan 01 00:00 /dev/modem -> /dev/ttyS0</computeroutput>
<prompt>bash#</prompt> <command>rm /dev/modem</command></screen>
   </figure>

  </section> <!-- misc-devmodem -->


  <section id="misc-devsystty">
  <!--
   <title>Alter target of <filename
   class="symlink">/dev/systty</filename></title>
   -->
   <title>
   <filename class="symlink">/dev/systty</filename>
   のターゲットを変更する。
   </title>

   <!--
   <para>In many Linux distributions the file <filename
   class="symlink">/dev/systty</filename> is a symbolic link to the
   device which is used as the by the attached monitor and keyboard.
   See <xref linkend="intro-word"> for a fuller description.</para>
   -->
   <para>
   多くの Linux ディストリビューションでは、
   <filename class="symlink">/dev/systty</filename> ファイルは、
   付属のモニター・キーボードで使っている、
   デバイスファイルへのシンボリックリンクになっています。
   より詳細な説明に関しては、<xref linkend="intro-word"> を見て下さい。
   </para>

   <!--
   <para>If there is no attached keyboard and monitor or no wish to
   give the attached keyboard and monitor greater capabilities then a
   text terminal, then alter <filename
   class="symlink">/dev/systty</filename> to point to the serial
   console.</para>
   -->
   <para>
   付属のキーボード・モニターがなかったり、
   あってもテキスト端末程度のことができればいいと思っている場合は、
   <filename class="symlink">/dev/systty</filename>
   がシリアルコンソールを指すように変更して下さい。
   </para>

   <!--
   <para>Rather than directly altering this symbolic link, it is
   better to modify the configuration file used by
   <command>MAKEDEV</command>, which is then run to recreate the
   symbolic link.  The configuration file is in the directory
   <filename class="directory">/etc/makedev.d</filename>.  The default
   configuration will point to the first virtual terminal, as shown in
   <xref linkend="misc-devsystty-default">.</para>
   -->
   <para>
   この場合、直接シンボリックリンクを変更するよりは、むしろ
   <command>MAKEDEV</command>
   が使っている設定ファイルを修正する方がいいです。
   そのあとこのコマンドを実行して、シンボリックリンクを再作成します。
   この設定ファイルは 
   <filename class="directory">/etc/makedev.d</filename>
   というディレクトリにあります。
   <xref linkend="misc-devsystty-default"> に示すように、
   デフォルトの設定では最初の仮想端末を指しています。
   </para>

   <figure id="misc-devsystty-default">
   <!--
    <title>Default value of <filename
    class="symlink">/dev/systty</filename> in
    <filename>/etc/makedev.d/linux-2.4.x</filename></title>
    -->
    <title>
    <filename>/etc/makedev.d/linux-2.4.x</filename> にある、
    <filename class="symlink">/dev/systty</filename> のデフォルト値
    </title>
<programlisting>
l systty tty0</programlisting>
   </figure>

   <!--
   <para>Modify this to point to the serial port being used by the
   console, as shown in <xref linkend="misc-devsystty-serial">.</para>
   -->
   <para>
   <xref linkend="misc-devsystty-serial"> で示すように、
   これをコンソールが使っているシリアルポートを指すように修正して下さい。
   </para>

   <figure id="misc-devsystty-serial">
   <!--
    <title>Alter value of <filename
    class="symlink">/dev/systty</filename> in
    <command>MAKEDEV</command> configuration file</title>
    -->
    <title>
    <command>MAKEDEV</command> の設定ファイルにある
    <filename class="symlink">/dev/systty</filename> の値を変更する
    </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>cd /etc/makedev.d</command>
<prompt>bash#</prompt> <command>fgrep systty *</command>
<computeroutput>linux-2.4.x:l systty tty0</computeroutput>
<prompt>bash#</prompt> <command>vi linux-2.4.x</command>
</screen>
<programlisting format="linespecific">
l systty ttyS0
</programlisting>
   </figure>

   <!--
   <para>Now re-create <filename
   class="symlink">/dev/systty</filename> using its new definition, as
   shown in <xref linkend="misc-devsystty-create">.</para>
   -->
   <para>
   では、<xref linkend="misc-devsystty-create"> に示すように、
   新しい設定を使って <filename class="symlink">/dev/systty</filename> を
   再作成します。
   </para>

   <figure id="misc-devsystty-create">
   <!--
    <title>Installing new value of <filename
    class="symlink">/dev/systty</filename></title>
    -->
    <title>
    <filename class="symlink">/dev/systty</filename> の新しい値を
    インストールする
    </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>cd /dev</command>
<prompt>bash#</prompt> <command>rm systty</command>
<prompt>bash#</prompt> <command>./MAKEDEV systty</command></screen>
   </figure>

  </section> <!-- misc-devsystty -->


  <section id="misc-pam">
  <!--
   <title>Configure Pluggable Authentication Modules</title>
   -->
   <title>
   PAM(Pluggable Authentication Modules) の設定
   </title>

   <!--
   <para>The <application>Pluggable Authentication
   Module</application> system can be used to give special privileges
   to users that logged in through the console.  It is used to make
   devices like the floppy disk mountable by the console's user;
   usually they would need to become the super-user to mount a
   disk.</para>
   -->
   <para>
   <application>Pluggable Authentication Module</application> 
   システムは、
   コンソールからログインしたユーザーに特権を付与するのに使えます。
   ディスクをマウントするには、
   普通はスーパーユーザーになる必要があるでしょうが、
   これはコンソールユーザーが、
   フロッピーディスクのようなデバイスをマウントできるようにするのに使います。
   </para>

   <!--
   <para>The <acronym>PAM</acronym> configuration file
   <filename>/etc/security/console.perms</filename> contains the
   <literal>&lt;console&gt;</literal> variable.  For <productname>Red
   Hat Linux</productname> <productnumber>7.1</productnumber>
   <literal>&lt;console&gt;</literal> is the regular
   expression:</para>
   -->
   <para>
   <acronym>PAM</acronym> の設定ファイル 
   <filename>/etc/security/console.perms</filename> には 
   <literal>&lt;console&gt;</literal> 変数があります。
   <productname>Red Hat Linux</productname> 
   <productnumber>7.1</productnumber> だと、
   <literal>&lt;console&gt;</literal> は正規表現になっています。
   </para>

   <figure id="misc-pam-default-console">
   <!--
    <title>Default <literal>&lt;console&gt;</literal> in
    <filename>console.perms</filename> refers to attached keyboard and
    screen</title>
    -->
    <title>
    <filename>console.perms</filename> のデフォルト 
    <literal>&lt;console&gt;</literal>
    は付属のキーボート・モニターを指している。
    </title>
<programlisting>
&lt;console&gt;=tty[0-9][0-9]* vc/[0-9][0-9]* :[0-9]\.[0-9] :[0-9]</programlisting>
   </figure>

   <!--
   <para>Later in the file the <literal>&lt;console&gt;</literal> user
   is granted permission to use some devices.  This is done by
   altering the devices' permissions upon login and logout.</para>
   -->
   <para>
   このファイルの最後の方で、
   <literal>&lt;console&gt;</literal>
   ユーザーにいくつかのデバイスを使う許可を与えています。
   これには、
   ログインとログアウトの際、
   デバイスのパーミッションを変更するという方法を用います。
   </para>

   <figure id="misc-pam-default-dev">
   <!--
    <title>Default device listing in
    <filename>console.perms</filename></title>
    -->
    <title>
    <filename>console.perms</filename> のデフォルトデバイス一覧
    </title>
<programlisting>
&lt;console&gt;  0660 &lt;floppy&gt;     0660 root.floppy
&lt;console&gt;  0600 &lt;sound&gt;      0600 root
&lt;console&gt;  0600 &lt;cdrom&gt;      0660 root.disk
&lt;console&gt;  0600 &lt;pilot&gt;      0660 root.uucp
&lt;console&gt;  0600 &lt;jaz&gt;        0660 root.disk
&lt;console&gt;  0600 &lt;zip&gt;        0660 root.disk
&lt;console&gt;  0600 &lt;ls120&gt;      0660 root.disk
&lt;console&gt;  0600 &lt;scanner&gt;    0600 root
&lt;console&gt;  0600 &lt;camera&gt;     0600 root
&lt;console&gt;  0600 &lt;memstick&gt;   0600 root
&lt;console&gt;  0600 &lt;flash&gt;      0600 root
&lt;console&gt;  0600 &lt;fb&gt;         0600 root
&lt;console&gt;  0600 &lt;kbd&gt;        0600 root
&lt;console&gt;  0600 &lt;joystick&gt;   0600 root
&lt;console&gt;  0600 &lt;v4l&gt;        0600 root
&lt;console&gt;  0700 &lt;gpm&gt;        0700 root
&lt;console&gt;  0600 &lt;mainboard&gt;  0600 root
&lt;console&gt;  0600 &lt;rio500&gt;     0600 root</programlisting>
   </figure>

   <!--
   <para>There are two types of devices listed above: those devices
   required by someone connecting from an attached keyboard and
   monitor and those devices that allow convenient access to devices.
   The configuration file fails to make the distionction between
   logical and physical console noted in <xref linkend="intro-word">.
   The configuration file is modified to create that
   distinction.</para>
   -->
   <para>
   上記でリストされているデバイスには 2 種類のタイプがあります。
   付属のモニター・キーボードから接続しているユーザーに必要なデバイスと、
   簡単にアクセスできるようにするデバイスです。
   <xref linkend="intro-word">
   で触れた論理コンソールと物理コンソールの間の区別は、
   この設定ファイルではつけられません。
   そこで、その区別がつくように設定ファイルを修正します。
   </para>

   <figure id="misc-pam-serial-dev">
   <!--
    <title>Devices in <filename>console.perms</filename> required for
    attached keyboard and screen</title>
    -->
    <title>
    付属のキーボード・モニターに必要な <filename>console.perms</filename> の
    デバイス
    </title>
<programlisting>
&lt;console&gt;  0600 &lt;fb&gt;         0600 root
&lt;console&gt;  0600 &lt;kbd&gt;        0600 root
&lt;console&gt;  0600 &lt;joystick&gt;   0600 root
&lt;console&gt;  0600 &lt;v4l&gt;        0600 root
&lt;console&gt;  0700 &lt;gpm&gt;        0700 root</programlisting>
   </figure>

   <!--
   <para>The remaining devices should be altered to give control only
   to people attaching from the serial console.  For example, we don't
   want an unprivileged user at a co-location site mounting a floppy
   disk.  Define a new console type for the serial console, say
   <literal>&lt;sconsole&gt;</literal>.</para>
   -->
   <para>
   残りのデバイスは、
   シリアルコンソールから接続しているユーザーだけが制御できるよう、
   変更してください。
   例えば、場所借りしているサイトにいる権限のないユーザーには、
   フロッピーディスクのマウントはさせたくありません。
   そこでシリアルコンソール用に新しいコンソールタイプを定義します。
   例えば
   <literal>&lt;sconsole&gt;</literal> です。
   </para>

   <figure id="misc-pam-serial-sconsole">
   <!--
    <title>Add <literal>&lt;sconsole&gt;</literal> in
    <filename>console.perms</filename> to refer to serial
    console</title>
    -->
    <title>
    <filename>console.perms</filename> に 
    <literal>&lt;sconsole&gt;</literal> を追加して、
    それがシリアルコンソールを指すようにする。
    </title>
<programlisting>
&lt;sconsole&gt;=ttyS0</programlisting>
   </figure>

   <!--
   <para>Now modify the remaining entries from
   <literal>&lt;console&gt;</literal> to
   <literal>&lt;sconsole&gt;</literal>.</para>
   -->
   <para>
   さあ、残りのエントリを <literal>&lt;console&gt;</literal> から
   <literal>&lt;sconsole&gt;</literal> へ修正しましょう。
   </para>

   <figure id="misc-pam-serial-sdev">
   <!--
    <title>Remaining devices in <filename>console.perms</filename>
    altered to refer to serial console</title>
    -->
    <title>
    シリアルコンソールを指すよう変更された 
    <filename>console.perms</filename> の残りのデバイス
    </title>
<programlisting>
&lt;sconsole&gt;  0660 &lt;floppy&gt;     0660 root.floppy
&lt;sconsole&gt;  0600 &lt;sound&gt;      0600 root
&lt;sconsole&gt;  0600 &lt;cdrom&gt;      0660 root.disk
&lt;sconsole&gt;  0600 &lt;pilot&gt;      0660 root.uucp
&lt;sconsole&gt;  0600 &lt;jaz&gt;        0660 root.disk
&lt;sconsole&gt;  0600 &lt;zip&gt;        0660 root.disk
&lt;sconsole&gt;  0600 &lt;ls120&gt;      0660 root.disk
&lt;sconsole&gt;  0600 &lt;scanner&gt;    0600 root
&lt;sconsole&gt;  0600 &lt;camera&gt;     0600 root
&lt;sconsole&gt;  0600 &lt;memstick&gt;   0600 root
&lt;sconsole&gt;  0600 &lt;flash&gt;      0600 root
&lt;sconsole&gt;  0600 &lt;mainboard&gt;  0600 root
&lt;sconsole&gt;  0600 &lt;rio500&gt;     0600 root</programlisting>
   </figure>

  </section> <!-- misc-pam -->


  <section id="misc-configure-rhl">
  <!--
   <title>Configure <productname>Red Hat Linux</productname></title>
   -->
   <title>
   <productname>Red Hat Linux</productname> を設定する
   </title>

   <!--
   <para><productname>Red Hat Linux</productname> stores parameters concerning system start up in
   the file <filename>/etc/sysconfig/init</filename>.</para>
   -->
   <para>
   <productname>Red Hat Linux</productname>
   は、システムのスタートアップに関連するパラメータを、
   <filename>/etc/sysconfig/init</filename>
   ファイルに格納しています。
   </para>

   <!--
   <para>Alter the parameter <literal>BOOTUP</literal> to use
   terminal-independent commands to write the
   <computeroutput>OK</computeroutput>,
   <computeroutput>PASSED</computeroutput> and
   <computeroutput>FAILED</computeroutput> messages.  These messages
   will no longer appear in green, yellow or red.  The comments in
   <filename>/etc/sysconfig/init</filename> suggest that any value
   other than <literal>color</literal> will do, but it seems that
   <literal>BOOTUP</literal> must be set to
   <literal>serial</literal>.</para>
   -->
   <para>
   <computeroutput>OK</computeroutput> や
   <computeroutput>PASSED</computeroutput>、
   <computeroutput>FAILED</computeroutput>
   というメッセージ出力に、
   端末に依存しないコマンドを使うよう、
   <literal>BOOTUP</literal> パラメータを変更して下さい。
   こうすると、これらのメッセージは、もう緑でも黄色でも、赤でも表示されません。
   <filename>/etc/sysconfig/init</filename> の中のコメントによれば、
   <literal>color</literal> 以外のどの値でもうまくいくように見えますが、
   実際には <literal>BOOTUP</literal> は
   <literal>serial</literal> に設定しなければならないようです。
   </para>

   <!--
   <para>Alter the <literal>PROMPT</literal> parameter to disallow
   interactive start up.  Allowing an unauthenticated keystroke to stop
   system services is not robust against line noise and allows anyone
   that dials in during system boot to deny services.</para>
   -->
   <para>
   対話的なスタートアップを禁止するため、
   <literal>PROMPT</literal> パラメータを変更します。
   不正なキーストロークでシステムサービスが停止できてしまうと、
   ラインノイズに対して脆弱になってしまうし、
   システムのブート中に電話して接続する人は誰でも、
   サービスを停止できるようになってしまいます。
   </para>

   <figure id="misc-configure-rhl-etc-syslinux-init">
   <!--
    <title>Alterations to <filename>/etc/sysconfig/init</filename> for
    <productname>Red Hat Linux</productname></title>
    -->
    <title>
    <productname>Red Hat Linux</productname> 用の
    <filename>/etc/sysconfig/init</filename> の変更
    </title>
<programlisting>
BOOTUP=serial
PROMPT=no</programlisting>
   </figure>

   <!--
   <para><productname>Red Hat Linux</productname> runs a hardware
   discoverer, named <application>kudzu</application>.  When
   attempting to identify a serial port
   <application>Kudzu</application> resets the serial port.  This
   stops the serial console.  <application>Kudzu</application> is
   configured from the file
   <filename>/etc/sysconfig/kudzu</filename>.</para>
   -->
   <para>
   <productname>Red Hat Linux</productname>
   では、
   <application>kudzu</application>
   という名前のハードウェア検出プログラムが動きます。
   <application>Kudzu</application>
   は、シリアルポートを識別しようとすると、
   シリアルポートをリセットしてしまいます。
   これではシリアルコンソールが止まってしまいます。
   <application>Kudzu</application> の設定は、 
   <filename>/etc/sysconfig/kudzu</filename> ファイルでしています。
   </para>

   <!--
   <para><application>Kudzu</application> can be prevented from
   resetting hardware by setting the configuration parameter
   <literal>SAFE</literal> to <literal>yes</literal>.</para>
   -->
   <para>
   設定パラメータの <literal>SAFE</literal> を 
   <literal>yes</literal> にすれば、
   <application>Kudzu</application>
   がハードウェアをリセットしないようにできます。
   </para>

   <figure id="misc-configure-rhl-etc-syslinux-kudzu">
   <!--
    <title>Alterations to <filename>/etc/sysconfig/kudzu</filename>
    for <productname>Red Hat Linux</productname></title>
    -->
    <title>
    <productname>Red Hat Linux</productname> 用の
    <filename>/etc/sysconfig/kudzu</filename> の変更
    </title>
<programlisting>
SAFE=yes</programlisting>
   </figure>

  </section> <!-- misc-configure-rhl -->

 </chapter> <!-- misc -->


 <chapter id="test">
 <!--
  <title>Reboot and test</title>
  -->
  <title>リブートとテスト</title>

  <section id="test-verify">
  <!--
   <title>Verify console operation</title>
   -->
   <title>コンソール操作の検証</title>

   <!--
   <para>If possible, plug an <acronym>RS-232</acronym> breakout box
   into the serial port. During reboot the Data Terminal Ready line
   should become active and then the Transmit Data lights should flash
   as console messages appear.</para>
   -->
   <para>
   できればシリアルポートに <acronym>RS-232</acronym>
   のブレークアウトボックス

   <footnote><para>
   訳注：ブレークアウトボックスに関して原著者に説明を求めたところ、
   以下のコメントをいただきました。
   </para>
   <para>
   <!--ブレークアウトボックスに関して原著者に説明を求めたところ、
   以下のコメントをいただいたので、このコメントを脚注にしたいと思います。-->

   <!--A &dquot;breakout box&dquot; takes a cable and splits it into individual 
wires.
   This allows the individual wires within the cable to be monitored
   and altered.-->
    「ブレークアウトボックス」というのは、
    ケーブルを用いてそれを個々のワイアに分ける器具です。
    こうすると、そのケーブル内のワイア一本一本を監視したり、
    流れる情報を変更したりできるようになります。

    <!--Most RS-232 breakout boxes have a LED showing the RS-232 signal on
    each wire.  Many RS-232 breakout boxes also have switches and wire
    jumpers that allow the wiring to be easily altered.-->
     ほとんどの RS-232 用ブレークアウトボックスには、
     各ワイアごとの RS-232 信号を表示する LED が付いています。
     またその多くにはスイッチやワイアジャンパーがあり、
     配線を簡単に変えられるようになっています。

     <!--There is a good photo of an expensive RS-232 breakout box at:-->
     高価な RS-232 用ブレークアウトボックスについては、
     良い写真が
     <ulink url="http://www.comcraftfr.com/100c_l.htm"><citetitle>
     http://www.comcraftfr.com/100c_l.htm</citetitle></ulink>
     にあります。

     <!--Cheap RS-232 breakout boxes can be found in most electronics stores.-->
     安価な RS-232 用のブレークアウトボックスは、
     たいていの電気店で見つかります。
   </para></footnote>
   を挿して下さい。
   ブート中にDTRラインが上がり、
   それからコンソールメッセージの表示に合わせて、
   データ転送ライトが光るはずです。
   </para>

   <!--
   <para>Attach a modem, or a null modem cable and a terminal.
   Configure them to match the serial parameters used by the serial
   console port.  If using a modem, dial in to it from a terminal
   emulator.</para>
   -->
   <para>
   それからモデムを取り付けて下さい。
   あるいはヌルモデムケーブルと端末でもかまいません。
   そしてシリアルコンソールポートで使用するシリアルパラメータに合わせて、
   それらを設定して下さい。
   モデムを使う場合は、端末エミュレータからそのモデムに電話して接続しましょう。
   </para>

   <informalfigure id="test-verify-operation-connect">
<screen format="linespecific">
<command>+++</command>
<command>AT Z</command>
<command>AT DT 1234-5678</command>
<computeroutput>CONNECT 9600</computeroutput></screen>
   </informalfigure>

   <!--
   <para>Configure the terminal or terminal emulator to match the
   serial parameters used by the serial console.  If using a modern
   Hayes <acronym>AT</acronym>-style modem then the speed need not
   match.  If using a directly-attached terminal then the speed must
   match.</para>
   -->
   <para>
   そして端末、あるいは端末エミュレータの設定を、
   シリアルコンソールで使っているシリアルパラメータに合わせて下さい。
   最近のヘイズ
   <acronym>AT</acronym> スタイルのモデムなら、
   速度を合わせる必要はありません。
   直結の端末を使っている場合は、速度は合わせる必要があります。
   </para>

   <!--
   <para>Reboot the computer.</para>
   -->
   <para>コンピュータをリブートしてください。
   <footnote><para>
   このコマンド例で使用しているオプションは、-r の誤りだと思われます。
   原著者には連絡済みですが、まだ回答はありません。
   </para></footnote>
   </para>

   <!-- 以下のコマンド例で使用しているオプションは -r の誤りだと
        思われる。原著者には連絡済みだが、いまだ回答無し-->
   <informalfigure>
<screen format="linespecific">
<prompt>bash#</prompt> <command>shutdown -h now</command></screen>
   </informalfigure>

   <!--
   <para>During reboot the terminal should see the usual boot loader
   text, and then the default kernel booting, then the
   <application>init</application> output, and finally the contents of
   <filename>/etc/issue</filename> and
   <application>getty</application> asking you to login.</para>
   -->
   <para>
   リブート中、端末には普通のブートローダーのテキストが見えて、
   それからデフォルトのカーネルがブートし、
   その後 <application>init</application> の出力が見えて、
   最後に <filename>/etc/issue</filename> の内容が現れて、
   <application>getty</application> がログインを求めてくるはずです。
   </para>

   <informalfigure>
<screen format="linespecific">
LILO:

Linux version &hellip;
Kernel command line: auto BOOT_IMAGE=linux ro root=306 BOOT_FILE=/boot/vmlinuz-2.4.3-12 console=tty0 console=ttyS0,9600n8
&hellip;
INIT version &hellip;
&hellip;
/etc/issue says "All your base are belong to us".
remote.example.edu.au ttyS0 login:</screen>
   </informalfigure>

   <!--
   <para>If you do not see the <prompt>login:</prompt> message then
   press <keycap>Return</keycap> or <keycap>Enter</keycap>.</para>
   -->
   <para>
   <prompt>login:</prompt> メッセージが見えない場合は、
   <keycap>Return</keycap> キーか <keycap>Enter</keycap> キーを押して下さい。
   </para>

  </section> <!-- test-verify -->


  <section id="recreate-ioctl-save">
  <!--
   <title>Re-create saved console settings</title>
   -->
   <title>保存したコンソールの設定を再作成する</title>

   <!--
   <para>Log in as <systemitem class="username">root</systemitem> from
   the serial console and send the console into single user mode. The
   modem may hang up whilst doing this and you may need to
   re-connect.</para>
   -->
   <para>
   シリアルコンソールから <systemitem class="username">root</systemitem>
   でログインし、コンソールをシングルユーザーモードに落して下さい。
   この間にモデムはハングアップすることがありますから、
   再接続が必要かも知れません。
   </para>

   <!--
   <para>Without a <filename>/etc/ioctl.save</filename> containing the
   saved terminal settings, <application>init</application> assumes a
   directly attached terminal running at 9600bps with 8 data bits, no
   parity, 1 stop bit and no flow control.  Configure your terminal
   with these settings.</para>
   -->
   <para>
   <filename>/etc/ioctl.save</filename>
   に保存しておいた端末設定が無い場合、
   <application>init</application> は、端末が直結されていること、
   そしてその端末が、速度は 9600 bps、データは 8 ビット、
   パリティ無し、ストップビットが 1 ビット、
   そして無手順で動作すると想定します。
   ですからお使いの端末をこの内容で設定して下さい。
   </para>

   <informalfigure id="recreate-ioctl-save-login">
<screen format="linespecific">
<prompt>remote.example.edu.au ttyS0 login:</prompt> <userinput>root</userinput>
<prompt>Password:</prompt> <userinput>&hellip;</userinput>
<prompt>sh#</prompt> <command>rm -f /etc/ioctl.save</command>
<prompt>bash#</prompt> <command>telinit 1</command>
&hellip;<computeroutput>
Telling INIT to go to single user mode.
INIT: Going single user
INIT: Sending processes the TERM signal</computeroutput>
<prompt>sh#</prompt> <command>stty sane -parenb cs8 crtscts brkint -istrip -ixoff -ixon</command></screen>
   </informalfigure>

   <!--
   <para>As you use <command>stty</command> to alter the Linux's
   terminal settings remember to also alter the settings of the
   attached terminal.</para>
   -->
   <para>
   <command>stty</command> を使って Linux の端末設定を変更しているので、
   接続してある端末の設定も忘れずに変更してください。
   </para>

   <!--
   <para>Exiting from single user mode back to the default run level
   will save the serial console termnial configuration into
   <filename>/etc/ioctl.save</filename>.</para>
   -->
   <para>
   シングルユーザーモードを抜けて、デフォルトのランレベルに戻ると、
   シリアルコンソールの設定を <filename>/etc/ioctl.save</filename>
   に保存します。
   </para>

   <informalfigure id="recreate-ioctl-save-login-text">
<screen format="linespecific">
<prompt>sh#</prompt> <command>exit</command>
&hellip;
<prompt>bash#</prompt> <command>ls -l /etc/ioctl.save</command>
<computeroutput>-rw------- 1 root root 60 Jan 1 00:00 /etc/ioctl.save</computeroutput></screen>
   </informalfigure>

   <!--
   <para>The terminal settings saved in
   <filename>/etc/ioctl.save</filename> will be used if the machine
   boots into single user mode for any reason.</para>
   -->
   <para>
   なんらかの理由で、マシンがシングルユーザーモードでブートする時は、
   <filename>/etc/ioctl.save</filename> に保存した端末設定が使われます。
   </para>

   <!--
   <para>If your attached terminal or modem cannot alter speed to
   9600bps then the above procedure cannot be followed.  <ulink
   url="http://www.aarnet.edu.au/network/software/ioctlsave/"><command>ioctlsave</command></ulink>
   has been written for this special case.  It saves the current
   terminal settings to a file in the same format as
   <filename>ioctl.save</filename>.  The procedure is shown in <xref
   linkend="recreate-ioctl-save-ioctlsave">.</para>
   -->
   <para>
   接続してある端末やモデムの速度を 9600 bps に変更できない場合は、
   上記の方法に従うことができません。
   <ulink url="http://www.aarnet.edu.au/network/software/ioctlsave/">
   <command>ioctlsave</command></ulink>
   というユーティリティが作られたのは、
   こういう特殊な場合に備えてのことなのです。
   このプログラムは、その時点の端末設定を
   <filename>ioctl.save</filename>
   と同じ形式でファイルに保存します。この手順は、
   <xref linkend="recreate-ioctl-save-ioctlsave"> に示してあります。
   </para>

   <figure id="recreate-ioctl-save-ioctlsave">
   <!--
    <title>Using <command>ioctlsave</command> to create
    <filename>/etc/ioctl.save</filename> without entering single user
    mode</title>
    -->
    <title>
    シングルユーザーモードに入らずに、<command>ioctlsave</command> を使って
    <filename>/etc/ioctl.save</filename> を生成する
    </title>
<screen format="linespecific">
<prompt>remote.example.edu.au ttyS0 login:</prompt> <userinput>root</userinput>
<prompt>Password:</prompt> <userinput>&hellip;</userinput>
<prompt>bash#</prompt> <command>rm -f /etc/ioctl.save</command>
<prompt>bash#</prompt> <command>ioctlsave -t /dev/ttyS0 /etc/ioctl.save</command>
</screen>
    </figure>

  </section>  <!-- recreate-ioctl-save -->


  <section id="test-console">
  <!--
   <title>Test the console</title>
   -->
   <title>コンソールをテストする</title>

   <!--
   <para>Dial in from a machine, perhaps using
   <application>Minicom</application>.</para>
   -->
   <para>
   別のマシンから、たとえば 
   <application>Minicom</application>
   を使って電話して、接続して下さい。
   </para>

   <example id="test-console-session">
   <!--
    <title>Dialing into a serial console</title>
    -->
    <title>シリアルコンソールに電話して接続する</title>
<screen format="linespecific">
<prompt>localhost bash$</prompt> <command>minicom</command></screen>

<screen format="linespecific">
<computeroutput>Initializing modem
Welcome to minicom 1.83.1
Press ALT-Z for help on special keys
AT S7=45 S0=0 L1 V1 X4 &amp;C1 E1 Q0                     
OK</computeroutput>
<keycombo><keycap>Alt</keycap><keycap>D</keycap></keycombo> <guimenuitem>remote.example.edu.au-ttyS0</guimenuitem>
<guilabel>Dialing: remote.example.edu.au-ttyS0 At: 1234-5678</guilabel>
<guilabel>Connected. Press any key to continue</guilabel>
<keycap>Any</keycap>
<computeroutput>CONNECT 115200/V34/LAPM/V42BIS/33600:TX/33600:RX</computeroutput></screen>

<screen format="linespecific">
<keycap>Enter</keycap>
<computeroutput>/etc/issue says "All your base are belong to us".</computeroutput>
<prompt>remote.example.edu.au ttyS0 login:</prompt> <userinput>user</userinput>
<prompt>Password:</prompt> <userinput>********</userinput>
<computeroutput>Message of the day is "be careful out there".</computeroutput>
<prompt>remote bash$</prompt> <command>stty -a</command>
<computeroutput>
speed 9600 baud; rows 0; columns 0; line = 0;
intr = ^C; quit = ^\; erase = ^?; kill = ^U; eof = ^D; eol = &lt;undef&gt;;
eol2 = &lt;undef&gt;; start = ^Q; stop = ^S; susp = ^Z; rprnt = ^R; werase = ^W;
lnext = ^V; flush = ^O; min = 1; time = 0;
-parenb -parodd cs8 hupcl -cstopb cread -clocal crtscts
-ignbrk brkint ignpar -parmrk -inpck -istrip -inlcr -igncr icrnl -ixon -ixoff
-iuclc -ixany -imaxbel
opost -olcuc -ocrnl onlcr -onocr -onlret -ofill -ofdel nl0 cr0 tab3 bs0 vt0 ff0
isig icanon -iexten echo echoe echok -echonl -noflsh -xcase -tostop -echoprt
-echoctl -echoke</computeroutput>
&hellip;
<prompt>remote bash$</prompt> <command>logout</command></screen>

<screen format="linespecific">
<computeroutput>NO CARRIER</computeroutput>
<keycombo><keycap>Alt</keycap><keycap>X</keycap></keycombo>
<guimenu>Leave Minicom?</guimenu> <guimenuitem>Yes</guimenuitem>
<guilabel>Resetting modem</guilabel></screen>

<screen format="linespecific">
<prompt>localhost bash$</prompt></screen>
   </example>

   <!--
   <para>Interestingly the <command>stty -a</command> command, used to
   display the terminal settings, reports that the link from the modem
   to the serial console is 9600<abbrev>bps</abbrev>.  The
   <literal>CONNECT</literal> message reports that link between the
   two modems operates at 33600<abbrev>bps</abbrev>.  The constant
   speed modem-computer link is a very useful feature of the Hayes
   <acronym>AT</acronym>-style modems: the calling computer need not
   know in advance the line speed of the called serial console.</para>
   -->
   <para>
   おもしろいことに、端末の設定を表示するのに使う
   <command>stty -a</command> 
   コマンドは、モデムからシリアルコンソールへのリンクが 9600
   <abbrev>bps</abbrev> だと伝えています。 
   一方、<literal>CONNECT</literal> 
   メッセージは、二つのモデム間が 33600<abbrev>bps</abbrev>
   で動作していると伝えています。
   モデム-コンピュータ間のリンク速度が一定だというのは、
   ヘイズの <acronym>AT</acronym> 互換モデムの非常に有益な特徴です。
   このおかげで、発呼側のコンピュータは、
   着信側のシリアルコンソールのライン速度を、
   前もって知らなくても済むのです。
   </para>

  </section> <!-- test-console -->


  <section id="end">
  <!--
   <title>Where to next from here?</title>
   -->
   <title>ここから次はどこへ？</title>

   <!--
   <para>The serial console is now configured.  Check the security
   pointers given in <xref linkend="security"> to complete the
   job.</para>
   -->
   <para>
   これでシリアルコンソールの設定はできました。
   次は <xref linkend="security"> に載っているセキュリティの指針を調べて、
   作業を完成させましょう。
   </para>

  </section> <!-- end -->

 </chapter> <!-- test -->


 <chapter id="security">
 <!--
  <title>Security</title>
  -->
  <title>セキュリティ</title>

  <!--
  <para>Using a serial console with a modem gives anyone the
  opportunity to connect to the console port.  This connection is not
  mediated by firewalls or intrusion detection sniffers.  It is
  important to prevent the misuse of the serial console by
  unauthorized people.</para>
  -->
  <para>
  モデムを通してシリアルコンソールを使用すると、
  誰でもその隙を突いてコンソールポートに接続できるようになってしまいます。
  しかし、
  モデムからファイアウォールや侵入検知用のスニファーを介して、
  接続しているわけではありませんから、
  無許可の人たちがシリアルコンソールを誤用しないようにするのは大切なことです。
  </para>

  <!--
  <para>The resurgence of the <acronym>BBS</acronym>-era technique of
  &lsquo;war dialling&rsquo; is described in @Stake's <ulink
  url="http://www.atstake.com/research/reports/acrobat/wardialling_brief.pdf"><citetitle>Wardialling
  Brief</citetitle></ulink> and reported upon by <citetitle>The
  Register</citetitle>, see an extract in <xref
  linkend="security-leyden">.</para>
  -->
  <para>
  &lsquo;war dialling&rsquo; という
  <acronym>BBS</acronym> 時代の技術の復活については、
  @Stake の
  <ulink url="http://www.atstake.com/research/reports/acrobat/wardialling_brief.pdf">
  <citetitle>Wardialling Brief</citetitle></ulink>
  で説明されており、
  <citetitle>The Register</citetitle> が報告しました。
  <xref linkend="security-leyden"> の抜粋を見て下さい。

  <footnote><para>
  訳注：&quot;The Register&quot; に関して原著者に問い合わせたところ、
  これはオンライン新聞だという答えでした。
  場所は、<ulink url="http://www.theregister.co.uk/">
  <citetitle>www.theregister.co.uk</citetitle></ulink> です。
  </para></footnote>

  </para>

  <figure id="security-leyden">
  <!--
   <title>Extract from <citetitle>Crackers favour war dialling and
   weak passwords</citetitle></title>
   -->
   <title>
   <citetitle>Crackers favour war dialling and weak passwords</citetitle>
   （クラッカーは電話と弱いパスワードがお気に入り）からの抜粋
   </title>

   <blockquote>
   <!--
    <para>With all the talk about zero day exploits and sometimes
    esoteric vulnerabilities its easy to lose sight of the role of
    older, less sophisticated techniques as a mainstay of cracker
    activity.</para>
    -->
    <para>
    未報告のセキュリティ脆弱性への攻撃や、
    たまには複雑怪奇なセキュリティホールの話題に夢中になっていると、
    昔ながらの武骨な技術が、
    クラッカーの活動の大黒柱としての役割を担っていることを忘れがちになる。

    <footnote><para>訳注：
    ソフトウェア上の問題点がアンダーグラウンドで発見された場合、
    その問題点はある期間誰にもどこにも報告されないことがあり、その期間を 
    &quot;zero day&quot; というようです。
    この期間はその問題点を誰も知らないのでパッチも無いし対策もないから、
    その問題点を悪用できるというのが
    &quot;zero day&quot; が持つ意味らしいです。
    </para></footnote>

    </para>

    <!--
    <para>During a hacking debate at InfoSecurity Europe yesterday
    [2002-04-25], black hat hacker KP said that when he broke into a
    network he did so 90 per cent of the time through an unprotected
    modem, often through war dialling.</para>
    -->
    <para>
    昨日[2002年04月25日] InfoSecurity Europe のハッキング討論会の最中に、
    ブラックハットハッカーの KP が、
    自分がネットワークに侵入した際、
    その時間の 90 パーセントは無防備なモデムを通って侵入したし、
    その多くは war dialing して発見したものだと語った。

    <footnote><para>
    訳注：ブラックハットハッカー（クラッカー）というのは、
    悪意を持ってコンピュータやネットワークに侵入して、
    ファイルを壊したりデータを盗んだりするようです。
    対するホワイトハットハッカーは、
    コンピュータやネットワークのセキュリティ上の弱点を見つけてそれを公表し、
    管理者がその弱点を修復できるようにします。
    </para></footnote>

    </para>

    <!--
    <para>War dialling involves systematically trying to locate the
    numbers associated with corporate modems through testing each
    extension of a corporate phone system in turn.</para>
    -->
    <para>
    &quot;War dialling&quot; 
    では、会社の電話システムの内線を順番に試しながら、
    会社が使っているモデムに関係する電話番号を、
    骨惜しみせず系統的に突き止める必要がある。
    </para>

    <!--
    <para>&ldquo;Intrusion detection systems are no real deterrent for
    me because I get in through the back door,&rdquo; he
    said. &ldquo;Many networks are constructed like Baked Alaska
    &mdash; crunchy on the outside and soft in the
    middle.&rdquo;</para>
    -->
    <para>
    &ldquo;僕にとっては、侵入検知システムなんか実際恐れるに足らずさ。
    だって裏口から入るんだから。
    たいていのネットワークはベイクドアラスカ

    <footnote><para>
    訳注：ベイクドアラスカ(Baked Alaska)というのは、
    スポンジケーキにアイスクリームを載せて、
    メレンゲで包み、オーブンでさっと焼いたデザートのこと。
    </para></footnote>

    みたいに作ってあるんだ。
    外側はカリカリしてるけど、中は柔らかいんだよ&rdquo;
    とは、先の KP の談。

    </para>

    <!--
    <para>KP often takes advantage of weak or default passwords to
    break into networks&hellip;</para>
    -->
    <para>
    KP はネットワークに侵入するのに、弱いパスワードやデフォルトのままの
    パスワードをよく利用する。
    </para>

    <!-- 以下の部分は原著者がコメントアウトした部分です。-->
    <!-- This part excised

    ..., and only uses social engineering attacks on telco
    companies.</para>

    <para>Coldfire, another cracker speaking at the debate, said he
    too only used social engineering (persuading people to give
    confidential information over the phone), against telco
    suppliers.</para>

    <para>&ldquo;Hackers don't like talking to people - remember we're
    socially inadequate,&rdquo; he joked.</para>

    <para>In response to customer demand, security testing specialists
    NTA Monitor this week launched a service to test against war
    dialling vulnerability.</para>

    <para>&ldquo;This isn't particularly sexy,&rdquo; said NTA
    Monitor's technical director Roy Hills. &ldquo;But we're seeing
    high demand for this low-tech service.&rdquo;</para>

    <para>The issue of war dialling and insecure modem connections was
    highlighted last month when BT inadvertently published the private
    remote access numbers of thousands of its customers on its Web
    site. The list was supposed to include the dial up numbers of
    ISPs, but modem numbers of private companies and people were
    published as well by mistake.</para>

    <para>BT swiftly pulled the information from the BT Together site
    but now before the monster telco earned brickbats from security
    consultants.</para>

    -->
    <!-- ここまでの部分は原著者がコメントアウトした部分です。-->

   </blockquote>

<literallayout format="linespecific" linenumbering="unnumbered" class="normal">
<citetitle>Crackers favour war dialling and weak passwords</citetitle>
John Leyden, <ulink url="http://www.theregister.co.uk/content/55/25044.html"><citetitle>The Register</citetitle></ulink>, 2002-04-26.</literallayout>
  </figure>


  <section id="security-password">
  <!--
   <title>Use good passwords</title>
   -->
   <title>良いパスワードを使う</title>

   <!--
   <para>Anyone that can guess the <acronym>BIOS</acronym> password,
   the boot loader password, or the <systemitem
   class="username">root</systemitem> password can get full control of
   the machine.  These should be different, unrelated, excellent
   passwords.  Random text and digits are by far the best choice.  You
   should never use a password that you think would return a hit from
   a search engine.<footnote>
   -->
   <para>
   <acronym>BIOS</acronym> やブートローダー、あるいは
   <systemitem class="username">root</systemitem>
   のパスワードを推測できる人なら、誰でもそのマシンを完全に制御できてしまいます。
   ですからこういったパスワードは、別々で、互いに何の関係もない、
   良いパスワードにしてください。今のところ、一番良いのは、
   ランダムな文字列と数字列を選ぶことです。
   検索エンジンでヒットするだろうと思うようなパスワードは、
   絶対使わないでください。
   <footnote>

   <!--
     <para>But don't submit your proposed password to a search engine!
     Sending passwords in plain text across the Internet isn't good,
     nor the possibility of having them appear in the logs of a search
     engine.</para></footnote></para>
     -->
     <para>
     しかし、自分が良いと思うようなパスワードを、
     検索エンジンで検索しないでください。
     インターネットに平文でパスワードを送るのは良いことではないし、
     検索エンジンのログに、
     そのパスワードが載ってしまう可能性もあります。
     </para>
     </footnote>
     </para>

     <!--
   <para>Guessing a user's password is only slightly less severe, as a
   hacker can obtain <systemitem class="username">root</systemitem>
   access simply by waiting.  The hacker waits for a &lsquo;local
   exploit&rsquo; for a flaw in the operating system to appear and
   uses that exploit before the machine is patched.</para>
   -->
   <para>
   ユーザーのパスワードが推測されてしまう、
   それはたしかに一大事です。
   ですがハッカーは、
   ただ待っているだけで
   <systemitem class="username">root</systemitem>
   のアクセス権限を入手できます。
   つまり、
   オペレーティングシステムの欠陥に起因する、
   マシンの脆弱性が公表されるのを待ち、
   そのマシンにパッチがあたる前にその脆弱性を突くのです。
   </para>

   <!--
   <para>Severely limit the number of users on the machine.  Ensure
   that only good passwords are chosen by using a fascist password
   checker such as a <ulink
   url="http://www.users.dircon.co.uk/~crypto/"><application>cracklib</application></ulink>-based
   <ulink
   url="http://www.kernel.org/pub/linux/libs/Linux-PAM-html/pam.html"><application>PAM</application></ulink>
   module.</para>
   -->
   <para>
   マシン上のユーザー数を厳しく制限して下さい。そして、
   <ulink url="http://www.users.dircon.co.uk/~crypto/">
   <application>cracklib</application></ulink>
   を元にした
   <ulink url="http://www.kernel.org/pub/linux/libs/Linux-PAM-html/pam.html">
   <application>PAM</application></ulink>
   モジュールのような、ファシストパスワードチェッカーを使って、
   確実に良質のパスワードだけを選ぶようにしてください。
   </para>

   <!--
   <para>You should write down the <acronym>BIOS</acronym> password,
   the boot loader password and the <systemitem
   class="username">root</systemitem> password.  Now you don't need to
   remember them, so there is no reason for them not to be totally
   random, unrelated, excellent passwords.  Fold the page, put it in
   an envelope and seal it.</para>
   -->
   <para>
   <acronym>BIOS</acronym> のパスワードやブートローダーのパスワード、
   それに <systemitem class="username">root</systemitem> のパスワードは、
   何かに書き留めておいてください。
   こうすれば、これらのパスワードは覚えなくても済みますから、
   完全にランダムで互いに無関係な、
   最良のものをパスワードにしない理由はありません。
   その書き留めたものは折り畳んで封筒に入れて、そして封をしてください。
   </para>

   <!--
   <para>Now we have turned a computer security problem into a
   physical security problem.  We know how to solve those problems:
   locks, keys, alarms, safes, guards, regular inspections.  If your
   site has staffed security then a good option is to leave the
   envelope in the care of the guard post with instructions to treat
   the envelope with the same procedures used for the site's master
   keys.  Smaller sites can use a safe, a cash box or a locked drawer.
   A thief forcing a locked drawer still leaves shows more apparent
   signs of entry and more clues to their identity than is left by a
   hacker behind a modem.</para>
   -->
   <para>
   これでコンピュータセキュリティの問題は、物理的な面に移りました。
   これらの問題の解決方法は分かっています。錠前と鍵、警報器、金庫、
   警備員、それに定期査察です。自分のサイトに警備員を配置しているなら、
   その封筒を守衛室気付にして出して下さい。
   その際、この封筒をマスターキーと同じ手順で扱うよう指示した、
   取扱い説明書をこの封筒に付けてください。これがうまいやり方です。
   小規模なサイトなら、金庫や手さげ金庫、
   あるいは鍵のかかる引出しを使ってもかまいません。
   施錠した引出しを無理矢理こじ開けた泥棒の方が、
   モデムの背後にいるハッカーよりも、
   はっきりとした侵入の痕跡や多くの手がかりをいっそう残すものです。
   </para>

   <!--
   <para>These three passwords are an important corporate asset.  If
   the machine is secure then forgetting the major passwords for the
   machine should result in a machine whose configuration cannot be
   altered by actions short of disassembly.  You should have written
   procedures controlling the generation, storage, lifetime and use of
   major passwords.</para>
   -->
   <para>
   これら三つのパスワードは重要な会社の資産です。
   そのマシンが厳重に保管されている場合、
   そのマシンに関する主要なパスワードを忘れてしまうと、
   分解するなら別ですが、
   いつものやり方では設定が変更できないマシンになってしまいます。
   重要なパスワードの生成方法や保管場所、有効期限、
   および使い方の管理手順は、文書化しておいてください。
   </para>

  </section> <!-- security-password -->

  
  <section id="security-dtr">
  <!--
   <title>Obey Data Terminal Ready and Data Carrier Detect</title>
   -->
   <title>
   &quot;Data Terminal Ready&quot; と &quot;Data Carrier Detect&quot; に従う
   </title>

   <!--
   <para>The <acronym>RS-232</acronym> Data Terminal Ready signal is
   lowered when the computer wishes the modem to hang up.  The
   computer wishes to hang up when people have ended their login
   session ends or when they fail to respond to the
   <prompt>login:</prompt> prompt.</para>
   -->
   <para>
   コンピュータがモデムをハングアップさせようとする場合、
   <acronym>RS-232</acronym> の &quot;Data Terminal Ready&quot;
   信号が落ちます。
   これは、ログインセッションが終了した時、
   またはログインに失敗した時に起こります。
   </para>

   <!--
   <para>Using a modem cable that has <acronym>DTR</acronym> wired and a
   modem that is configured to obey <acronym>DTR</acronym> is essential
   to prevent denial of service attacks upon the access to the
   console.</para>
   -->
   <para>
   <acronym>DTR</acronym>
   が結線されているモデムケーブルを使うことと、
   モデムを <acronym>DTR</acronym>
   に従うように設定することは、
   コンソールを利用したサービス拒否攻撃を防止する上で必須です。
   </para>

   <!--
   <para>Without <acronym>DTR</acronym> a caller can simply hold the
   modem line open, denying system administrators access to the
   console.</para>
   -->
   <para>
   <acronym>DTR</acronym> 信号がないと、
   発呼側は簡単にモデムラインをオープンのままにできるので、
   システム管理者はコンソールへアクセスできなくなってしまいます。
   </para>

   <!--
   <para>The <acronym>RS-232</acronym> Data Carrier Detect signal is
   lowered when the user hangs up.</para>
   -->
   <para>
   <acronym>RS-232</acronym> の &quot;Data Carrier Detect&quot; 信号は
   ユーザーがハングアップすると落ちます。
   </para>

   <!--
   <para>Using a modem cable that has <acronym>DCD</acronym> wired and
   a modem that is configured to assert <acronym>DCD</acronym> is
   essential to prevent people dialling in after a user has hang up
   and from carrying on their session.</para>
   -->
   <para>
   <acronym>DCD</acronym>
   が結線されているモデムケーブルを使うことと、
   <acronym>DCD</acronym>
   をアサートするようにモデムを設定することは、
   ユーザーがハングアップした後に、
   誰かが電話をかけてそこに接続しないようしたり、
   そのセッションを続けて使用するのを防止するためには欠かせません。
   </para>

   <!--
   <para>Without <acronym>DCD</acronym> the session is not cleared when
   an accidental disconnection occurs.  This allows any subsequent
   caller to resume the previous session.  The machine is totally
   compromised if the previous user was <systemitem
   class="username">root</systemitem>.</para>
   -->
   <para>
   <acronym>DCD</acronym> が無いと、
   不意に接続が切れてもそのセッションはクリアされません。
   こうなるとその後の発呼者は、
   誰でも直前のセッションを再開できてしまいます。
   もし直前のユーザーが 
   <systemitem class="username">root</systemitem> だったら、
   そのマシンはすっかり危険に晒されてしまいます。
   </para>

  </section> <!-- security-dtr -->


  <section id="security-dumb">
  <!--
   <title>Use or configure a dumb modem</title>
   -->
   <title>ダムモデムを使う、あるいは設定する。</title>

   <!--
   <para>Most modems use the Hayes <acronym>AT</acronym> command set.
   The modem's attention is gained by sending <literal>+++</literal>
   surrounded by some idle time.  Commands are then sent prefixed by
   <literal>AT</literal>.</para>
   -->
   <para>
   たいていのモデムはヘイズの <acronym>AT</acronym>
   コマンドセットを使っています。
   ある程度の時間をおいて <literal>+++</literal> を送れば、
   そのモデムはコマンドモードに戻ります。
   そのあと先頭に
   <literal>AT</literal> を付けてコマンドを送ります。
   </para>

   <!--
   <para>Unfortunately, if the modem sees <literal>+++</literal>
   during a call it may revert to command mode.  The modem can then be
   configured by the caller.  For example, the modem could be set to
   permit incoming calls only from the number &lsquo;0&rsquo;, this
   would deny the system administrators access to the modem.</para>
   -->
   <para>
   モデムが話中に <literal>+++</literal> を検知すると、
   あいにくコマンドモードに逆戻りするかも知れません。
   そうなると、モデムは発呼側から設定できてしまいます。
   例えば、
   &lsquo;0&rsquo;
   番からしか着信できないように設定できてしまいます。
   そうなると、システム管理者はモデムにアクセスできなくなります。
   </para>

   <!--
   <para>The attention command can be removed using <command>AT
   S2=255</command>.  Of course once that is done no more
   <acronym>AT</acronym> commands can be given to the modem, so any
   other configuration of the modem needs to be done prior to that
   command.</para>
   -->
   <para>
   コマンドモードに戻すこのコマンドは
   <command>AT S2=255</command> を使って取り除けます。
   もちろんいったんそうしてしまうと、
   モデムは <acronym>AT</acronym> コマンドをそれ以上受け付けなくなります。
   ですから、このコマンドを実行する前に、
   モデムに対するその他の設定を済ませておく必要があります。
   </para>

   <!--
   <para>Unfortunately, when power to the modem is applied the modem
   starts in command mode.  So a carefully chosen console message
   could disable the modem.</para>
   -->
   <para>
   ですがあいにく、モデムの電源を入れると、
   モデムはコマンドモードでスタートしてしまいます。
   ですから、コンソールメッセージを注意深く選べば、
   モデムを無効にできてしまうのです。
   </para>

   <!--
   <para>The best solution is to select a modem that has a
   &lsquo;dumb&rsquo; or &ldquo;select profile&rdquo;
   <acronym>DIP</acronym> switch or jumper.  These switches disable
   command mode and load the modem's saved configuration when they
   start.</para>
   -->
   <para>
   最良の解決方法は、&lsquo;dumb&rsquo;
   または &ldquo;select profile&rdquo;
   の、<acronym>DIP</acronym>
   スイッチ、あるいはジャンパーが付いているモデムを選ぶことです。
   これらのスイッチを使えば、コマンドモードが無効になり、
   保存してある設定がロードされます。
   </para>

  </section> <!-- security-dumb -->

  <section id="security-messages">
  <!--
   <title>Restrict console messages</title>
   -->
   <title>コンソールメッセージを制限する</title>

   <section id="security-messages-log">
   <!--
    <title>Restrict console messages from the system log</title>
    -->
    <title>システムログが出力するコンソールメッセージを制限する</title>

    <!--
    <para>Generating a stready stream of console messages can easily
    overwhelm a 9600<abbrev>bps</abbrev> link.</para>
    -->
    <para>
    コンソールメッセージを間断無く流すようにしておくと、
    簡単に 9600<abbrev>bps</abbrev> のリンクが飽和することがあります。
    </para>

    <!--
    <para>Although displaying all <application>syslog</application>
    messages on the console appears to be a good idea, this actually
    provides the unprivileged user a simple method to deny effective
    use of the remote console.</para>
    -->
    <para>
    すべての <application>syslog</application> 
    メッセージをコンソールに表示するのはうまい考えのように見えますが、
    実は、権限の無いユーザーが簡単な方法を使って、
    リモートコンソールを実質的に使えなくしてしまえるのです。
    </para>

    <!--
    <para>Configure system log messages to the console to the bare
    minimum. Look in <filename>/etc/syslog.conf</filename> for lines
    ending with <filename
    class="devicefile">/dev/console</filename>.</para>
    -->
    <para>
    ですから、
    コンソールに出力するシステムログメッセージは、
    本当に必要最小限にするように設定してください。
    <filename>/etc/syslog.conf</filename>
    をちょっと覗いて、
    <filename class="devicefile">/dev/console</filename>
    で終っている行を探してみて下さい。
    </para>

    <!--
    <para>Consider sending all log messages to another machine for
    recording and analysis.  <xref
    linkend="security-messages-syslogconf"> shows the standard
    <filename>/etc/syslog.conf</filename> from <productname>Red Hat
    Linux</productname> <productnumber>7.2</productnumber> modified to
    record log messages to a log server.  Each line of
    <filename>syslog.conf</filename> has been repeated to send a copy
    of the message to the log server.  The log server has the
    <acronym>DNS</acronym> alias <systemitem
    class="systemname">loghost.example.edu.au</systemitem>; using a
    <acronym>DNS</acronym> alias allows the log server to be moved
    without updating the configuration of all the remote machines.
    The local copy of the log message is no longer the only means of
    determining the cause of a system failure, so we can gain some
    performance advantage by disabling synchronous file writes,
    although this increases the odds of an inconsistent filesystem (an
    issue with filesystems that do not do journalling).  Placing a
    <literal>-</literal> before the filename disables synchronous file
    writes.</para>
    -->
    <para>
    この設定ファイルを変更して、
    すべてのログメッセージを別のマシンに送り、
    そこで記録し解析するという方法を考えてみましょう。
    <productname>Red Hat Linux</productname> 
    <productnumber>7.2</productnumber> 
    標準の <filename>/etc/syslog.conf</filename>
    を、ログメッセージをログサーバーで記録するように修正したものを
    <xref linkend="security-messages-syslogconf">
    に示してあります。
    <filename>syslog.conf</filename> の各行を繰り返して、
    メッセージのコピーをログサーバーへ送るようにしました。
    ログサーバーには
    <systemitem class="systemname">loghost.example.edu.au</systemitem>
    という、<acronym>DNS</acronym> の別名があります。
    こうしておくと、すべてのリモート機の設定を更新しなくても、
    ログサーバーの移動が可能になります。
    これで、システム障害の原因を特定する方法が、
    もうログメッセージのローカルコピーしかないなどということは無くなります。
    ですから、同期をとってファイルに書き込むのを止めれば、
    ファイルシステムに不整合が発生する確率は増加しますが、
    性能面で多少有利になります
    （これはファイルシステムがジャーナルを取らないから起こる問題点です）。
    ファイル名の直前に <literal>-</literal> を置けば、
    ファイルへの書き込みが同期しなくなります。
    </para>

    <figure id="security-messages-syslogconf">
    <!--
     <title><filename>/etc/syslog.conf</filename> modified to copy log
     messages to a log server</title>
     -->
     <title>
     ログメッセージのコピーをログサーバーへ送るように修正した
     <filename>/etc/syslog.conf</filename>
     </title>
<programlisting>
<!--
# Log anything (except mail) of level info or higher.
# Don't log private authentication messages!
-->
# （メールを除く）info レベル以上のメッセージはログに採取する。
# プライベートな認証メッセージはログに取らない。
*.info;mail.none;authpriv.none;cron.none  @loghost.example.edu.au
*.info;mail.none;authpriv.none;cron.none  -/var/log/messages

<!--
# The authpriv file has restricted access.
-->
# authpriv ファイルはアクセス制限をかけている。
authpriv.*                                @loghost.example.edu.au
authpriv.*                                /var/log/secure

<!--
# Log all the mail messages in one place.
-->
# メールのメッセージはすべて一箇所でログに取る。
mail.*                                    @loghost.example.edu.au
mail.*                                    -/var/log/maillog

<!--
# Log cron stuff
-->
# cron関係のログ
cron.*                                    @loghost.example.edu.au
cron.*                                    -/var/log/cron

<!--
# Everybody gets emergency messages
-->
# 緊急メッセージはみんなに流す
*.emerg                                   @loghost.example.edu.au
*.emerg                                   *

<!--
# Save news errors of level crit and higher in a special file.
-->
# crit レベル以上のニュースのエラーは特別なファイルに保存する。
uucp,news.crit                            @loghost.example.edu.au
uucp,news.crit                            -/var/log/spooler

<!--
# Save boot messages also to boot.log
-->
# ブートメッセージは boot.logにも保存する。
local7.*                                  @loghost.example.edu.au
local7.*                                  -/var/log/boot.log
</programlisting>
    </figure>

    <!--
    <para>A log server is configured using the standard
    <filename>/etc/syslog.conf</filename> configured to allow the
    reception of remote <application>syslog</application> messages.
    This configuration for <productname>Red Hat Linux</productname> is
    shown in <xref linkend="security-messages-sysconfig">.  In
    addition to configuring the system log daemon, also prevent denial
    of service attacks by configuring <application>IP
    Tables</application> to restrict the sources of the syslog
    messages; and also improve performance by checking that
    <application>nscd</application> is running to cache reverse
    <acronym>DNS</acronym> lookups.</para>
    -->
    <para>
    ログサーバーは標準の
    <filename>/etc/syslog.conf</filename>
    を使って設定しますが、このファイルは、
    リモートの <application>syslog</application>
    メッセージを受け取れるようにしておきます。
    <productname>Red Hat Linux</productname>
    用に設定したこのファイルを、
    <xref linkend="security-messages-sysconfig">
    に示します。
    システムのログデーモンの設定に加えて、
    syslog メッセージの送信元を制限するように
    <application>IP Tables</application> を設定して、
    サービス拒否攻撃も防御して下さい。
    また、<application>nscd</application>
    が動いていて、<acronym>DNS</acronym>
    の逆引きをキャッシュしているのを確認して、
    性能改善も行なって下さい。
    </para>

    <figure id="security-messages-sysconfig">
    <!--
     <title>Allowing remote log messages by setting options in
     <filename>/etc/sysconfig/syslog</filename></title>
     -->
     <title>
     <filename>/etc/sysconfig/syslog</filename> のオプションを設定して、
     リモートのログメッセージを許可する。
     </title>
<programlisting>
<!--
# Red Hat Linux default value, does not write timer mark messages
-->
# Red Hat Linux のデフォルト値。タイマー起動の &lsquo; --MARK-- &rsquo; メッセージは書かない。
SYSLOGD_OPTIONS="-m 0"
<!--
# Add option to accept remote syslog messages
-->
# リモートの syslog メッセージを受け取るようにオプションを追加。
SYSLOGD_OPTIONS="${SYSLOGD_OPTIONS} -r"
</programlisting>
    </figure>

    <figure id="security-messages-iptables">
     <!--
     <title>Restrict <application>syslog</application> messages to
     <systemitem
     class="systemname">remote.example.edu.au</systemitem></title>
     -->
     <title>
     <systemitem class="systemname">remote.example.edu.au</systemitem>
     への
     <application>syslog</application> メッセージを制限する</title>
<screen>
<prompt> bash#</prompt> <userinput>chkconfig iptables on</userinput>
<prompt> bash#</prompt> <userinput>/etc/init.d/iptables restart</userinput>
<!--
# Allow all IP traffic from this machine
-->
# 本機からの IP トラフィックをすべて許可する
<prompt> bash#</prompt> <userinput>iptables --append INPUT --source 127.0.0.0/8 --in-interface lo --jump ACCEPT</userinput>
<!--
# Perhaps filter other traffic
-->
# たぶん、他のトラフィックをフィルターにかける
&hellip;
<!--
# Accept syslog messages from remote.example.edu.au
-->
# remote.example.edu.au からの syslog メッセージを受け取る
<prompt> bash#</prompt> <userinput>iptables --append INPUT --source remote.example.edu.au --protocol udp --destination-port syslog -j ACCEPT</userinput>
<!--
# Silently drop unexpected syslog messages
-->
# 予定外の syslog メッセージは黙って落とす
<prompt> bash#</prompt> <userinput>iptables --append INPUT --protocol udp --destination-port syslog -j DROP</userinput>
<!--
# Save the running configuration
-->
# 動作中の設定を保存する
<prompt> bash#</prompt> <userinput>/etc/init.d/iptables save</userinput>
</screen>
    </figure>

    <figure id="security-messages-nscd">
    <!--
     <title>Using <application>nscd</application> to cache reverse
     <acronym>DNS</acronym> lookups</title>
     -->
     <title>
     <application>nscd</application> を使って <acronym>DNS</acronym> の
     逆引きをキャッシュする。
     </title>
<screen>
<prompt>bash#</prompt> <userinput>chkconfig nscd on</userinput>
<prompt>bash#</prompt> <userinput>/etc/init.d/nscd restart</userinput>
</screen>
    </figure>

   </section> <!-- security-messages-log -->

   <section id="security-mesasges-wall">
   <!--
    <title>Restrict broadcast messages to the console</title>
    -->
    <title>
    コンソールに対するブロードキャストメッセージを制限する
    </title>

    <!--
    <para>Users that are logged into the serial console should not
    accept broadcast messages.  Add new files to <filename
    class="directory">/etc/profile.d</filename> to do this.  <xref
    linkend="security-messages-shlong"> shows a file for use by the
    Bourne shell.</para>
    -->
    <para>
    シリアルコンソールにログインしているユーザーは、
    ブロードキャストメッセージを受け取らないでください。
    そうするには、
    <filename class="directory">/etc/profile.d</filename>
    に新しいファイルを追加します。
    <xref linkend="security-messages-shlong">
    に Bourneシェルで使うファイルを示しています。
    </para>

    <figure id="security-messages-shlong">
    <!--
     <title>Restrict sending of messages to console user</title>
     -->
     <title>コンソールユーザーへのメッセージ送信を制限する。</title>
<programlisting>
#
<!--
# Do we have files referred to?
-->
# 参照されるファイルはあるか？
if [ -x /usr/bin/mesg -a -x /usr/bin/tty ]
then
<!--
  # Are we on serial console?
  -->
  # シリアルコンソールにいるのか？
  if [ `/usr/bin/tty` = /dev/ttyS0 ]
  then
  <!--
    # Do not accept broadcast messages
    -->
    # ブロードキャストメッセージは受け取らない
    /usr/bin/mesg n
  fi
fi
</programlisting>
    </figure>

    <!--
    <para>As this file is run frequently, we use a faster but less
    readable version of <xref linkend="security-messages-shlong">,
    shown in <xref linkend="security-messages-sh">.</para>
    -->
    <para>
    このファイルは頻繁に実行するので、 
    コードは今より読みずらくはなりますが、
    もっと高速にした
    <xref linkend="security-messages-shlong">
    というバージョンを使うことにします。
    このバージョンは <xref linkend="security-messages-sh"> に示しました。
    </para>

    <figure id="security-messages-sh">
    <!--
     <title>Restrict sending of messages to console user,
     <filename>/etc/profile.d/mesg.sh</filename></title>
     -->
     <title>
     <filename>/etc/profile.d/mesg.sh</filename>、コンソールユーザーへの
     メッセージ送信を制限する。
     </title>
<programlisting>
#
<!--
&num; /etc/profile.d/mesg.sh &#045;&#045; prevent people hassling the serial console user
-->
# /etc/profile.d/mesg.sh -- 他の人がシリアルコンソールのユーザーを悩まさないようにする。

[ -x /usr/bin/mesg -a -x /usr/bin/tty -a `/usr/bin/tty` = /dev/ttyS0 ] &amp;&amp; /usr/bin/mesg n
</programlisting>
    </figure>

    <!--
    <para>We also need a C shell version, shown in <xref
    linkend="security-messages-csh">.</para>
    -->
    <para>
    C シェル用も必要ですから、
    <xref linkend="security-messages-csh"> に示しました。
    </para>

    <figure id="security-messages-csh">
    <!--
     <title>Restrict sending of messages to console user,
     <filename>/etc/profile.d/mesg.csh</filename></title>
     -->
     <title>
     <filename>/etc/profile.d/mesg.csh</filename>、
     コンソールユーザーへのメッセージ送信を制限する。
     </title>
<programlisting>
#
<!--
&num; /etc/profile.d/mesg.csh &#045;&#045; prevent people hassling the serial console user
-->
# /etc/profile.d/mesg.csh -- 他の人がシリアルコンソールのユーザーを悩まさないようにする。
if (-X mesg &amp;&amp; -X tty &amp;&amp; `tty` == /dev/ttyS0) then
  mesg n
endif
</programlisting>
    </figure>

    <!--
    <para>Although <filename>mesg.sh</filename> and
    <filename>mesg.csh</filename> are included by the parent shell
    rather than executed, the files need the execute permission
    set. The procedure in <xref linkend="security-messages-install">
    installs the files and sets the permissions.</para>
    -->
    <para>
    <filename>mesg.sh</filename> と <filename>mesg.csh</filename> は
    親シェルが実行するというよりも親シェルに付随するものですが、このファイル
    には実行パーミッションを設定する必要があります。
    このファイルのインストールとパーミッションの設定は、
    <xref linkend="security-messages-install"> に示した手順で行ないます。
    </para>

    <figure id="security-messages-install">
    <!--
     <title>Install files into <filename
     class="directory">/etc/profile.d</filename></title>
     -->
     <title>
     ファイルを <filename class="directory">/etc/profile.d</filename>
     にインストールする。
     </title>
    <screen format="linespecific">
<prompt>bash#</prompt> <command>cp mesg.*sh /etc/profile.d/</command>
<prompt>bash#</prompt> <command>chown root:root /etc/profile.d/mesg.*sh</command>
<prompt>bash#</prompt> <command>chmod u=rwx,g=rx,o=rx /etc/profile.d/mesg.*sh</command></screen>
    </figure>

   </section> <!-- security-messages-wall -->

  </section>  <!-- security-messages -->


  <section id="security-modem">
  <!--
   <title>Modem features to restrict usage</title>
   -->
   <title>モデムの機能を用いて使用を制限する</title>

   <!--
   <para>Most modems support the addition of a password.  This is not
   particularly useful as it has the same strengths and weaknesses of
   all other password authentication schemes.  We already have
   password authentication in the <acronym>BIOS</acronym>, in the boot
   loader and in <application>login</application>.</para>
   -->
   <para>
   たいていのモデムはパスワードが追加できるようになっています。
   しかしこのパスワードも、
   長所と短所は他のすべてのパスワード認証方法と同じですから、
   特に有用だというわけではありません。
   すでにパスワード認証は 
   <acronym>BIOS</acronym> にもあるしブートローダーにもあります。それに 
   <application>login</application> でもパスワード認証を行なっています。
   </para>

   <!--
   <para>Many modems support call-back.  The modem is called and a few
   seconds after hang-up it calls a pre-configured number.  This
   limits the locations that can gain access to the console. </para>
   -->
   <para>
   モデムの多くはコールバックをサポートしています。モデムに電話がかかり、
   ハングアップしてから2、3秒後に、
   予め設定してある電話番号に電話をします。
   これによって、コンソールにアクセスできる場所が制限されます。
   </para>

   <!--
   <para>Many modems support checking the calling line identification
   (CLI) against a predefined list.  If the calling number is not on
   the list then the call is cleared.  The phone line to the modem
   must be configured to send CLI, this may incur an additional charge
   from the phone company.  Not all calling phones can send CLI and
   some valid callers may have asked their phone company to suppress
   the sending of CLI.</para>
   -->
   <para>
   多くのモデムでは、
   発信元電話番号 (CLI) を予め定義してあるリストと照合できるようになっています。
   もし発信元の電話番号がこのリスト上にない場合は接続しません。
   モデムにつながっている電話線は CLI を送るように設定しなければなりませんが、
   こうしてしまうと、
   電話会社から追加課金されてしまうかもしれません。
   かけている電話すべてが CLI を送れるわけではありませんし、
   正当な発信者の中には、
   電話会社に CLI の送信を抑えるよう頼んだ人がいるかもしれません。
   </para>

   <!--
   <para>Many modems can be configured to log the calling line
   identification.  This is useful when tracing misuse.</para>
   -->
   <para>
   着信した電話番号を記録するように設定できるモデムもたくさんあります。
   誤用を追跡する場合にこれは役立ちます。
   </para>

   <!--
   <para>Many modems support encryption.  Some modems allow multiple
   keys.  This gives a neat solution: only authorized modems can dial
   in, but they can do so from any location.  The modems usually need
   to be of the same make, and perhaps of the same model.</para>
   -->
   <para>
   モデムの多くは暗号化をサポートしています。
   モデムによっては、キーを複数許可しているものもあります。
   これで問題が手際良く解決します。こうすれば、
   許可されたモデムだけが、
   どこからでも電話して接続できるようになります。
   この場合、モデムは通常同じ種類にする必要がありますし、
   おそらく型も同じにしなければなりません。
   </para>

   <warning id="warning-crypto">
   <!--
    <title>Encryption dual-use technology</title>
    -->
    <title>暗号化の二重使用技術</title>

    <!--
    <para>Possessing, using, buying, selling, importing or exporting
    modems with encryption features is a serious criminal offense in
    some countries.</para>
    -->
    <para>
    暗号化機能を有するモデムの所有、使用、売買、あるいは輸出入は、国に
    よっては重大な犯罪になります。
    </para>

    <!--
    <para>You must acquiant yourself with the laws in your
    jurisdiction and the laws of jurisdictions you may travel
    through.</para>
    -->
    <para>
    ですから、自国内の法律と、
    旅行で通るかも知れない国々の法律に精通していなければなりません。
    </para>
   </warning>

   <!--
   <para>Many telephone services or <acronym>PBX</acronym> lines can
   be set to allow only incoming calls.  This is useful as it prevents
   misuse of the modem should the computer be compromised.  A
   &lsquo;demon dialler&rsquo; can call many numbers seeking an
   answering modem and the cost of these calls can be
   significant.</para>
   -->
   <para>
   多くの電話サービスや <acronym>PBX</acronym> ラインは、
   着信だけを許可するよう設定できます。
   万が一コンピュータに悪さをされたとしても、
   そのようにしておけば、モデムの誤用を防止するうえで役に立ちます。
   &lsquo;demon dialler&rsquo;
   は多くの電話番号に電話をかけて、
   応答するモデムを探すことができますが、
   この電話の費用は莫大になる可能性があります。
   </para>

  </section> <!-- security-modem -->


  <section id="security-bios">
  <!--
   <title><acronym>BIOS</acronym> features</title>
   -->
   <title> <acronym>BIOS</acronym> の特徴</title>

   <!--
   <para>Most <acronym>BIOS</acronym>s can be configured with a
   &lsquo;configuration password&rsquo;.  This should set and tested.
   Some motherboards will require a jumper to be set to allow the
   password to take effect.  Some <acronym>BIOS</acronym>s have
   well-known &lsquo;master passwords&rsquo;, use a search engine to
   ensure that your <acronym>BIOS</acronym> is not one of these.  The
   password should not be the same as the boot loader or <systemitem
   class="username">root</systemitem> passwords.</para>
   -->
   <para>
   ほとんどの <acronym>BIOS</acronym> では、
   その設定の際に、&lsquo;パスワードを入力する&rsquo;ようにできます。
   これは設定しテストしてください。
   マザーボードによっては、
   パスワードを有効にするためにジャンパーを切り替える必要があります。
   また、<acronym>BIOS</acronym> によっては、
   あの &lsquo;master passwords&rsquo; が付いているものもあるので、
   検索エンジンで探して、
   自分の <acronym>BIOS</acronym> がそうではないことを確かめてください。
   このパスワードは、ブートローダーや
   <systemitem class="username">root</systemitem>
   のパスワードと同じものにはしないでください。
   </para>

   <!--
   <para>The <acronym>BIOS</acronym> configuration will have a
   &lsquo;boot order&rsquo; setting.  It should be set to boot from
   the hard disk before any other media.  This prevents someone
   inserting a rescue diskette, booting the machine, and gaining
   access to the filesystems as <systemitem
   class="username">root</systemitem>.</para>
   -->
   <para>
   <acronym>BIOS</acronym> の設定には &lsquo;ブート順序&rsquo;
   の設定があります。
   他のどんな媒体よりも先にハードディスクからブートするよう設定してください。
   こうすれば、誰かがレスキューディスクを挿入しても、
   マシンをブートして、
   <systemitem class="username">root</systemitem> になり、
   ファイルシステムにアクセスするということができなくなります。
   </para>

  </section> <!-- security-bios -->


  <section id="security-bootloader">
  <!--
   <title>Use a boot loader password</title>
   -->
   <title>ブートローダーのパスワードを使う</title>

   <!--
   <para>Configure the boot loader to request a password when booting a
   non-default image or when supplying parameters from the command
   line.</para>
   -->
   <para>
   デフォルト以外のイメージでブートする場合や、
   コマンドラインからパラメータを与える場合に、
   パスワードを要求するようブートローダーを設定して下さい。
   </para>

   <!--
   <para>This prevents someone from dialing in during the boot
   sequence and booting the kernel with options to take control of the
   machine, as in <xref
   linkend="configure-boot-loader-lilo-hack">.</para>
   -->
   <para>
   こうしておけば、
   <xref linkend="configure-boot-loader-lilo-hack"> の例にあるように、
   ブートシーケンス中に誰かが電話で接続し、
   そのマシンを制御するオプションをつけて、
   カーネルをブートしてしまうようなことが防止できます。
   </para>

   <!--
   <para>The password should not be the same as the
   <acronym>BIOS</acronym> or <systemitem
   class="username">root</systemitem> passwords.</para>
   -->
   <para>
   このパスワードは <acronym>BIOS</acronym> のパスワードとも、
   <systemitem class="username">root</systemitem>
   のパスワードとも同じにしてはいけません。
   </para>

  </section> <!-- security-bootloader -->


  <section id="security-rhl-prompt">
  <!--
   <title>Non-interactive boot sequence</title>
   -->
   <title>非対話的ブートシーケンス</title>

   <!--
   <para><productname>Red Hat Linux</productname> has an
   &lsquo;interactive boot&rsquo; option that can be used to prevent
   services from being started.  This may not be pleasant if the
   purpose of the machine is web serving and the
   <acronym>HTTP</acronym> daemon is interactively prevented from
   starting by an unauthenticated person.</para>
   -->
   <para>
   <productname>Red Hat Linux</productname> には
   &lsquo;対話ブート&rsquo; オプションがあり、
   これを使えばサービスがスタートしないようにできます。
   でもWEB サービスが目的のマシンで、
   無許可の人間がシステムと対話して、
   <acronym>HTTP</acronym> デーモンが起動しないようにするというのは、
   愉快とはいえないでしょうね。
   </para>

   <!--
   <para>Edit <filename>/etc/sysconfig/init</filename> to contain the
   line</para>
   -->
   <para>
   <filename>/etc/sysconfig/init</filename>
   を編集して以下の行を入れてください。
   </para>

   <informalfigure>
<programlisting>
PROMPT=no</programlisting>
   </informalfigure>

  </section> <!-- security-rhl-prompt -->


  <section id="security-sysrq">
  <!--
   <title>Magic <keycap>SysRq</keycap> key</title>
   -->
   <title>マジック <keycap>SysRq</keycap> キー</title>

   <!--
   <para>The &lsquo;magic <keycap>SysRq</keycap> key&rsquo; is a key
   sequence that allows some basic commands to be passed directly to
   the kernel.  Kernel software developers use this interface to debug
   their software.  Under most circumstances it can also be used to
   uncleanly reboot the computer, something that is otherwise
   difficult or expensive to do remotely.</para>
   -->
   <para>
   &lsquo;マジック <keycap>SysRq</keycap> キー&rsquo; というのは、
   いくつかの基本的なコマンドを、
   直接カーネルに渡せるキーシーケンスのことです。
   カーネルソフトウェアの開発者たちは、
   このインタフェースを使って、自分たちのソフトウェアをデバッグします。
   一般の環境では、
   コンピュータをリブートする最後の手段にも使えるし、
   リモートで行なうのが困難だったり高くつくような、他のことにも使えます。
   </para>

   <!--
   <para>For computers that are not used for kernel software
   development the magic <keycap>SysRq</keycap> key makes an ideal
   denial of service device.  A few unauthenticated keystrokes and the
   computer is dead in the water.  The console, serial or otherwise,
   must be in an area with access limited to trusted people.</para>
   -->
   <para>
   カーネルソフトェアの開発以外で使っているコンピュータでこのマジック
   <keycap>SysRq</keycap> キーを使うと、
   そのマシンは申し分のないサービス拒否デバイスになってしまいます。
   不正なキーストロークを２、３行なえば、
   そのコンピュータはどうにもならなくなるのです。
   シリアルにせよ他のものにせよ、
   コンソールは信頼できる人だけがアクセスできる場所に設置して下さい。
   </para>

   <!--
   <para>The serial console uses the <acronym>RS-232</acronym> break
   function as the &lsquo;magic <keycap>SysRq</keycap> key&rsquo;.  A
   &lsquo;break&rsquo; is a period of no transmission on the serial
   line, on traditional terminals it is activated by pressing a key
   labeled <keycap>Break</keycap>.</para>
   -->
   <para>
   シリアルコンソールは <acronym>RS-232</acronym> のブレーク機能を、
   &lsquo;マジック <keycap>SysRq</keycap> キー&rsquo; に使っています。
   &lsquo;ブレーク&rsquo; とは、
   シリアルライン上で何も転送していない期間のことで、
   従来の端末では、<keycap>Break</keycap>
   というラベルが付いたキーを押下するとブレーク状態になります。
   </para>

   <!--
   <para>Anyone can dial into a modem and send a break, so if the
   serial console is attached to a modem we need to disable the magic
   <keycap>SysRq</keycap> key .  If the serial console is attached to
   a terminal server which asks for authentication, or is attached
   directly to another terminal using a null modem cable then you may
   decide to activate the magic <keycap>SysRq</keycap> key.</para>
   -->
   <para>
   モデムに電話をかけて接続し、ブレークを送るのは、誰にでもできます。
   ですから、もしシリアルコンソールがモデムにつながっている場合は、
   このマジック <keycap>SysRq</keycap> キーを無効にする必要があります。
   シリアルコンソールがターミナルサーバーにつながっていて認証を要求してきたり、
   ヌルモデムケーブルを使って直接別の端末につながっている場合は、
   マジック <keycap>SysRq</keycap>
   キーを有効にしてもかまいません。
   </para>

   <!--
   <para>The magic <keycap>SysRq</keycap> key can be disabled by
   setting a kernel variable or by not compiling support for the
   key.</para>
   -->
   <para>
   マジック <keycap>SysRq</keycap> キーは、カーネルの変数を設定するか、
   そのキーをサポートしないようにコンパイルすれば無効にできます。
   </para>

   <!--
   <para>Writing a <literal>0</literal> into
   <filename>/proc/sys/kernel/sysrq</filename> will disable the magic
   <keycap>SysRq</keycap> key.  The command <command>sysctl</command>
   can also be used:</para>
   -->
   <para>
   <filename>/proc/sys/kernel/sysrq</filename> に
   <literal>0</literal> を書き込めば、
   マジック <keycap>SysRq</keycap> キーは無効になります。
   以下のように <command>sysctl</command>
   コマンドも使えます。
   </para>

   <figure id="security-sysrq-sysctl">
   <!--
    <title>Using <command>sysctl</command> to defeat the magic
    <keycap>SysRq</keycap> key</title>
    -->
    <title>
    <command>sysctl</command> を使って、マジック <keycap>SysRq</keycap>
    キーを無効にする。
    </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>sysctl -w kernel.sysrq=0</command></screen>
   </figure> <!-- security-sysrq-sysctl -->

   <!--
   <para>Your Linux distribution may have a file
   <filename>/etc/sysctl.conf</filename> which is used to run
   <command>sysctl</command> during the boot of the machine.  Add the
   lines:</para>
   -->
   <para>
   ご自分の Linux ディストリビューションには
   <filename>/etc/sysctl.conf</filename> ファイルがあって、
   マシンのブート中にそのファイルを使って <command>sysctl</command> 
   を実行しているかも知れません。その場合は次の行を追加して下さい。
   </para>

   <figure id="security-sysrq-sysctlconf">
   <!--
    <title>Configuring <filename>/etc/sysctl.conf</filename> to defeat
    the magic <keycap>SysRq</keycap> key</title>
    -->
    <title>
    マジック <keycap>SysRq</keycap> キーを無効にする、
    <filename>/etc/sysctl.conf</filename> の設定。
    </title>
<programlisting>
<!--
&num; Disables the magic SysRq key
-->
# マジック SysRq キーを無効にする。
kernel.sysrq = 0</programlisting>
   </figure> <!-- security-sysrq-sysctlconf -->

   <!--
   <para>Even when setting the magic <keycap>SysRq</keycap> key off in
   <filename>/etc/sysctl.conf</filename> there is a period of
   vulnerability after the kernel boots but before contents of the
   file are applied.</para>
   -->
   <para>
   <filename>/etc/sysctl.conf</filename>
   でマジック <keycap>SysRq</keycap> キーをオフにしたとしても、
   カーネルがブートしてからそのファイルの内容が適用されるまでの間が
   弱点になります。
   </para>

   <!--
   <para>It is much better to compile your own kernel and set the
   following configuration parameter:</para>
   -->
   <para>
   ですから、自分のカーネルをコンパイルして、
   次のコンフィギュレーションパラメータを設定する方が、
   はるかに優れています。
   </para>

   <figure id="security-sysrq-menuconfig">
   <!--
    <title>Kernel <command>make menuconfig</command> showing disabled
    <keycap>SysRq</keycap> key</title>
    -->
    <title>
    <keycap>SysRq</keycap> キーを無効にした、
    カーネルの <command>make menuconfig</command>
    </title>
<screen format="linespecific">
Kernel hacking  --->
 [ ] Magic SysRq key</screen>
</figure> <!-- security-sysrq-menuconfig -->

<!--
    <para>This should place the following configuration parameter in
    <filename>/usr/src/linux/.config</filename>.</para>
    -->
    <para>
    これで次のコンフィギュレーションパラメータが
    <filename>/usr/src/linux/.config</filename> に書かれます。
    </para>

   <figure id="security-sysrq-dotconfig">
   <!--
    <title>Kernel <filename>.config</filename> showing disabled
    <keycap>SysRq</keycap> key</title>
    -->
    <title>
    <keycap>SysRq</keycap> キーを無効にしている
    カーネルの <filename>.config</filename>
    </title>
<programlisting>
# CONFIG_MAGIC_SYSRQ is not set</programlisting>
   </figure> <!-- security-sysrq-dotconfig -->

  </section> <!-- security-sysrq -->


  <section id="security-ctrlaltdel">
  <!--
   <title>Adjust behaviour of <keycombo> <keycap>Ctrl</keycap>
   <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo></title>
   -->
   <title>
   <keycombo> <keycap>Ctrl</keycap>
   <keycap>Alt</keycap> <keycap>Delete</keycap></keycombo>
   の動きを調整する
   </title>

   <!--
   <para>The <productname>IBM PC</productname> used <keycombo>
   <keycap>Ctrl</keycap> <keycap>Alt</keycap> <keycap>Delete</keycap>
   </keycombo> to launch a reboot of the computer.  Linux traps this
   key chord and makes it available to the
   <application>init</application> system.  This is done by sending
   the <application>init</application> process a
   <literal>SIGINT</literal> signal (although <command>ctrlaltdel
   hard</command> can undo this trap and make the key chord reboot the
   comptuer immediately).  The <application>init</application> system
   uses <filename>/etc/inittab</filename> to determine how to handle
   the signal generated by the <keycombo> <keycap>Ctrl</keycap>
   <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo> key
   chord.</para>
   -->
   <para>
   <productname>IBM PC</productname> は、
   コンピュータをリブートするために、
   <keycombo><keycap>Ctrl</keycap> <keycap>Alt</keycap>
   <keycap>Delete</keycap></keycombo>
   を使いました。
   Linux ではこのキーの組合せに細工をして、
   <application>init</application> 
   システムで使えるようにしてあります。
   <application>init</application> プロセスに
   <literal>SIGINT</literal> 
   シグナルを送るのです。
   （とはいっても、
   <command>ctrlaltdelhard</command> を行なうとこの細工が無くなり、
   このキーの組合せでコンピュータを直ちにリブートできるのですが）。
   <application>init</application> システムは 
   <filename>/etc/inittab</filename> を使って、
   <keycombo> <keycap>Ctrl</keycap>
   <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo>
   というキーの組合せで生成されたシグナルをどう処理するかを決めます。
   </para>

   <!--
   <para>Most distributions cleanly reboot the system, mimicing the
   behaviour that most users expect.  <xref
   linkend="security-ctrlaltdel-telinit-default"> shows how this is
   done.</para>
   -->
   <para>
   Linux のたいていのディストリビューションはシステムを正しくリブート
   するし、大部分のユーザーが期待している動作をそのまま行ないます。
   <xref linkend="security-ctrlaltdel-telinit-default"> はこの方法を
   示しています。
   </para>

   <figure id="security-ctrlaltdel-telinit-default">
   <!--
    <title>Default handling of <keycombo> <keycap>Ctrl</keycap>
    <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo> in
    <filename>/etc/inittab</filename></title>
    -->
    <title>
    <filename>/etc/inittab</filename> での
    <keycombo> <keycap>Ctrl</keycap>
    <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo>
    のデフォルト処理
    </title>
<programlisting>
<!--
&num; Trap CTRL-ALT-DELETE
-->
# CTRL-ALT-DELETE に細工を施す。
ca::ctrlaltdel:/sbin/shutdown -t3 -r now
</programlisting>
   </figure>

   <!--
   <para>Depending upon each individual site you may wish to disable
   <keycombo> <keycap>Ctrl</keycap> <keycap>Alt</keycap>
   <keycap>Delete</keycap> </keycombo>.  This is shown in <xref
   linkend="security-ctrlaltdel-telinit-ignore">.</para>
   -->
   <para>
   個々のサイトによっては、<keycombo> 
   <keycap>Ctrl</keycap> <keycap>Alt</keycap> <keycap>Delete</keycap> 
   </keycombo> を無効にしたいかもしれません。これについては、
   <xref linkend="security-ctrlaltdel-telinit-ignore"> に示してあります。
   </para>

   <figure id="security-ctrlaltdel-telinit-ignore">
   <!--
    <title>Ignoring <keycombo> <keycap>Ctrl</keycap>
    <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo> in
    <filename>/etc/inittab</filename></title>
    -->
    <title>
    <keycombo> <keycap>Ctrl</keycap>
    <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo> 
    を無視する <filename>/etc/inittab</filename> の設定

    </title>
<programlisting>
<!--
&num; Trap CTRL-ALT-DELETE and do nothing
-->
# CTRL-ALT-DELETE に細工して何もしないようにする。
ca::ctrlaltdel:
</programlisting>
   </figure>

   <!--
   <para>Alternatively, you may wish to cleanly shut down the
   computer.  This is very easy to explain to operators and
   instructions can be displayed on the monitor using
   <filename>/etc/issue</filename> or a <productname>Post-it
   Note</productname>.  If the computer uses <productname>Advanced
   Power Management</productname> (or <acronym>APM</acronym>) then
   shutting down the computer will also remove the power.</para>
   -->
   <para>
   あるいは、コンピュータを正しくシャットダウンしたいかも知れません。
   これをオペレータに説明するのはとても簡単で、指示は
   <filename>/etc/issue</filename> か <productname>Post-it Note</productname>
   を使ってモニターに表示すればいいのです。コンピュータが 
   <productname>Advanced Power Management</productname> 
   (あるいは <acronym>APM</acronym> ともいいます) を使っている場合は、
   コンピュータをシャットダウンすると、電源も切れます。
   </para>

   <figure id="security-ctrlaltdel-telinit-halt">
   <!--
    <title>Shut down cleanly upon  <keycombo> <keycap>Ctrl</keycap>
    <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo> in
    <filename>/etc/inittab</filename></title>
    -->
    <title>
    <filename>/etc/inittab</filename> 内の
    <keycombo> <keycap>Ctrl</keycap>
    <keycap>Alt</keycap> <keycap>Delete</keycap> </keycombo> によって
    正しくシャットダウンする。
    </title>
<programlisting>
<!--
&num; Trap CTRL-ALT-DELETE and shut down
-->
# CTRL-ALT-DELETE に細工してシャットダウンする
ca::ctrlaltdel:/sbin/shutdown -t3 -h now
</programlisting>
   </figure>

  </section> <!-- security-ctrlaltdel -->


  <section id="security-log">
  <!--
   <title>Log attempted access</title>
   -->
   <title>アクセス未遂のログ</title>

   <!--
   <para>Look in the system logs for the output of
   <application>getty</application>.  Add the monitoring of these
   messages to your log-watching procedures.</para>
   -->
   <para>
   システムログの中の、<application>getty</application>
   が出力したものをちょっと覗いてみて下さい。
   そして日常のログ監視の作業手順で、
   これらのメッセージも監視するようにして下さい。
   </para>

  </section> <!-- security-log -->

  <section id="security-interception">
  <!--
   <title>Countering interception of telephony links</title>
   -->
   <title>電話回線リンクの盗聴への対応</title>

   <!--
   <para>Modems calls over telephones can be intercepted.  This can be
   an issue if you do not trust a telecommunications carrier in your
   call's path, or if you do not trust the law enforcement agencies
   that may request interception facilities from that carrier.</para>
   -->
   <para>
   電話回線でモデムに接続すると、盗聴される可能性があります。
   その電話の接続経路上にある通信会社を信用していないとか、
   法執行機関がその通信会社に、
   盗聴設備を要求するかもしれないから信用していない場合には、
   これが問題になることがあります。
   </para>

   <!--
   <para>International calls are particularly exposed.  Calls which
   are routed across satellite or wireless links can be intercepted by
   readily-available radio receivers.  Calls routed across undersea
   links are much more expensive to intercept, so this is probably
   limited to national governments, such as those using the <ulink
   url="http://cryptome.org/cryptout.htm#Echelon">Echelon
   system</ulink>.</para>
   -->
   <para>
   国際電話は特に無防備になります。
   衛星回線や無線回線を通っている電話は、
   手元のラジオで傍受できてしまいます。
   海底ケーブルを通っている電話は傍受するのにずっと費用がかかりますから、
   こんなことをするのは、たぶん
   <ulink url="http://cryptome.org/cryptout.htm#Echelon">
   Echelon</ulink> を使っているような、政府機関に限られるでしょう。
   </para>

   <!--
   <para>If you do not pass sensitive data over the link, then the
   major exposure is typing in your user name and password.  Look into
   <ulink
   url="http://freshmeat.net/projects/pam_skey/"><application><acronym>S/KEY</acronym></application></ulink>
   or look into <ulink
   url="http://inner.net/opie/"><application><acronym>OPIE</acronym></application></ulink>
   and its related <ulink
   url="http://www.tho.org/~andy/pam-opie.html"><application>An
   <acronym>OPIE</acronym> for
   <acronym>PAM</acronym></application></ulink>.</para>
   -->
   <para>
   機密扱いのデータは電話回線リンクでは受渡しをしないとすると、
   主に無防備になるのは、
   自分のユーザー名とパスワードをタイプしているときです。
   この場合は、
   <ulink url="http://freshmeat.net/projects/pam_skey/">
   <application><acronym>S/KEY</acronym></application></ulink>
   やあるいは 
   <ulink url="http://inner.net/opie/">
   <application><acronym>OPIE</acronym></application></ulink> 、
   それに関連する 
   <ulink url="http://www.tho.org/~andy/pam-opie.html">
   <application>An <acronym>OPIE</acronym> for 
   <acronym>PAM</acronym></application></ulink>
   を調べて下さい。
   </para>

   <!--
   <para>These one-time password systems have flaws, a good summary of
   these is <citetitle>Vulnerabilities in the
   <productname><acronym>S/KEY</acronym></productname> one time
   password system</citetitle> by Peiter &lsquo;mudge&rsquo;
   Zatko.</para>
   -->
   <para>
   しかしこういったワンタイムパスワードには欠点があります。
   これについては Peiter &lsquo;mudge&rsquo; Zatko が、
   <citetitle>Vulnerabilities in the
   <productname><acronym>S/KEY</acronym></productname>
   one time password system</citetitle>
   という、よくまとまった概要を書いています。
   </para>

   <warning id="security-interception-keys">
   <!--
    <title>Cryptographic key material</title>
    -->
    <title>暗号化キー用の基本材料</title>

    <!--
    <para>Possessing cryptographic key material, such as a one-time
    password generator or list of one-time passwords, is a serious
    criminal offense in some countries.</para>
    -->
    <para>
    ワンタイムパスワードジェネレータとか、
    ワンタイムパスワードのリストといった、
    暗号化の基本となる材料を所有することは、
    国によっては重大な犯罪になります。
    </para>

    <!--
    <para>You must acquiant yourself with the laws in your
    jurisdiction and the laws of jurisdictions you may travel
    through.</para>
    -->
    <para>
    ですから、自国内の法律と、
    旅行で通るかも知れない国々の法律に精通していなければなりません。
    </para>
   </warning>

   <warning id="security-interception-law">
   <!--
    <title>Defeating telecommunications interception</title>
    -->
    <title>通信傍受の妨害</title>

    <!--
    <para>Taking steps to defeat or avoid legislatively-approved
    telecommunications interception is a serious criminal offense in
    some countries.</para>
    -->
    <para>
    法的に認められた通信傍受を妨害したり回避するような方策をとると、
    国によっては重大な犯罪になります。
    </para>

    <!--
    <para>You must acquiant yourself with the laws in your
    jurisdiction and the laws of jurisdictions you may travel
    through.</para>
    -->
    <para>
    ですから、自国内の法律と、
    旅行で通るかも知れない国々の法律に精通していなければなりません。
    </para>
   </warning>
  </section> <!-- security-interception -->


 </chapter> <!-- security -->


 <chapter id="kernelcompile">
 <!--
  <title>Configuring a kernel to support serial console</title>
  -->
  <title>シリアルコンソールをサポートするように、カーネルを設定する</title>

  <!--
  <para>Most <systemitem class="osname">Linux</systemitem> kernels
  shipped by distributors are configured to allow the serial console
  to be enabled.  However system administrators will almost certainly
  encounter some problems best solved by recompiling a kernel.  In
  these cases configure the kernel to support the serial console.  The
  usual virtual terminal console is also configured, as we normally
  want console messages to go a monitor as well as the serial
  port.</para>
  -->
  <para>
  ディストリビュータが出荷している 
  <systemitem class="osname">Linux</systemitem> カーネルは、
  たいていシリアルコンソールが使えるように設定してあります。
  しかしシステム管理者は、
  カーネルを再コンパイルする以外には解決策が無いような問題に、
  ほとんど必ず遭遇します。
  こういった場合は、
  シリアルコンソールをサポートするようにカーネルを設定して下さい。
  普通コンソールメッセージは、
  シリアルポートの他にモニターへも表示したいですから、
  通常の仮想端末コンソールも設定します。
  </para>


  <section id="kernelcompile-25">
  <!--
   <title>Linux kernel version 2.5</title>
   -->
   <title>Linux カーネルのバージョン 2.5</title>

   <!--
   <para>Kernel version 2.5 is under active development, so this
   section may be out of date.  Version 2.5 includes support for the
   console to a serial port attached to a USB dongle.  The
   <literal>-dj</literal> patch to the version 2.5 kernel has a
   rewritten console layer; it is not known if the rewritten layer
   effects the user-space use of the serial console.</para>
   -->
   <para>
   カーネルのバージョン 2.5 は現在活発な開発途上にあるものですから、
   このセクションの内容は古くなっているかも知れません。
   バージョン 2.5 では、
   USB ドングルに取り付けたシリアルポートに、
   コンソールが接続できるようになっています。
   バージョン 2.5 のカーネルに対する
   <literal>-dj</literal>
   パッチは、コンソールレイヤーを書き直したものです。
   しかしこの書き直したレイヤーが、
   シリアルコンソールをユーザー空間で使用する場合にも効果があるかどうかは不明です。
   </para>

   <!--
   <para>When configuring the kernel set the following configuration
   parameters:</para>
   -->
   <para>
   カーネルを設定する場合は、
   次のパラメータを設定してください。
   </para>

   <figure id="kernelcompile-25-menuconfig">
   <!--
    <title>Kernel configuration for serial console using <command>make
    menuconfig</command></title>
    -->
    <title>
    <command>make menuconfig</command>
    を使ったシリアルコンソール用カーネル設定
    </title>
    <screen format="linespecific">
Character devices  &hyphen;&hyphen;&hyphen;&gt;
 [*] Virtual terminal
  [*]   Support for console on virtual terminal
 &lt;*&gt; Standard/generic (8250/16550 and compatible UARTs) serial support
  [*]   Support for console on serial port</screen>
   </figure>

   <!--
   <para>This should set the following configuration parameters in
   <filename>/usr/src/linux/.config</filename>.</para>
   -->
   <para>
   こうすると <filename>/usr/src/linux/.config</filename>
   に次のパラメータが設定されるはずです。
   </para>

   <figure id="kernelcompile-25-dotconfig">
   <!--
    <title>Kernel configuration for serial console using
   <filename>.config</filename></title>
   -->
   <title>
   <filename>.config</filename>
   を用いた、シリアルコンソールのカーネル構成
   </title>
    <programlisting>
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_SERIAL_CONSOLE=y</programlisting>
   </figure>

   <!--
   <para>If you also want to use a serial port attached to a
   <acronym>USB</acronym> bus, then in addition to the usual
   <acronym>USB</acronym> configuration, configure the kernel to load
   the <acronym>USB</acronym> console driver and one of the
   <acronym>USB</acronym> serial dongles (our example uses the generic
   serial dongle).</para>
   -->
   <para>
   USB バスに取り付けたシリアルポートを使いたい場合は、通常の
   <acronym>USB</acronym> の設定に加えて、
   <acronym>USB</acronym> のコンソールドライバ、
   および <acronym>USB</acronym>
   シリアルドングルのうち一つをロードするように、
   カーネルを設定してください。
   （ここの例では、汎用シリアルドングルを使っています）。
   </para>

   <figure id="kernelcompile-25-usb-menuconfig">
   <!--
    <title>Kernel configuration for <acronym>USB</acronym> dongle
    serial console using <command>make menuconfig</command></title>
    -->
    <title>
    <command>make menuconfig</command> を使った 
    <acronym>USB</acronym> ドングルのシリアルコンソール用カーネル設定
    </title>
    <screen format="linespecific">
USB Serial Converter support &hyphen;&hyphen;&hyphen;&gt;
 &lt;M&gt; USB Serial Converter support
 [M] USB Serial Console device support
 [M] USB Generic Serial Driver</screen>
   </figure>

   <!--
   <para>This should set the following configuration parameters in
   <filename>/usr/src/linux/.config</filename></para>
   -->
   <para>
   こうすると、<filename>/usr/src/linux/.config</filename>
   に次のパラメータが設定されるはずです。
   </para>

   <figure id="kernelcompile-25-usb-dotconfig">
   <!--
    <title>Kernel configuration for <acronym>USB</acronym> dongle
    serial console using <filename>.config</filename></title>
    -->
    <title>
    <filename>.config</filename> を使った <acronym>USB</acronym>
    デバイスのシリアルコンソール用カーネル設定
    </title>
<programlisting>
CONFIG_USB_SERIAL=m
CONFIG_USB_SERIAL_CONSOLE=m
CONFIG_USB_SERIAL_GENERIC=m
</programlisting>
   </figure>

   <!--
   <para>You should also configure the kernel without the magic
   <keycap>SysRq</keycap> key, as described in <xref
   linkend="security-sysrq">.</para>
   -->
   <para>
   <xref linkend="security-sysrq">で説明したように、
   マジック SysRq キーを使わないようにカーネルを設定することも必要です。
   </para>

  </section> <!-- kernelcompile-25 -->


  <section id="kernelcompile-24">
  <!--
   <title>Linux kernel version 2.4</title>
   -->
   <title>Linux カーネルのバージョン 2.4</title>

   <!--
   <para>When configuring the kernel set the following configuration
   parameters:</para>
   -->
   <para>
   このカーネルを設定する場合は、
   次のパラメータを設定して下さい。
   </para>

   <figure id="kernelcompile-24-menuconfig">
   <!--
    <title>Kernel configuration for serial console using <command>make
    menuconfig</command></title>
    -->
    <title>
    <command>make menuconfig</command>
    を用いたシリアルコンソール用のカーネル設定
    </title>
    <screen format="linespecific">
Character devices  &hyphen;&hyphen;&hyphen;&gt;
 [*] Virtual terminal
  [*]   Support for console on virtual terminal
 &lt;*&gt; Standard/generic (8250/16550 and compatible UARTs) serial support
  [*]   Support for console on serial port</screen>
   </figure>

   <!--
   <para>This should set the following configuration parameters in
   <filename>/usr/src/linux/.config</filename>.</para>
   -->
   <para>
   こうすると、次のパラメータが 
   <filename>/usr/src/linux/.config</filename> に設定されるはずです。
   </para>

   <figure id="kernelcompile-24-dotconfig">
   <!--
    <title>Kernel configuration for serial console using
   <filename>.config</filename></title>
   -->
   <title>
   <filename>.config</filename>
   を使ったシリアルコンソール用のカーネル設定
   </title>
    <programlisting>
CONFIG_VT=y
CONFIG_VT_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_SERIAL_CONSOLE=y</programlisting>
   </figure>

   <!--
   <para>You should also configure the kernel without the magic
   <keycap>SysRq</keycap> key, as described in <xref
   linkend="security-sysrq">.</para>
   -->
   <para>
   <xref linkend="security-sysrq">で説明したように、
   マジック SysRq キーを使わないようにカーネルを設定することも必要です。
   </para>

  </section> <!-- kernelcompile-24 -->


  <section id="kernelcompile-22">
  <!--
   <title><systemitem class="osname">Linux</systemitem> kernel version
   2.2</title>
   -->
   <title>
   <systemitem class="osname">Linux</systemitem> カーネルのバージョン 2.2
   </title>

   <!--
   <para>The later <systemitem class="osname">Linux</systemitem> 2.2
   kernels use the same build parameters and parameter syntax as the
   <systemitem class="osname">Linux</systemitem> version 2.4
   kernels.</para>
   -->
   <para>
   最近の <systemitem class="osname">Linux</systemitem> 2.2 カーネルは、
   ビルドバラメータ とパラメータ構文が 
   <systemitem class="osname">Linux</systemitem>
   のバージョン 2.4 カーネルと同じになっています。
   </para>

   <!--
   <para>For earlier kernels see the <ulink
   url="http://www.linuxjournal.com/article.php?sid=2040">article</ulink>
   by Francesco Conti in issue 36 of <ulink
   url="http://www.linuxjournal.com/"><citetitle>Linux
   Journal</citetitle></ulink> published in April 1997.</para>
   -->
   <para>
   初期のカーネルに関しては、1997年 4月に出た
   <ulink url="http://www.linuxjournal.com/">
   <citetitle>Linux Journal</citetitle></ulink>
   の36号にある、Francesco Conti が書いた
   <ulink url="http://www.linuxjournal.com/article.php?sid=2040">記事</ulink>
   を参照して下さい。

   <footnote><para>
   訳注：この記事のタイトルは &quot;Serial Terminal as Console&quot; と
   なっています。URL は若干違っていて、
   &quot;http://linuxjournal.com/article.php?sid=2040&quot;
   になっているようです。
   </para></footnote>

   </para>

   <!--
   <para>This article included some patches for the kernel, which have
   been extended in the notes below to use a broader range of serial
   port speeds.</para>
   -->
   <para>
   この記事にはカーネルにあてるパッチがいくつか載っていました。
   以下に略記したように、
   シリアルポートで利用できる速度範囲を広げるために、
   このパッチは拡張しました。
   </para>

   <!--
   <para>Choose to use the serial console by adding a couple of
   <literal>&num;defines</literal> at the start of
   <filename>/usr/src/linux/drivers/char/console.c</filename>:</para>
   -->
   <para>
   <filename>/usr/src/linux/drivers/char/console.c</filename>
   の先頭で、
   <literal>#defines</literal> を二つ追加して、
   シリアルコンソールを使うようにしてください。
   </para>

<informalfigure>
<programlisting>
#define CONFIG_SERIAL_ECHO
<!--
&num;define SERIAL_ECHO_PORT 0x3f8  /* COM1 port address */</programlisting>
-->
#define SERIAL_ECHO_PORT 0x3f8  /* COM1 ポートアドレス */</programlisting>
</informalfigure>

<!--
   <para>Alternatively, to use <literal>ttyS1</literal> use these
   lines:</para>
   -->
   <para>
   あるいは、<literal>ttyS1</literal>
   を使う場合は、次の行を追加してください。
   </para>

<informalfigure>
<programlisting>
#define CONFIG_SERIAL_ECHO
<!--
&num;define SERIAL_ECHO_PORT 0x2f8  /* COM2 port address */</programlisting>
-->
#define SERIAL_ECHO_PORT 0x2f8  /* COM2 ポートアドレス */</programlisting>
</informalfigure>

<!--
   <para>The kernel assumes a serial link speed of
   9600<abbrev>bps</abbrev>.  If you are using a differing bit rate
   then find these two lines:</para>
   -->
   <para>
   カーネルは、シリアルリンクの速度を 9600<abbrev>bps</abbrev>
   に想定しています。
   別のビットレートを使うつもりなら、次の 2 行を探してください。
   </para>

<informalfigure>
<programlisting>
serial_echo_outb(0x00, UART_DLM); /* 9600 baud */
serial_echo_outb(0x0c, UART_DLL);</programlisting>
</informalfigure>

<!--
   <para>and change <literal>0x0c</literal> to one of the values in
   <xref linkend="kernelcompile-22-divisors">.</para>
   -->
   <para>
   そして、 <literal>0x0c</literal>
   を 
   <xref linkend="kernelcompile-22-divisors">
   に載っている値の中の一つに変えて下さい。
   </para>

   <table frame="topbot" colsep="0" rowsep="0" id="kernelcompile-22-divisors">
   <!--
    <title><acronym>IBM-PC/AT</acronym> serial port bit rates and
    their bit-clock divisors</title>
    -->
    <title>
    <acronym>IBM-PC/AT</acronym> のシリアルポートのビットレートと、
    そのビットクロックの除数
    </title>
    <tgroup cols="2">
     <colspec colname="bps" colsep="0" rowsep="0" align="center">
     <colspec colname="divisor" colsep="0" rowsep="0" align="center">
     <thead>
      <row rowsep="1" valign="bottom">
      <!--
       <entry colname="bps" align="center">Bit Rate</entry>
       <entry colname="divisor" align="center">Divisor</entry>
       -->
       <entry colname="bps" align="center">ビットレート</entry>
       <entry colname="divisor" align="center">除数</entry>
      </row>
     </thead>
     <tbody>
      <row>
       <entry colname="bps">115200<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x01</literal></entry>
      </row>
      <row>
       <entry colname="bps">57600<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x02</literal></entry>
      </row>
      <row>
       <entry colname="bps">38400<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x03</literal></entry>
      </row>
      <row>
       <entry colname="bps">19200<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x06</literal></entry>
      </row>
      <row>
       <entry colname="bps">9600<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x0c</literal></entry>
      </row>
      <row>
       <entry colname="bps">4800<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x18</literal></entry>
      </row>
      <row>
       <entry colname="bps">2400<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x30</literal></entry>
      </row>
      <row>
       <entry colname="bps">1200<abbrev>bps</abbrev></entry>
       <entry colname="divisor"><literal>0x60</literal></entry>
      </row>
     </tbody>
    </tgroup>
   </table>

  </section> <!-- kernelcompile-22 -->

 </chapter> <!-- kernelcompile -->


 <chapter id="serial">
 <!--
  <title>Serial cabling</title>
  -->
  <title>シリアルケーブルの詳細</title>

  <section id="serial-jargon">
  <!--
   <title>Jargon</title>
   -->
   <title>用語</title>

   <!--
   <para><acronym>RS-232</acronym> cables were originally intended to
   link terminals to modems.  The terminal is formally named a Data
   Terminal Equipment, abbreviated to <acronym>DTE</acronym>.  The modem
   is formally named a Data Communications Equipment, abbreviated to
   <acronym>DCE</acronym>.</para>
   -->
   <para>
   <acronym>RS-232</acronym>
   はもともと、端末をモデムにつなぐためのものでした。
   この端末は正式にはデータ端末装置という名前で、略して 
   <acronym>DTE</acronym> といいます。
   モデムは正式にはデータ通信装置という名前で、
   略して <acronym>DCE</acronym> といいます。
   </para>

   <!--
   <para>A standard <acronym>RS-232</acronym> cable has a 25-pin
   D-type socket, which connects to the <acronym>DTE</acronym>, and a
   25-pin D-type plug, which connects to the <acronym>DCE</acronym>.
   All 25 pins are connected, with pin 1 on the plug wired to pin 1 on
   the socket, pin 2 on the plug wired to pin 2 on the socket, and so
   on.  The shielding of the cable is attached to the metallic cover
   on the socket.</para>
   -->
   <para>
   標準の <acronym>RS-232</acronym> ケーブルには、
   <acronym>DTE</acronym> に接続する 25 ピン D タイプのソケットと、
   <acronym>DCE</acronym> に接続する 25 ピン D タイプのプラグがあります。
   そして、プラグの 1 番ピンはソケットの 1 番ピンと結線しており、
   プラグの 2 番ピンはソケットの 2 番ピンと結線されている、
   などのように、25 本のピンは全結線になっています。
   ケーブルのシールドは、ソケット上の金属のカバーに取り付けられています。
   </para>

   <!--
   <para><acronym>RS-232</acronym> signaling is much more robust than
   the signalling of many other communications standards.  Pins can be
   shorted, not connected or drive more than one output.</para>
   -->
   <para>
   <acronym>RS-232</acronym> の信号伝送は、
   他の多くの通信規格を使った信号伝送よりもずっと頑丈です。
   ピンの中にはショートしてもかまわないピンもあるし、
   つながなくてもいいピンもあります。
   あるいは複数の出力を駆動できるピンもあります。
   </para>

   <!--
   <para>Signals are named from the point of view of the Data Terminal
   Equipment.  So Transmit Data on the <acronym>DTE</acronym> is
   connected to Transmit Data on the <acronym>DCE</acronym>.  The
   Transmit Data pin on the <acronym>DTE</acronym> actually transmits
   data, whereas Transmit Data pin on the <acronym>DCE</acronym>
   actually recieves data.</para>
   -->
   <para>
   信号の名前はデータ端末装置側から見た場合の名前になっています。ですから、
   <acronym>DTE</acronym> 上の &quot;Transmit Data&quot; は 
   <acronym>DCE</acronym> 上の &quot;Transmit Data&quot; につながっています。
   <acronym>DTE</acronym> 上の &quot;Transmit Data&quot; ピンは、
   実際にデータを伝送します。ところが 
   <acronym>DCE</acronym> 上の &quot;Transmit Data&quot; ピンは、
   実際はデータを受け取るんです。
   </para>

  </section>  <!-- serialjargon -->


  <section id="serial-pc-modem">
  <!--
   <title>Cable from console port to modem</title>
   -->
   <title>コンソールポート・モデム間のケーブル</title>

   <!--
   <para>The <acronym>RS-232</acronym> standard defines the
   interconnection of computers and modems, so there is little to go
   wrong here by simply purchasing a pre-assembled cable.  There are
   two types of cable: cables with connectors for a standard 25-pin D
   connector on the computer; and cables with connectors for a
   proprietary 9-pin D connector used on the <acronym>IBM</acronym>
   <productname><acronym>PC/AT</acronym></productname> and many other
   computers.  The cables have titles like
   <citetitle><acronym>RS-232</acronym> 25-pin computer
   (<acronym>DTE</acronym>) to 25-pin modem
   (<acronym>DCE</acronym>)</citetitle> or
   <citetitle><acronym>RS-232</acronym> 9-pin <acronym>IBM</acronym>
   <productname><acronym>PC/AT</acronym></productname> computer
   (<acronym>DTE</acronym>) to 25-pin modem
   (<acronym>DCE</acronym>)</citetitle>.  Most modems are packaged
   with a suitable cable.</para>
   -->
   <para>
   <acronym>RS-232</acronym> 規格は、
   コンピュータとモデムの相互接続を定義しています。
   ですから、たんに既製品のケーブルを買っても、
   ここでまずいことが起こることはほとんどありません。
   ケーブルには二つのタイプがあります。
   コンピュータに付いている、
   標準的な 25 ピン D タイプコネクタが付いたケーブルと、
   <acronym>IBM</acronym> <productname><acronym>PC/AT</acronym></productname>
   や、他の多くのコンピュータで使っている、
   専用の 9 ピン D タイプコネクタが付いたケーブルです。
   ケーブルにはタイトルが付いており、
   <citetitle><acronym>RS-232</acronym> 25 ピン コンピュータ
   (<acronym>DTE</acronym>) から 25 ピン モデム 
   (<acronym>DCE</acronym>)</citetitle> へとか、
   <citetitle><acronym>RS-232</acronym> 9 ピン <acronym>IBM</acronym>
   <productname><acronym>PC/AT</acronym></productname> コンピュータ 
   (<acronym>DTE</acronym>) から 25 ピン モデム 
   (<acronym>DCE</acronym>)</citetitle>
   へというようになっています。
   たいていのモデムには適したケーブルが付属しています。
   </para>

   <!--
   <para>If you need to manufacture your own cables, see the
   <citetitle>Serial-HOWTO</citetitle> for the
   <acronym>RS-232</acronym> pinout for your computer.  Connect
   Transmit Data on the computer to Transmit Data on the modem,
   Receive Data on the computer to Receive Data on the modem, and so
   on for Signal Ground, Clear to Send, Ready to Send, Data Set Ready,
   Data Terminal Ready and Data Carrier Detect.</para>
   -->
   <para>
   もし独自のケーブルを作る必要がある場合、
   使っているコンピュータの
   <acronym>RS-232</acronym> ピン配置については、
   <citetitle>Serial-HOWTO</citetitle> 

   <footnote><para>
   邦訳は、
   <ulink url="http://www.linux.or.jp/JF/JFdocs/Serial-HOWTO.html">
   <citetitle>Serial-HOWTO</citetitle></ulink> です。
   </para></footnote>

   を参照して下さい。コンピュータ側の
   &quot;Transmit Data&quot; をモデム側の &quot;Transmit Data&quot;
   と結線し、コンピュータ側の &quot;Receive Data&quot; はモデム上の
   &quot;Receive Data&quot; と結線してください。
   &quot;Signal Ground&quot;,
   &quot;Clear to Send&quot;, &quot;Ready to Send&quot;, 
   &quot;Data Set Ready&quot;, &quot;Data Terminal Ready&quot;, 
   &quot;Data Carrier Detect&quot; についても同様にして下さい。
   </para>

   <!--
   <para>For professional computer room installations consider routing
   the serial cable through an <acronym>RJ-45</acronym> patch panel.
   There are two common pinouts on used on the
   <acronym>RJ-45</acronym> connector: <ulink
   url="http://yost.com/Computers/RJ45-serial/">Yost</ulink> and
   <ulink url="http://www.cisco.com/warp/public/701/14.html">Cisco
   2500-series</ulink>.</para>
   -->
   <para>
   専用のコンピュータルームに設置する場合は、
   <acronym>RJ-45</acronym>
   のパッチパネルを通して、シリアルケーブルを配線するように考慮して下さい。
   <acronym>RJ-45</acronym> コネクタのピン配置は一般的なものが二つあります。
   <ulink url="http://yost.com/Computers/RJ45-serial/">Yost</ulink> と
   <ulink url="http://www.cisco.com/warp/public/701/14.html">
   Cisco 2500-series console</ulink> です。
   </para>

   <!--
   <para>If you create your own pinout for unshielded twisted pair
   cable then be sure that your pinout twists a Signal Ground wire
   with the Transmit Data wire and another Signal Ground wire with the
   Receive Data wire.  Although the <acronym>RS-232</acronym> signals
   are not balanced, this twist will result in the least amount of
   signal degradation and noise pickup.</para>
   -->
   <para>
   シールド無しのツイストペアケーブルのピン配置を自分で独自に作る場合は、
   &quot;Signal Ground&quot; 線と &quot;Transmit Data&quot;線、および
   もう一本の &quot;Signal Ground&quot; 線と &quot;Receive Data&quot; 線を、
   それぞれ確実により合わせてください。
   <acronym>RS-232</acronym> の信号は平衡伝送ではありませんが、
   このようにより合わせれば、
   結果的に信号の劣化や拾うノイズの量が最小限になるでしょう。
   </para>

  </section>  <!-- serial-pc-modem -->


  <section id="serial-pc-terminal">
  <!--
   <title>Cable from console port to terminal (or another PC)</title>
   -->
   <title>コンソールポートと端末（または別のPC）間のケーブル</title>

   <!--
   <para>The <acronym>RS-232</acronym> standard allows for, but does
   not specify, the interconnection of two computers without
   intervening modems.  A special cable is required, called a
   &lsquo;null modem&rsquo; cable.</para>
   -->
   <para>
   特に規定しているわけではないのですが、
   <acronym>RS-232</acronym> 規格では、
   間にモデムをはさまずに
   2 台のコンピュータを相互接続できるようになっています。
   これには &lsquo;ヌルモデム&rsquo;
   ケーブルという特別なケーブルが必要になります。
   </para>

   <!--
   <para>The wiring within the null modem cable depends upon the
   handshaking and control signals that are needed.  Differing
   manufacturers have differing views on this topic, so don't buy a
   null modem cable that does not come with a wiring diagram.</para>
   -->
   <para>
   ヌルモデムケーブル内の結線は、
   必要となるハンドシェークと制御信号によって異なります。
   製造業者が違えば、この点に関する見方も違います。
   ですから、結線図が付属していないヌルモデムケーブルは買わないで下さい。
   </para>

   <!--
   <para>Linux needs all of the flow control and modem control signals
   to be correctly wired.  The correct wiring of a null modem cable is
   shown in <xref linkend="serial-pc-terminal-cable-good1"> with an
   alternative shown in <xref
   linkend="serial-pc-terminal-cable-good2">.</para>
   -->
   <para>
   Linux では、フロー制御とモデム制御の各信号線が、
   すべて正しく結線されている必要があります。
   ヌルモデムケーブルの正しい結線は、
   <xref linkend="serial-pc-terminal-cable-good1"> 
   と、もう一つ
   <xref linkend="serial-pc-terminal-cable-good2">
   に示してあります。
   </para>

   <!--
   <para>Linux uses <acronym>CTS</acronym> and <acronym>RTS</acronym> to
   do handshaking, preventing the computer from overrunning the
   terminal and preventing the terminal from overrunning the computer.
   If you are connecting two computers together, then you will not get
   reliable file transfers without
   <acronym>CTS</acronym>/<acronym>RTS</acronym> handshaking.</para>
   -->
   <para>
   Linux は <acronym>CTS</acronym> と <acronym>RTS</acronym>
   を使ってハンドシェークを行なって、
   端末のオーバーランからコンピュータを保護し、
   またコンピュータのオーバーランから端末を保護しています。
   2 台のコンピュータをつなぐつもりなら、
   <acronym>CTS</acronym>/<acronym>RTS</acronym>
   のハンドシェークを使わないと、
   信頼性の高いファイル転送はできません。
   </para>

   <!--
   <para>Linux uses <acronym>DSR</acronym> and <acronym>DCD</acronym> to
   sense that a terminal is connected.  It will then request a login.
   If a session is established and <acronym>DCD</acronym> falls then
   Linux will log out the user.</para>
   -->
   <para>
   Linux は端末が接続されていることを検知するために、
   <acronym>DSR</acronym> と <acronym>DCD</acronym> を使います。
   そのあとログインを要求します。
   もしセッションが確立しているときに
   <acronym>DCD</acronym> が落ちると、Linux はユーザーをログアウトさせます。
   </para>

   <!--
   <para>Linux uses <acronym>DTR</acronym> to force the link to be
   cleared.  It does this after a user logs off to free up the
   communications channel.</para>
   -->
   <para>
   Linux は <acronym>DTR</acronym> を使って、
   リンクを強制的にクリアします。
   これはユーザーがログオフして、通信チャンネルを解放した後に行ないます。
   </para>

   <!--
   <para>Either of the null modem designs in <xref
   linkend="serial-pc-terminal-cable-good1"> or <xref
   linkend="serial-pc-terminal-cable-good2"> meets the requirements of
   the Linux kernel.  <xref linkend="serial-pc-terminal-cable-good2">
   may be marginally better when both computers are remotely located,
   as the differing states of <acronym>DSR</acronym> and
   <acronym>DCD</acronym> can be used to determine which end of the
   null modem cable has become faulty.</para>
   -->
   <para>
   ヌルモデムケーブルは、
   <xref linkend="serial-pc-terminal-cable-good1"> と
   <xref linkend="serial-pc-terminal-cable-good2"> の、
   どちらのデザインでも、Linux カーネルの要件に合います。
   しかし、両方のコンピュータが遠隔地にある場合は、
   <xref linkend="serial-pc-terminal-cable-good2">
   の方が若干良いかもしれません。
   というのは、
   ヌルモデムケーブルのどちら側に欠陥があるのかを、
   <acronym>DSR</acronym> と
   <acronym>DCD</acronym> のステートの違いを使って決められるからです。
   </para>

   <!--
   <para>All null modem designs have a common flaw.  Computers
   interconnected with real modems modem will drop Data Set Ready for
   some time after the local modem is reset by the local computer
   dropping Data Terminal Ready.  Most software is designed to
   accomodate this slight difference between modem links and null
   modem links.</para>
   -->
   <para>
   ヌルモデムの設計にはすべて、共通の欠陥があります。
   ローカルコンピュータが &quot;Data Terminal Ready&quot; を落として、
   ローカルモデムをリセットした後、
   モデムと相互接続しているコンピュータが
   &quot;Data Set Ready&quot; を相当な時間落としてしまうのです。
   しかしほとんどのソフトウェアは、モデムリンクとヌルモデムリンクの間の、
   この若干の差異を調整するようになっています。
   </para>

   <!--
   <para>Major security exposures and significant loss of reliability
   can occur with incorrectly wired null modem cables, including the
   cables in <xref linkend="serial-pc-terminal-cable-bad">, <xref
   linkend="serial-pc-terminal-cable-ugly1"> and <xref
   linkend="serial-pc-terminal-cable-ugly2">.</para>
   -->
   <para>
   セキュリティ上重要な情報が無防備になり、
   信頼が大きく損なわれてしまうのは、
   <xref linkend="serial-pc-terminal-cable-bad"> や 
   <xref linkend="serial-pc-terminal-cable-ugly1">、それに
   <xref linkend="serial-pc-terminal-cable-ugly2"> 
   で示しているケーブルをはじめとして、
   ヌルモデムケーブルの結線が間違っている場合です。
   </para>

   <figure float="1" pgwide="1" id="serial-pc-terminal-cable-good1">
   <!--
    <title>Null modem cable with full status and handshaking</title>
    -->
    <title>ステータスとハンドシェークを完全にしたヌルモデムケーブル</title>
<programlisting>
      Signal ground ---------------------- Signal ground

       Receive data ---------------------- Transmit data

      Transmit data ---------------------- Receive data

      Ready to send ---------------------- Clear to send

      Clear to send ---------------------- Ready to send

Data terminal ready -----------------+---- Data carrier detect
                                     |
                                     +---- Data set ready

Data carrier detect ----+----------------- Data terminal ready
                        |
     Data set ready ----+
<!--
    Ring indication &#045;&#045; not connected

                          not connected &#045;&#045; Ring indication</programlisting>
-->
    Ring indication -- 未使用

                                 未使用 -- Ring indication</programlisting>
   </figure>

   <figure float="1" pgwide="1" id="serial-pc-terminal-cable-good2">
<!--
    <title>Variation on null modem cable with full status and
    handshaking</title>
    -->
    <title>
    ステータスとハンドシェークを完全にした別バージョンのヌルモデムケーブル
    </title>
<programlisting>
      Signal ground ---------------------- Signal ground

       Receive data ---------------------- Transmit data

      Transmit data ---------------------- Receive data

      Ready to send ---------------------- Clear to send

      Clear to send ---------------------- Ready to send

Data terminal ready ----+----------------- Data carrier detect
                        |
     Data set ready ----+

                                     +---- Data set ready
                                     |
Data carrier detect ----+------------+---- Data terminal ready

<!--
    Ring indication &#045;&#045; not connected

                          not connected &#045;&#045; Ring indication</programlisting>
-->			  
    Ring indication -- 未使用

                                 未使用 -- Ring indication</programlisting>
   </figure>

   <!--
   <para>Unfortunately not all <systemitem
   class="osname">Linux</systemitem> boot loaders support the control
   signals required by the <systemitem
   class="osname">Linux</systemitem> operating system.  This odd state
   of affairs may force you to do away with control signals and
   handshaking if you need to issue commands to the boot
   loader.</para>
   -->
   <para>
   あいにく、すべての <systemitem class="osname">Linux</systemitem>
   のブートローダーが、
   <systemitem class="osname">Linux</systemitem>
   オペレーティングシステムで必要になる、
   制御信号をサポートしているわけではありません。
   この奇妙な事態のせいで、ブートローダーにコマンドを出す必要がある場合、
   制御信号とハンドシェークを止めざるを得ないかもしれません。
   </para>

   <!--
   <para>There are two ways of defeating the <acronym>RS-232</acronym>
   handshaking: software and hardware.</para>
   -->
   <para>
   そんな場合に、<acronym>RS-232</acronym>
   のハンドシェイクをさせないようにする方法が二つあります。
   ソフトウェアによる方法とハードウェアによる方法です。
   </para>

   <!--
   <para>If you have a modem then by far the best technique is to
   disable the control signals and handshaking by using
   <acronym>AT</acronym> commands to configure the modem's software.
   This allows the handshaking to be restored when the boot loader
   authors correct their support for serial connections.</para>
   -->
   <para>
   モデムが付いている場合、現時点での最良のテクニックは、
   <acronym>AT</acronym> コマンドを使ってモデムのソフトウェアを設定し、
   制御信号とハンドシェークを無効にすることです。
   こうすれば、ブートローダーの作者がシリアル接続のサポート内容を修正する際に、
   ハンドシェークを修復できるようになります。
   </para>

   <!--
   <para>For a null modem cable the best approach is to disable
   handshaking in your terminal emulation software.</para>
   -->
   <para>
   ヌルモデムケーブルに関しては、
   使っている端末エミュレータソフトウェアで、
   ハンドシェークを無効にするのが最良のやり方です。
   </para>

   <!--
   <para>In the worst case for a null modem you will need a cable that
   falsifies the handshaking and control signals.  Try not to use
   these cables in a production environment.</para>
   -->
   <para>
   ヌルモデムケーブルに関して最悪の場合は、
   ハンドシェークと制御信号を改造しているケーブルが必要になります。
   本番環境では、このようなケーブルは使わないようにして下さい。
   </para>

   <figure float="1" pgwide="1" id="serial-pc-terminal-cable-bad">
   <!--
    <title>Null modem cable with falsified status and
    handshaking</title>
    -->
    <title>ステータスとハンドシェークを改造したヌルモデムケーブル</title>
<programlisting>
      Signal ground ---------------------- Signal ground

       Receive data ---------------------- Transmit data

      Transmit data ---------------------- Receive data

Data terminal ready ---+              +--- Data terminal ready
                       |              |
      Clear to send ---+              +--- Clear to send
                       |              |
Data carrier detect ---+              +--- Data terminal ready
                       |              |
     Data set ready ---+              +--- Data set ready

<!--
      Ready to send &#045;&#045; not connected

                          not connected &#045;&#045; Ready to send

    Ring indication &#045;&#045; not connected

                          not connected &#045;&#045; Ring indication</programlisting>
-->
      Ready to send -- 未使用

                                 未使用 -- Ready to send

    Ring indication -- 未使用

                                 未使用 -- Ring indication</programlisting>
   </figure>

   <!--
   <para>If you are happy with a quick hack, perhaps just to use a
   serial console to grab a kernel oops message, then you can
   configure some <application>getty</application> programs to ignore
   the <acronym>RS-232</acronym> status signals.  For example,
   <application>mgetty</application> has the <literal>direct</literal>
   option in <filename>mgetty.conf</filename>.  In this case only a
   three-wire or two-wire <acronym>RS-232</acronym> null modem cable
   is needed.</para>
   -->
   <para>
   おそらくシリアルコンソールを使って、
   カーネルの oops メッセージを捕捉するためですが、
   やっつけ仕事でも良いのなら、
   いくつかの <application>getty</application> プログラムの設定で、
   <acronym>RS-232</acronym> のステータス信号を無視するようにもできます。
   例えば、<application>mgetty</application> には、
   <filename>mgetty.conf</filename> に <literal>direct</literal>
   オプションがあります。この場合は、3 芯か 2 芯の
   <acronym>RS-232</acronym> ヌルモデムケーブルがあればいいのです。
   </para>

   <figure float="1" pgwide="1" id="serial-pc-terminal-cable-ugly1">
   <!--
    <title>Null modem cable with no status or handshaking</title>
    -->
    <title>ステータスもハンドシェークもないヌルモデムケーブル</title>
<programlisting>
Signal ground ---------------------- Signal ground

 Receive data ---------------------- Transmit data

Transmit data ---------------------- Receive data</programlisting>
   </figure>

   <figure float="1" pgwide="1" id="serial-pc-terminal-cable-ugly2">
   <!--
    <title>One-way null modem cable with no status or handshaking</title>
    -->
    <title>
    ステータスもハンドシェークもない片方向のヌルモデムケーブル
    </title>
<programlisting>
Signal ground ---------------------- Signal ground

Transmit data ---------------------- Receive data</programlisting>
   </figure>

   <!--
   <para>Don't use these cables in a production environment.</para>
   -->
   <para>本番環境では、こういったケーブルは使用しないで下さい</para>

  </section>  <!-- serial-pc-terminal -->


  <section id="serial-manufacture">
  <!--
   <title>Making serial cables</title>
   -->
   <title>シリアルケーブルの作成</title>

   <!--
   <para>If you use a serial console for densely-racked computers you
   will end up making a lot of null-modem serial cables.  This section
   has some hints on making serial cables.  If you are making more
   than ten cables and live in a city you will probably find it
   economic to have the cables made by a specialty cabling
   firm.</para>
   -->
   <para>
   ラックに詰め込んだコンピュータでシリアルコンソールを使う場合は、
   最終的にはヌルモデムのシリアルケーブルを何本も作ることになります。
   このセクションには、
   シリアルケーブルを作る上でヒントになることがいくつか載せてあります。
   10 本以上ケーブルを作るつもりで、しかも都会に住んでいる場合は、
   たぶん気が付くでしょうが、
   専門のケーブル製造業者でケーブルを作らせる方が経済的です。
   </para>

   <!--
   <para>The <acronym>RS-232</acronym> standard will drive at least 15
   metres of shielded cable.  More precisely, an
   <acronym>RS-232</acronym> line driver will operate against a
   capacitance of up to 2500 picoFarad.  So if you select a cable with
   low capacitance you can drive further distances.</para>
   -->
   <para>
   <acronym>RS-232</acronym> 規格では、
   シールド付きのケーブルを、最低でも 15 メートル駆動できます。
   もっと正確に言えば、
   <acronym>RS-232</acronym> のラインドライバは
   2500 ピコファラッドまでのキャパシタンスに対して動作します。
   ですから、低キャパシタンスのケーブルを選べば、
   駆動距離はもっと延ばせます。
   </para>

   <!--
   <para>For example,
   <citetitle><acronym>ANSI/TIA/EIA-568-A</acronym></citetitle>
   unshielded twisted pair category 5 cable has a maximum capacitiance
   of 55<acronym>pF</acronym> per metre, so this popular
   &ldquo;<acronym>UTP</acronym> cat 5&rdquo; cable can be safely
   driven up to 45m.  Beyond that you should check the cable
   manufacturers specifications for the actual &ldquo;shunt
   capacitance&rdquo; (a common figure is 47.5
   <acronym>pF/m</acronym>, giving a maximum cable length of about
   50<acronym>m</acronym>).  However long runs of unshielded cable
   will pick up noise easily, as the <acronym>RS-232</acronym> signals
   are not balanced.  Some cable manufacturers offer shielded low
   capacitance cables which can be driven up to
   100<acronym>m</acronym>.</para>
   -->
   <para>
   例えば、<citetitle><acronym>ANSI/TIA/EIA-568-A</acronym></citetitle> 
   のシールド無しツイストペアのカテゴリ 5 ケーブルでは、
   キャパシタンスは最大で、1 メートルあたり 55<acronym>pF</acronym>
   になっています。
   ですから、この一般的な &ldquo;<acronym>UTP</acronym> cat 5&rdquo; 
   ケーブルだと、45 メートルまで安全に駆動できます。それ以上の場合は、
   ケーブルの最大長である約 50 メートルで、
   実際の &ldquo;シャントキャパシタンス&rdquo;
   （一般的な数値は 47.5 <acronym>pF/m</acronym>）
   がどうなっているかを、ケーブルの製造業者の仕様で確認してください。
   しかし <acronym>RS-232</acronym> の信号は平衡伝送ではないので、
   シールド無しのケーブルを長く延ばすと、簡単にノイズを拾ってしまいます。
   ケーブルの製造業者によっては、
   低キャパシタンスのシールド付きケーブルを販売しており、
   これを使えば 100 メートルまで駆動できます。
   </para>

   <!--
   <para>Attempt to minimise noise in your cabling design.  Many BIOSs
   and boot loaders will wait forever if they receive a single
   character of line noise.</para>
   -->
   <para>
   ケーブル配線の仕方を工夫して、ノイズが最低になるようにしてください。
   BIOS やブートローダーの多くは、
   ラインノイズで何か一文字受信してしまうと、
   永久に待ち状態になってしまいます。
   </para>

   <!--
   <para>If you are comfortable in working beyond specifications then
   you might note that the <acronym>RS-232</acronym> standard was
   initially designed to operate at a synchronous
   48<acronym>Kbps</acronym> and the cable requirements reflect this.
   The experience of enterprise network operators has been that
   structured cabling layout in buildings is limited by the 100m
   distance limitation of fast ethernet over category 5 cable, not by
   the practical distances achieved by RS-232 asynchronous signals at
   9600bps over category 5 cable.</para>
   -->
   <para>
   仕様以上の使い方をしていることに、何の不安も感じていなくても、
   心に留めておいてほしいことがあります。
   <acronym>RS-232</acronym> 規格が、
   もともとは同期 48<acronym>kbps</acronym>
   で動作するように設計されたもので、
   ケーブルの必要条件にこのことが反映されているのです。
   企業のネットワークオペレータの経験によれば、
   ビル内でストラクチャードケーブリングをレイアウトする際の制限になるのは、
   カテゴリ 5 のケーブルを使った、
   ファーストイーサネットの最大長が 100 メートルだということでした。
   カテゴリ 5 ケーブルを使った 9600bps の RS-232 非同期信号で達成している、
   実際の距離ではなかったんです。
   </para>

   <!--
   <para>For longer distances use an <acronym>RS-232</acronym> line
   driver; these will typically drive up to 2000 meters over category
   3 <acronym>UTP</acronym> cable.  For greater distances consider
   using fiber optical modems, the global telephony system, the mobile
   telephony system, satellite or radio.</para>
   -->
   <para>
   もっと距離を延ばしたい場合は、<acronym>RS-232</acronym>
   のラインドライバを使って下さい。
   こうすれば、カテゴリ 3 の <acronym>UTP</acronym> 
   ケーブルで、一般に 2000 メートルまで駆動できます。
   さらに延長したければ、
   光ケーブルモデムや広域電話網、モバイル電話網、衛星通信、
   あるいは無線を考慮して下さい。
   </para>

   <!--
   <para>If the environment has a lot of radio frequency noise then
   use shielded cable and connectors.  Connect the shield in the cable
   to the computer at <emphasis>one</emphasis> end.  This can be done
   by connecting the drain wire of the shield it to the Protective
   Ground (if present) or by soldering the drain wire to the body of
   the connector.  If there is a substantial amount of noise also
   place a ferrite core over the shielded cable at both ends of the
   cable.  Follow the usual good practices of making the cable to the
   correct length and screwing home the D connectors into the
   chassis.</para>
   -->
   <para>
   その環境に高周波ノイズが充満している場合は、
   シールド付きのケーブルとコネクタを使って下さい。
   ケーブルのシールドを一方の端のコンピュータに接続します。
   これはシールドのドレインワイヤを、（もしあれば）
   &quot;保安用グランド&quot; に接地するか、
   あるいはそのドレインワイヤをコネクターのボディに半田付けすればできます。
   それでもまだノイズが相当量ある場合は、
   そのケーブルの両端を、シールドしたケーブルの上から、
   フェライトコアで覆って下さい。
   それから、ケーブルを正しい長さにして、
   D コネクタをシャーシにしっかりねじ留めするという、
   普通の正しい慣例に従ってください。
   </para>

   <!--
   <para>If you are making one of these cables and have some soldering
   skill, you can easily do the jumpering of the signal wires within
   the backshell of the <acronym>DB9</acronym> or
   <acronym>DB25</acronym> connector.</para>
   -->
   <para>
   こういったケーブルのどれかを作るつもりで、しかも半田付けの技量があれば、
   <acronym>DB9</acronym> や、あるいは <acronym>DB25</acronym>
   のバックシェルにある信号線をジャンパーで飛ばすのも簡単にできます。
   </para>

   <!--
   <para>If you are making a large number of cables then crimping
   systems are much faster than soldering.  Again, pin jumpering can
   be done within the backshell.</para>
   -->
   <para>
   大量のケーブルを作るつもりなら、
   半田付けよりも圧着システムの方がずっと速くできます。
   繰り返しになりますが、ピンをジャンパーで飛ばすのは、
   バックシェルの内部でできるんです。
   </para>

   <!--
   <para>No matter what system is adopted, use the Resistance setting
   of a multimeter to check for dead and shorted pins.  A minute here
   can save hours later.</para>
   -->
   <para>
    どんなものを使うにしても、テスターで抵抗を測り、断線や線間短絡を
    チェックしてください。ここで1分ケチると、あとで数時間浪費するかも
    しれません。
   </para>

   <!--
   <para>For structured cabling systems, space is tight within
   <acronym>DB9/RJ-45</acronym> backshells, so the jumpering is better
   done behind the patch panel.  The <acronym>DB9/RJ-45</acronym>
   connectors present the <productname><acronym>IBM</acronym>
   <acronym>PC</acronym></productname> pinout at the DB9 connector and
   present the Yost or Cisco pinout at the <acronym>RJ-45</acronym>
   connector.</para>
   -->
   <para>
   ストラクチャードケーブリングシステムでは、
   <acronym>DB9/RJ-45</acronym> 
   バックシェル内のスペースは狭いです。ですから、
   パッチパネルの裏でジャンパーを飛ばすともっとうまくいきます。
   <acronym>DB9/RJ-45</acronym> コネクタは、
   DB9 コネクタでは
   <productname><acronym>IBM</acronym>
   <acronym>PC</acronym></productname> のピン配置なっており、
   <acronym>RJ-45</acronym> コネクタでは、
   Yost あるいは Cisco のピン配置になっています。
   </para>

   <caution id="caution-structuredcabling">
   <!--
    <title>Incompatible devices in structured cabling systems</title>
    -->
    <title>ストラクチャードケーブリングシステムで両立しないデバイス</title>

    <!--
    <para>Take care to connect only <acronym>RS-232</acronym> devices
    to <acronym>RS-232</acronym> devices when patching structured
    cabling systems.  Other cables may be carrying ethernet,
    <acronym>ISDN</acronym>, telephony, alarm and
    <acronym>DC</acronym> power voltages.  Connecting incompatible
    voltages may destroy equipment.</para>
    -->
    <para>
    ストラクチャードケーブリングシステムをパッチする場合、
    <acronym>RS-232</acronym> 
    デバイス同士を接続するよう注意して下さい。
    他のはたぶん、イーサネットや
    <acronym>ISDN</acronym>、電話、アラーム、それに <acronym>DC</acronym>
    の電源電圧を伝送しているケーブルだと思いますから、
    互換性のない電圧をつないでしまうと装置が壊れてしまうかも知れません。
    </para>
   </caution>

  </section> <!-- serial-manufacture -->

 </chapter> <!-- serial -->


 <chapter id="modem">
 <!--
  <title>Modem configuration</title>
  -->
  <title>モデムの設定</title>

  <section id="modem-minicom">
  <!--
   <title>Using <productname>Minicom</productname> to give commands to
   a modem</title>
   -->
   <title>
   <productname>Minicom</productname> を使ってモデムにコマンドを送る
   </title>

   <!--
   <para><application>Minicom</application> is a full-screen serial
   terminal emulation package, very much like the classic
   <application>Telix</application> terminal emulator for
   <productname>MS-DOS</productname>.</para>
   -->
   <para>
   <application>Minicom</application>
   はフルスクリーンのシリアル端末エミュレータパッケージで、
   <productname>MS-DOS</productname> 用の古い
   <application>Telix</application>
   端末エミュレータに非常に良く似ています。
   </para>

   <!--
   <para>Firstly, start <application>Minicom</application> in
   configuration mode with the command:</para>
   -->
   <para>
   まず、次のコマンドを使って、設定モードで 
   <application>Minicom</application> を起動します。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash#</prompt> <command>minicom -o -s</command></screen>
   </informalfigure>
   <!--
   <para>The following menu appears:</para>
   -->
   <para>
   すると以下のメニューが現れます。
   </para>

   <informalfigure>
<screen format="linespecific">
<guimenuitem>Filenames and paths</guimenuitem>
<guimenuitem>File transfer protocols</guimenuitem>
<guimenuitem>Serial port setup</guimenuitem>
<guimenuitem>Modem and dialing</guimenuitem>
<guimenuitem>Screen and keyboard</guimenuitem>
<guimenuitem>Save setup as dfl</guimenuitem>
<guimenuitem>Save setup as..</guimenuitem>
<guimenuitem>Exit</guimenuitem>
<guimenuitem>Exit from Minicom</guimenuitem></screen>
   </informalfigure>

   <!--
   <para>Select <guimenuitem>Serial port setup</guimenuitem> and
   set</para>
   -->
   <para>
   ここで、<guimenuitem>Serial port setup</guimenuitem> を選び、設定します。
   </para>

   <informalfigure>
<screen format="linespecific">
<guimenuitem>A - Serial Device:</guimenuitem> <userinput>/dev/ttyS0</userinput>
<guimenuitem>B - Lockfile Location:</guimenuitem> <userinput>/var/lock</userinput>
<guimenuitem>C - Callin Program:</guimenuitem>
<guimenuitem>D - Callout Program:</guimenuitem>
<guimenuitem>E - Bps/Par/Bits:</guimenuitem> <userinput>9600 8N1</userinput>
<guimenuitem>F - Hardware Flow Control:</guimenuitem> <userinput>Yes</userinput>
<guimenuitem>G - Software Flow Control:</guimenuitem> <userinput>No</userinput></screen>
   </informalfigure>

   <!--
   <para>Now save the configuration</para>
   -->
   <para>では、設定を保存してください。</para>

   <informalfigure>
<screen format="linespecific">
<guilabel>Give name to save this configuration?</guilabel>
<prompt>&gt;</prompt> <userinput>console</userinput></screen>
   </informalfigure>

   <!--
   <para>and exit <application>Minicom</application>.</para>
   -->
   <para>そして <application>Minicom</application> を終了します。</para>

   <!--
   <para>To configure a modem use the command <command>minicom -o
   console</command> to start Minicom without sending an
   initialization string to the modem.  Now issue the
   <literal>AT</literal> commands to configure the modem.</para>
   -->
   <para>
   モデムを設定するには、
   <command>minicom -o console</command> コマンドを使って、
   モデムを初期化する文字列を送出せずに Minicom を立ち上げます。
   では <literal>AT</literal> コマンドを出してモデムを設定しましょう。
   </para>

   <!--
   <para>When finished use the <guimenuitem>Quit</guimenuitem> option
   to leave <application>Minicom</application> without sending a reset
   string to the modem; this option is
   <keycombo><keycap>Alt</keycap><keycap>Q</keycap></keycombo>.</para>
   -->
   <para>
   設定が終了したら、<guimenuitem>Quit</guimenuitem> オプションを使って、
   モデムにリセット文字列を送らずに
   <application>Minicom</application> を終了します。このオプションは
   <keycombo><keycap>Alt</keycap><keycap>Q</keycap></keycombo> です。
   </para>

   <!--
   <para>Sometimes <application>Minicom</application> will use
   <keycombo><keycap>Ctrl</keycap><keycap>A</keycap></keycombo> rather
   than <keycap>Alt</keycap> to access the menu system, look for a
   hint in <application>Minicom</application>'s start up
   message:</para>
   -->
   <para>
   <application>Minicom</application> は <keycap>Alt</keycap> ではなく、
   <keycombo><keycap>Ctrl</keycap><keycap>A</keycap></keycombo>
   を使ってメニューシステムにアクセスすることがときどきあります。
   以下のような <application>Minicom</application>
   のスタートアップメッセージでヒントを探して下さい。
   </para>

   <informalfigure id="modem-minicom-startup">
<screen format="linespecific">
Press ALT-Z for help on special keys</screen>

<screen format="linespecific">
Press CTRL-A Z for help on special keys</screen>
   </informalfigure>

  </section> <!-- modem-minicom -->


  <section id="modem-dumb">
  <!--
   <title>Configure dumb modem</title>
   -->
   <title>ダムモデムを設定する</title>

   <!--
   <para>Linux, like most <productname>UNIX</productname>-like
   operating systems, expects a serial console to be connected to a
   dumb modem.  Dumb modems are not seen much these days, perhaps only
   on exotic hardware such as <acronym>ISDN</acronym> terminal adapters
   or satellite ground terminals.</para>
   -->
   <para>
   大半の <productname>UNIX</productname>
   ライクなオペレーティングシステムと同じように、
   Linux はシリアルコンソールが、
   ダムモデムにつながっているものと思っています。
   ダムモデムは最近はあまり見かけません。
   見かけるとすれば、たぶん <acronym>ISDN</acronym>
   のターミナルアダプタや、あるいは衛星回線の地上端末といった、
   風変わりなハードウェアだけでしょう。
   </para>

   <!--
   <para>A dumb modem is configured using hardware. <xref
   linkend="modem-dumb-front"> shows the front panel of a fanciful
   dumb modem.  In reality the speed and mode settings are likely to
   be done using jumpers or DIP switches.</para>
   -->
   <para>
   ダムモデムはハードウェアを使って設定します。
   <xref linkend="modem-dumb-front"> には、
   仮想のダムモデムのフロントパネルを示しています。
   実際は、速度とモードの設定には、
   ジャンパーや DIP スイッチを使うようです。
   </para>

   <figure float="1" id="modem-dumb-front">
   <!--
    <title>Front panel of a dumb modem</title>
    -->
    <title>ダムモデムのフロントパネル</title>
<programlisting>
+-----------------------------+
|                             |
|    SPEED       MODE         |
|  [ ]  300    [ ] Originate  |
|  [ ]  600    [X] Answer     |
|  [ ] 2400                   |
|  [X] 9600                   |
|                             |
+-----------------------------+</programlisting>
   </figure>

   <!--
   <para>The modem's speed is set to the desired bit rate, in our case
   9600<abbrev>bps</abbrev>.  The modem's mode is set to Answer,
   that is, to wait for incoming calls and to answer them.</para>
   -->
   <para>
   モデムの速度は必要なビットレートに設定します。
   この例では 9600 <abbrev>bps</abbrev> です。モデムのモードは 
   &quot;Answer&quot; に設定します。
   つまり、着信を待ち、そしてその着信に応答するのです。
   </para>

   <!--
   <para>If the <acronym>RS-232</acronym> control line Data Terminal
   Ready is low, the modem will not answer a call.  The computer is
   off or the computer's serial interface is not yet initialized.
   Once <acronym>DTR</acronym> is high the modem will answer incoming
   calls.</para>
   -->
   <para>
   <acronym>RS-232</acronym> の制御ラインである 
   &quot;Data Terminal Ready&quot; 
   が落ちていると、モデムは着信した電話には応えません。
   コンピュータの電源が切れているとか、
   あるいはコンピュータのシリアルインタフェースが、
   まだ初期化されていないのです。
   <acronym>DTR</acronym> が上がってしまえば、
   モデムは着信する電話に応えます。
   </para>

   <!--
   <para>Once an incoming call is established the modem raises the
   Data Carrier Detect control line.  Only when DCD is high is
   received data valid (data receieved from a dumb modem when DCD is
   not asserted is probably line noise).  Only when DCD is high is
   transmitted data passed through the link.</para>
   -->
   <para>
   電話が着信し接続が確立されてしまえば、モデムは 
   &quot;Data Carrier Detect&quot; 制御ラインを上げます。
   DCD が上がっている時に受信したデータだけが有効になります
   （DCD がアサートされていない時にダムモデムから受信したデータは、
   おそらくラインノイズです）。
   そして、DCD が上がっている時だけ、
   送信データがリンクを通じて伝送されます。
   </para>

   <!--
   <para><application>getty</application> on the Linux computer has
   been waiting for <acronym>DCD</acronym> to come high, and
   <application>getty</application> welcomes the user and requests
   them to log in.</para>
   -->
   <para>
   Linux コンピュータの <application>getty</application> は、
   <acronym>DCD</acronym> が上がってくるのをずっと待っていたので、
   <application>getty</application> はユーザーを喜んで迎え、
   ログインを要求します。
   </para>

   <!--
   <para>Whilst the user is logged in and data is flowing, Clear to
   Send and Ready to Send are used between the modem and the computer
   to prevent data being sent too soon.  The computer lowers Clear to
   Send when it is too busy to receive a character.  The modem lowers
   Ready to Send when it is too busy to receive a character.</para>
   -->
   <para>
   ユーザーがログインしてデータが流れる一方で、モデムとコンピュータの間で 
   &quot;Clear to Send&quot; と &quot;Ready to Send&quot; を使い、
   データの送出が早過ぎないようにしています。
   文字を受けとる時間が無いほどコンピュータが忙しい場合、
   コンピュータは &quot;Clear to Send&quot; を落とします。
   逆にモデムが忙し過ぎて文字を受けとれない場合は、
   モデムが &quot;Ready to Send&quot; を落とします。
   </para>

   <!--
   <para>When the user hangs up, Data Carrier Detect falls and the
   hang up signal is sent to all processes associated with the dial in
   session.</para>
   -->
   <para>
   ユーザーが電話を切ると、&quot;Data Carrier Detect&quot; が落ち、
   その着信しているセッションに関係するすべてのプロセスに、
   ハングアップシグナルが送られます。
   </para>

   <!--
   <para>Alternatively, the user can log out.  When the shell dies,
   the computer pulls Data Terminal Ready low, causing the modem to
   hang up.  When the <application>getty</application> brings Data
   Terminal Ready high again, the modem will accept more incoming
   calls.</para>
   -->
   <para>
   あるいはユーザーがログアウトしてもかまいません。シェルが死ぬと、
   コンピュータは &quot;Data Terminal Ready&quot; を落とし、
   その結果モデムがハングアップします。
   <application>getty</application>
   が再度 &quot;Data Terminal Ready&quot; を上げると、
   モデムは着信を受け付けます。
   </para>

   <!--
   <para>We have not yet described Data Set Ready.  This line is low
   if the modem is off or if the modem has not yet initialized.  When
   DSR is low all other signals from the modem are undefined.  For
   example, if DSR is low but DCD "floats" to the high voltage then
   software should behave as if DCD is not asserted.</para>
   -->
   <para>
   &quot;Data Set Ready&quot; についてはまだ説明していませんでした。
   このラインはモデムの電源が切れていたり、
   モデムがまだ初期化されていない場合に落ちます。
   DSR が落ちている時は、
   他の信号はすべて未定義状態です。
   例えば、DSR が落ちている状態で、
   DCD が &quot;フロートして&quot; 上がった場合、
   ソフトウェアは、
   DCD がアサートされていないという想定で、動作するようにしてください。
   </para>

  </section> <!-- modem-dumb -->


  <section id="modem-hayes">
  <!--
   <title>Configure modem with <acronym>AT</acronym> commands</title>
   -->
   <title><acronym>AT</acronym> コマンドでモデムを設定する</title>

   <!--
   <para>Most modems today are smart modems based upon the Hayes
   modems and their command sets.  But as discussed above, the
   <systemitem class="osname">Linux</systemitem> serial console is
   designed to operate with a dumb modem.</para>
   -->
   <para>
   今では、たいていのモデムはヘイズモデムとそのコマンドセットに基づく、
   スマートモデムです。しかし先に論じたように、
   <systemitem class="osname">Linux</systemitem> のシリアルコンソールは、
   ダムモデムで動作するように設計されています。
   </para>

   <!--
   <para>Thus the smart modem is dumbed-down until it resembles a dumb
   modem.  Some expensive modems will have a <acronym>DIP</acronym>
   switch or board jumper to put them into dumb mode.</para>
   -->
   <para>
   したがって、スマートモデムをダムモデムと同じになるまで、
   機能を落とします。
   高価なモデムの中には、<acronym>DIP</acronym> スイッチや、
   ボードジャンパーがあり、
   それらを使ってダムモードにするものもあります。
   </para>

   <!--
   <para>It is essential to have a manual for the modem which describes
   that modem's <literal>AT</literal> commands.  Although most modems
   agree on the more popular <literal>AT</literal> commands, they
   differ in the more technical commands.</para>
   -->
   <para>
   そのモデムの <literal>AT</literal>
   コマンドを解説しているマニュアルは必携です。
   たいていのモデムは、より一般的な
   <literal>AT</literal> コマンドでは一致していますが、
   もっと専門的なコマンドに関しては違っています。
   </para>


   <section id="modem-hayes-bps">
   <!--
    <title>Configure port speed</title>
    -->
    <title>ポート速度を設定する</title>

    <!--
    <para>Hayes <acronym>AT</acronym>-style modems can maintain a
    static speed between the computer and the modem, no matter what
    speed the dialing modem uses.</para>
    -->
    <para>
    ヘイズの <acronym>AT</acronym> 互換モデムでは、
    電話しているモデムがどんな速度を使っていても、
    コンピュータ・モデム間は一定の速度を維持できます。
    </para>

    <!--
    <para>For most modems this is set automatically based upon the
    speed of the first characters sent after power-on.</para>
    -->
    <para>
    ほとんどのモデムでは、電源投入後最初に受信する文字の速度に基づいて、
    自動的にこの速度を設定します。
    </para>

    <!--
    <para>Power cycle the modem and connect to it with the command
    <command>minicom -o console</command>.  Press
    <keycap>Enter</keycap> a few times.  The modem should now be
    running at the same bit rate used by
    <application>Minicom</application>, which we set to the speed of
    the serial console in <xref linkend="modem-minicom">.</para>
    -->
    <para>
    そこで、
    モデムの電源を切り、またすぐに電源を入れて下さい。そして
    <command>minicom -o console</command>
    コマンドでそのモデムに接続してください。
    それから <keycap>Enter</keycap> を何回か押します。
    これでモデムは <application>Minicom</application>
    が使っているのと同じビットレートで動作します。
    この速度は、<xref linkend="modem-minicom">
    で、シリアルコンソールに設定した速度です。
    </para>

    <!--
    <para>You can check the port speed by asking the modem to generate
    some output.</para>
    -->
    <para>
    モデムになにかを出力するよう要求すれば、ポートの速度は確認できます。
    </para>

    <figure id="modem-hayes-bps-ati">
    <!--
     <title>Testing the modem's port speed</title>
     -->
     <title>モデムのポート速度を調べる</title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>minicom -o console</command>
Welcome to minicom
Press CTRL-A Z for help on special keys

<keycap>Enter</keycap> <keycap>Enter</keycap> <keycap>Enter</keycap>

<command>ATI</command> <keycap>Enter</keycap>
56k V.90 Series 3 External V2.20

<keycombo><keycap>Ctrl</keycap><keycap>A</keycap></keycombo> <keycap>Q</keycap>
<guimenu>Leave without reset?</guimenu> <guimenuitem>Yes</guimenuitem></screen>
    </figure>

    <!--
    <para>Some modems have an <acronym>AT</acronym> command to
    re-establish the port speed, look in your modem's manual for the
    <command>AT&amp;B1</command> command.  Some modems have a command
    to explicitly set the port speed, look in you modem's manual for
    the <command>ATB</command> command.</para>
    -->
    <para>
    モデムによってはポート速度を再設定する
    <acronym>AT</acronym> コマンドがあります。
    お使いのモデムのマニュアルで、<command>AT&amp;B1</command>
    コマンドをちょっと調べてみてください。
    また明示的にポート速度を設定するコマンドがあるモデムもあるので、
    モデムのマニュアルで、
    ざっと <command>ATB</command> コマンドを調べてみてください。
    </para>

   </section> <!-- modem-hayes-bps -->


 <section id="modem-hayes-answer">
 <!--
    <title>Configure answer mode</title>
    -->
    <title>アンサーモードを設定する</title>

    <!--
    <para>The modem will answer an incoming call on the second ring
    using the command <command>ATS0=2</command>.</para>
    -->
    <para>
    <command>ATS0=2</command> コマンドを使えば、
    モデムは 2 回目の呼出音で着信に応えます。
    </para>

    <!--
    <para>Don't answer the phone on the first ring as this may
    invalidate the certification of the modem in some telephony
    jurisdictions.</para>
    -->
    <para>
    電話会社によっては、1 回目の呼出音で応えると、
    モデムを識別できなくなる場合があるので、
    そのような設定にはしないで下さい。
    </para>

   </section> <!-- modem-hayes-answer -->


   <section id="modem-hayes-ctsrts">
   <!--
    <title>Configure <acronym>CTS</acronym>/<acronym>RTS</acronym> handshaking</title>
    -->
    <title>
    <acronym>CTS</acronym>/<acronym>RTS</acronym> のハンドシェークを設定する
    </title>

    <!--
    <para><acronym>CTS</acronym>/<acronym>RTS</acronym> handshaking
    prevents lost characters.</para>
    -->
    <para>
    <acronym>CTS</acronym>/<acronym>RTS</acronym> のハンドシェークを使うと、
    文字落ちしなくなります。
    </para>

    <!--
    <para>The <literal>AT</literal> command is
    <command>AT&amp;K3</command>.</para>
    -->
    <para>
    <command>AT&amp;K3</command> がその <literal>AT</literal> コマンドです。
    </para>

   </section> <!-- modem-hayes-ctsrts -->


   <section id="modem-hayes-dcd">
   <!--
    <title>Configure Data Carrier Detect</title>
    -->
    <title>&quot;Data Carrier Detect&quot; を設定する</title>

    <!--
    <para>Data Carrier Detect should follow the presence or absence of
    a calling modem.</para>
    -->
    <para>
    &quot;Data Carrier Detect&quot;
    は、電話しているモデムの有無に従うようにしてください。
    </para>

    <!--
    <para>The <acronym>AT</acronym> command is
    <command>AT&amp;C1</command>.</para>
    -->
    <para>
    この <acronym>AT</acronym> コマンドは <command>AT&amp;C1</command> です。
    </para>

   </section> <!-- modem-hayes-dcd -->


   <section id="modem-hayes-dtr">
   <!--
    <title>Configure Data Terminal Ready</title>
    -->
    <title>&quot;Data Terminal Ready&quot; を設定する</title>

    <!--
    <para>Data Terminal Ready should control the modem.  If
    <acronym>DTR</acronym> is high the modem is ready to receive calls.
    If <acronym>DTR</acronym> is low the modem should not receive any
    more calls and should hang up any existing call.</para>
    -->
    <para>
    モデムは &quot;Data Terminal Ready&quot; が制御するようにしてください。
    もし <acronym>DTR</acronym> が上がっていれば、
    そのモデムは着信を受け付ける状態になっています。
    <acronym>DTR</acronym> が落ちている場合は、
    それ以上はどのような着信も受け付けないようにし、
    既に着信している場合は、
    いずれもハングアップさせてください。
    </para>

    <!--
    <para>The <acronym>AT</acronym> command is
    <command>AT&amp;D2</command>.</para>
    -->
    <para>
    この <acronym>AT</acronym> コマンドは <command>AT&amp;D2</command> です。
    </para>

   </section> <!-- modem-hayes-dtr -->


   <section id="modem-hayes-connect">
   <!--
    <title>Configure no <computeroutput>CONNECT</computeroutput>
    messages</title>
    -->
    <title>
    <computeroutput>CONNECT</computeroutput>
    メッセージを出さないように設定する
    </title>

    <!--
    <para>A Hayes <acronym>AT</acronym>-style modem usually outputs a
    message when a call is received.  For example:</para>
    -->
    <para>
    ヘイズの <acronym>AT</acronym> 互換モデムは、
    着信すると普通はメッセージを出力します。
    例えば次のようなものです。
    </para>

    <informalfigure id="modem-hayes-connect-example">
     <screen format="linespecific"><computeroutput>CONNECT 9600</computeroutput></screen>
    </informalfigure>

    <!--
    <para>The modem has a &lsquo;quiet mode&rsquo; that disables these
    messages.</para>
    -->
    <para>
    モデムにはこういったメッセージ出力を無効にする、
    &lsquo;quiet mode&rsquo; があります。
    </para>

    <!--
    <para>The <acronym>AT</acronym> command is
    <command>ATQ1</command>.  There will be no
    <computeroutput>OK</computeroutput> printed in response to this
    command.</para>
    -->
    <para>
    この <acronym>AT</acronym> コマンドは <command>ATQ1</command> です。
    このコマンドに対応する応答の <computeroutput>OK</computeroutput>
    は表示されません。
    </para>

   </section> <!-- modem-hayes-connect -->


   <section id="modem-hayes-echo">
   <!--
    <title>Configure no echo of commands</title>
    -->
    <title>コマンドをエコーバックしないように設定する</title>

    <!--
    <para>Echoing commands can confuse the console, so turn off
    command echoing.</para>
    -->
    <para>
    コマンドのエコーを返すとコンソールが混乱することがあります。
    ですから、コマンドのエコーバックは無効にして下さい。
    </para>

    <!--
    <para>The <literal>AT</literal> command is
    <command>ATE0</command>.</para>
    -->
    <para>
    この <literal>AT</literal> コマンドは 
    <command>ATE0</command> です。
    </para>

   </section> <!-- modem-hayes-echo -->

   <section id="modem-hayes-speaker">
   <!--
    <title>Configure silent connection</title>
    -->
    <title>静かに接続するように設定する</title>

    <!--
    <para>Most modems have a speaker.  By default this is connected
    whilst a modem is connecting and negotiating a common protocol and
    speed.  This is very useful for a dialing modem, as it prevents a
    human being accidentally repeatedly called.  The speaker can be
    annoying on answering modems.</para>
    -->
    <para>
    ほとんどのモデムにはスピーカーがあります。デフォルトでは、モデムが
    接続中でしかも一般的なプロトコルと速度でネゴシエートしている間は、
    スピーカーから音が出続けています。
    こうしておけば、間違えて何度も人を呼ばずに済むので、
    発信しているモデムにとっては非常に役立ちます。
    しかし、モデムが応答中の場合は、スピーカーの音が邪魔になることがあります。
    </para>

    <!--
    <para>If a quieter computer room is desirable, use the
    <command>ATM0</command> command to turn off the speaker.</para>
    -->
    <para>
    もっと静かなコンピュータルームがお望みなら、
    <command>ATM0</command>
    コマンドを使ってスピーカを切って下さい。
    </para>

   </section> <!-- modem-hayes-speaker -->

   <section id="modem-hayes-dtrdrop">
   <!--
    <title>Optionally, configure DTR delay</title>
    -->
    <title>オプションで、DTR の遅延を設定する</title>

    <!--
    <para>Data Terminal Ready drops when the semiconductor that
    supports the <acronym>RS-232</acronym> link is reset.  This then
    hangs up the modem.  This can be annoying.  If the
    <application>getty</application> supports a parameter similar to
    <application>mgetty</application>'s
    <literal>toggle-dtr-waittime</literal> then it is possible to
    extend the time that the modem will ignore <acronym>DTR</acronym>.
    The time that <application>getty</application> holds
    <acronym>DTR</acronym> low to force a hang up is extended beyond the
    modem's setting.  The result is that resetting the semiconductor
    does not hang up the modem, but <application>getty</application>
    can still hang up the modem at the end of a login session.</para>
    -->
    <para>
    <acronym>RS-232</acronym> をサポートしている半導体がリセットされると、
    &quot;Data Terminal Ready&quot; が落ち、
    このため、モデムがハングアップしてしまいます。
    これにはいらつくことがあります。
    もし <application>mgetty</application> の
    <literal>toggle-dtr-waittime</literal> と似たパラメータを、
    <application>getty</application> でもサポートしていれば、モデムが
    <acronym>DTR</acronym> を無視する時間を延長できます。
    強制的にハングアップさせるために、
    <application>getty</application> が
    <acronym>DTR</acronym>
    を落としたままにしておく時間を、
    モデムに設定した値以上に延長するわけです。
    結果的には、この半導体をリセットしても、
    モデムはハングアップしなくなりますが、
    それでもログインセッションの終りに 
    <application>getty</application>
    がモデムをハングアップさせる可能性はあります。
    </para>

    <!--
    <para>Check your modem's documentation.  Our example modem uses
    S-register 25 to contain the threshold for noticing a change in
    <acronym>DTR</acronym>.  The value is in one-hundreds of a second.
    By setting the modem with <command>ATS25=150</command> (1.5
    seconds) and setting <application>mgetty</application> with
    <literal>toggle-dtr-waittime 2000</literal> (2 seconds) we ignore
    small blips in <acronym>DTR</acronym>.</para>
    -->
    <para>
    ですからお使いのモデムのドキュメントを調べてください。
    この例のモデムでは、
    S レジスタ 25 を使って、 <acronym>DTR</acronym>
    の変化を検知するしきい値を入れています。この値は 100 分の 1 秒単位です。
    モデムを <command>ATS25=150</command> (1.5 秒) に設定し、さらに
    <application>mgetty</application> に 
    <literal>toggle-dtr-waittime 2000</literal> (2 秒) と設定することで、
    <acronym>DTR</acronym> の瞬間的な低下を無視するようにします。
    </para>

   </section> <!-- modem-hayes-dtrdrop -->


   <section id="modem-hayes-attention">
   <!--
    <title>Configure no attention sequence</title>
    -->
    <title>アテンションシーケンスを無効にするよう設定する</title>

    <!--
    <para>Once the modem is correctly configured and works well,
    disable the <literal>+++</literal> sequence that gives access to
    the modem's command mode.</para>
    -->
    <para>
    モデムを正しく設定して順調に動作していれば、
    モデムのコマンドモードにアクセスできるようにする、 
    <literal>+++</literal> シーケンスを無効にして下さい。
    </para>

    <!--
    <para>The <acronym>AT</acronym> command is
    <command>ATS2=255</command>.</para>
    -->
    <para>
    この <acronym>AT</acronym> コマンドは <command>ATS2=255</command> です。
    </para>

    <!--
    <para>If this command is accidentally given see <xref
    linkend="modem-hayes-reset"> to reset the modem to its factory
    default parameters and start again.</para>
    -->
    <para>
    たまたまこのコマンドを実行してしまった場合は、
    <xref linkend="modem-hayes-reset">を見て、
    そのモデムを工場出荷時のデフォルトパラメータにリセットして、
    再起動して下さい。
    </para>

   </section> <!-- modem-hayes-attention -->


   <section id="modem-hayes-example">
   <!--
    <title>Configuration example</title>
    -->
    <title>設定例</title>

    <figure id="modem-hayes-example-config">
    <!--
     <title>Configure modem using <acronym>AT</acronym>
     commands</title>
     -->
     <title><acronym>AT</acronym> コマンドを使ってモデムを設定する</title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>minicom -o console</command>
<computeroutput>Welcome to minicom
Press CTRL-A Z for help on special keys</computeroutput>

<command>AT &amp;F</command> <keycap>Enter</keycap>
<computeroutput>OK</computeroutput>

<command>AT Z</command> <keycap>Enter</keycap>
<computeroutput>OK</computeroutput>

<command>AT &amp;C1 &amp;D2 &amp;K3 S0=2 M0</command> <keycap>Enter</keycap>
<computeroutput>OK</computeroutput>

<command>AT E0 Q1 S2=255 &amp;W</command> <keycap>Enter</keycap>

<keycombo><keycap>Alt</keycap><keycap>A</keycap></keycombo> <keycap>Q</keycap>
<guimenu>Leave without reset?</guimenu> <guimenuitem>Yes</guimenuitem></screen>
    </figure>

   </section> <!-- modem-hayes-example -->


   <section id="modem-hayes-reset">
   <!--
    <title>Resetting the modem</title>
    -->
    <title>モデムをリセットする</title>

    <!--
    <para>If you need to issue more <acronym>AT</acronym> commands to
    the modem then power cycle the modem.  This should place the modem
    into command mode.</para>
    -->
    <para>
    これ以上の <acronym>AT</acronym> コマンドをモデムに出す必要がある場合は、
    一旦モデムの電源を切り、それからまた電源を入れて下さい。
    こうすればモデムはコマンドモードになるはずです。
    </para>

    <!--
    <para>Now issue the following commands to restore the modem's
    factory configuration.</para>
    -->
    <para>
    では次のコマンドを出して、モデムを工場出荷時設定に戻してみましょう。
    </para>

    <figure id="modem-hayes-attention-regain">
    <!--
     <title>Resetting a Hayes <acronym>AT</acronym>-style
     modem</title>
     -->
     <title>
     ヘイズの <acronym>AT</acronym> 互換モデムをリセットする。
     </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>minicom -o console</command>
<computeroutput>Welcome to minicom
Press CTRL-A Z for help on special keys</computeroutput>

<command>AT &amp;F &amp;Y0 &amp;W &amp;W1</command> <keycap>Enter</keycap>
OK
<command>AT Z</command> <keycap>Enter</keycap>
OK

<keycombo><keycap>Alt</keycap><keycap>A</keycap></keycombo> <keycap>Q</keycap>
<guimenu>Leave without reset?</guimenu> <guimenuitem>Yes</guimenuitem></screen>
    </figure>

    <!--
    <para>If this fails then you will need to clear the modem's
    configuration memory.  The procedure for this varies by
    manufacturer, and probably requires the disassembly of the
    modem.</para>
    -->
    <para>
    もしこれが失敗した場合は、モデムの設定メモリをクリアする必要があります。
    この手順はモデムの製造業者によって様々だし、
    たぶんモデムを分解する必要があるでしょう。
    </para>

   </section> <!-- modem-hayes-reset -->

  </section> <!-- modem-hayes -->


  <section id="modem-internal">
  <!--
   <title>Internal modems</title>
   -->
   <title>内蔵モデム</title>

   <!--
   <para>An internal modem is basically an external modem and serial
   port mounted upon a <acronym>PC</acronym> bus card.  These are
   cheaper than external modems as they do not require a power supply
   or a chassis.</para>
   -->
   <para>
   内蔵モデムというのは、
   基本的には <acronym>PC</acronym> のバスカードにマウントした、
   外付けモデムとシリアルポートです。
   これらは電源の供給も不要だしシャーシも要らないので、
   外付けモデムよりも安価です。
   </para>

   <!--
   <para>Internal modems work fine for remote serial console
   applications.  They are especially attractive for computers at
   co-location sites, as those sites charge according to space and
   power consumption.</para>
   -->
   <para>
   内蔵モデムは、
   リモートのシリアルコンソールアプリケーションでもちゃんと動作します。
   場所借りしているサイトにあるコンピュータには、特に魅力的です。
   というのは、これらのサイトは、
   占有スペースと電気の消費量によって金額を請求しているからです。
   </para>

   <!--
   <para>Check that your internal modem preserves its setting across a
   power cycle.</para>
   -->
   <para>
   お使いの内蔵モデムが、電源の切り／入りをしても、
   その設定を保持していることを確かめて下さい。
   </para>

   <!--
   <para>Ensure that the interrupt line and port address space used by
   the internal modem's serial port do not conflict with that used by
   any other pre-existing serial ports.  Alternatively, ensure that
   the internal serial port can be disabled, freeing its interrupt
   line and port address space for use by the internal modem.</para>
   -->
   <para>
   それから、
   内蔵モデムのシリアルポートが使っている、
   割り込みラインとポートアドレス空間が、
   その他の既存のシリアルポートのものと、競合しないことを確認して下さい。
   あるいは、
   内蔵のシリアルポートを無効にできることを確認してください。
   そうすれば、割り込みラインとポートアドレス空間が解放されて、
   内蔵モデムでそれらを使えるようになります。
   </para>

   <!--
   <para>Be careful not to confuse an internal modem with a WinModem.
   An internal modem does not need a special device driver, but
   appears to <systemitem class="osname">Linux</systemitem> as a
   stardard serial port.</para>
   -->
   <para>
   内蔵モデムを WinModem と混同しないよう注意して下さい。
   内蔵モデムには特別なデバイスドライバは要りません。そのままでも
   <systemitem class="osname">Linux</systemitem>
   からは標準的なシリアルポートに見えます。
   </para>

  </section> <!-- modem-internal -->


  <section id="modem-dsp">
   <!--
   <title>WinModems</title>
   -->
   <title>WinModem</title>

   <!--
   <para>If you look at a modem, with it's small central processing
   unit and special-purpose digital signal processor, and then look at
   a modern <acronym>PC</acronym>, with it's large <acronym>CPU</acronym>
   and general-purpose <acronym>DSP</acronym> on the sound card, you may
   wonder if the hardware duplication of an external modem is
   necessary.</para>
   -->
   <para>
   モデムを見ると、
   そこには中央処理装置と専用のデジタルシグナルプロセッサがあります。
   また、最近の <acronym>PC</acronym> を見ると、
   そこには大きな <acronym>CPU</acronym> があり、
   サウンドボードは汎用の <acronym>DSP</acronym> を搭載しています。
   変だと思いませんか？
   外付けモデムと、ハードウェアがダブッてますけど、
   そうしないといけないのでしょうか？
   </para>

   <!--
   <para>A &lsquo;WinModem&rsquo; incorporates the
   <acronym>CPU</acronym> and <acronym>DSP</acronym> of the modem into
   the slightly-enhanced fabric of a <acronym>PC</acronym>.  They are
   called "WinModems" because they originally only shipped with
   <productname>Microsoft <systemitem
   class="osname">Windows</systemitem></productname> device
   drivers. These device drivers presented the illusion of a serial
   port attached to a Hayes <acronym>AT</acronym>-style modem.  For a
   long time only <systemitem class="osname">Windows</systemitem>
   versions of these drivers where available.  Some manufacturers now
   provide <systemitem class="osname">Linux</systemitem> versions of
   their device drivers as well, these modems are jokingly called
   &lsquo;LinModems&rsquo;.</para>
   -->
   <para>
   &lsquo;WinModem&rsquo; というのは、
   <acronym>PC</acronym> の構造を若干拡張して、
   その中にモデムの <acronym>CPU</acronym> と <acronym>DSP</acronym>
   を組み込んだものです。
   そういうモデムはもともと、 
   <productname>Microsoft
   <systemitem class="osname">Windows</systemitem></productname>
   のデバイスドライバを組み込んで出荷しているものしかなかったので、
   &quot;WinModems&quot; といいます。
   これらのデバイスドライバのせいで、
   &quot;WinModem&quot; はヘイズの
   <acronym>AT</acronym> 互換モデムにシリアルポートが付いているものだ、
   という錯覚が起きました。長い間、使えるものといえば、
   <systemitem class="osname">Windows</systemitem>
   版のドライバしかなかったのです。
   でも今では <systemitem class="osname">Linux</systemitem>
   版のデバイスドライバも提供している業者が何社かあり、
   そのモデムを
   &lsquo;LinModems&rsquo; と洒落ています。
   </para>

   <!--
   <para>It is probably possible to use a LinModem as a <systemitem
   class="osname">Linux</systemitem> console.  At the most this would
   require altering the source code to dumb-down the AT command
   emulation of the modem and recompiling the kernel.</para>
   -->
   <para>
   LinModem はたぶん、
   <systemitem class="osname">Linux</systemitem>
   のコンソールに使えます。必要なのはせいぜい、
   ソースコードを変更して、
   そのモデムの AT コマンドエミュレーションをダム化することと、
   カーネルを再コンパイルすることくらいです。
   </para>

   <!--
   <para>Boot loaders, however, work in a very confined software
   environment and struggle to support a simple serial chip.
   Considering that some boot loaders do not even handle interrupts,
   handling the complex <acronym>DSP</acronym> of a LinModem is well
   beyond what is practical.</para>
   -->
   <para>
   しかし、ブートローダーは非常に限られたソフトウェア環境で動作しており、
   簡単なシリアルチップのサポートですら悪戦苦闘しています。
   ブートローダーの中には、割り込み処理さえ無いものがあることを考えると、
   LinModem の複雑な <acronym>DSP</acronym> 処理を行なわせるのは、
   実用の範囲を優に越えています。
   </para>

  </section> <!-- modem-dsp -->

 </chapter> <!-- modem -->


 <appendix id="bugs">
 <!--
  <title>Bugs and annoyances</title>
  -->
  <title>バグと困りごと</title>

  <section id="bugs-kernelp">
  <!--
   <title>Flow control in <systemitem
   class="osname">Linux</systemitem> kernel</title>
   -->
   <title>
   <systemitem class="osname">Linux</systemitem> カーネルのフロー制御
   </title>

   <!--
   <para>The Linux kernel can be asked to do
   <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control using
   the <literal>r</literal> option on the <literal>console=</literal>
   parameter.  For example, a serial link at 9600bps with 8 data bits,
   no parity and <acronym>CTS</acronym>/<acronym>RTS</acronym> flow
   control is configured as shown in <xref
   linkend="bugs-kernelp-config">.</para>
   -->
   <para>
   <literal>console=</literal> パラメータに
   <literal>r</literal> オプションを付けて、
   Linux カーネルに
   <acronym>CTS</acronym>/<acronym>RTS</acronym>
   のフロー制御をさせることができます。
   例えば、速度が 9600bps、データが 8 ビット、
   パリティ無し、<acronym>CTS</acronym>/<acronym>RTS</acronym>
   のフロー制御、というシリアルリンクは、
   <xref linkend="bugs-kernelp-config">
   で示すように設定します。
   </para>

   <figure id="bugs-kernelp-config">
   <!--
    <title>A kernel <literal>console</literal> parameter with
    <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control</title>
    -->
    <title>
    <acronym>CTS</acronym>/<acronym>RTS</acronym>
    フロー制御を行なう、カーネルの
    <literal>console</literal> パラメータ
    </title>
<programlisting>
console=9600n8r
</programlisting>
   </figure>

   <!--
   <para>Because the Linux kernel only ever sends data,
   <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control is
   implemented by checking that Clear to Send is not asserted.  The
   code which does is found in
   <filename>/usr/src/linux/drivers/char/serial.c</filename>, the
   relevant portion can be seen in <xref
   linkend="bugs-kernelp-serialc">.</para>
   -->
   <para>
   Linux カーネルは常にデータを送出するだけなので、
   <acronym>CTS</acronym>/<acronym>RTS</acronym> フロー制御は、
   &quot;Clear to Send&quot; がアサートされていないことを確認する
   という実装になっています。
   この部分のコードは、
   <filename>/usr/src/linux/drivers/char/serial.c</filename>
   にあります。
   関連部分は <xref linkend="bugs-kernelp-serialc"> にあります。
   </para>

   <figure id="bugs-kernelp-serialc">
   <!--
    <title>Kernel source code for console
    <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control</title>
    -->
    <title>
    コンソールの <acronym>CTS</acronym>/<acronym>RTS</acronym>
    フロー制御用カーネルソースコード
    </title>
<programlisting>
static inline void wait_for_xmitr(struct async_struct *info)
{
&hellip;
  /* Wait for flow control if necessary */
  if (info-&gt;flags &amp; ASYNC_CONS_FLOW) {
    tmout = 1000000;
    while (--tmout &amp;&amp;
           ((serial_in(info, UART_MSR) &amp; UART_MSR_CTS) == 0));
  }       
}
</programlisting>
   </figure>

   <!--
   <para>The loop driven by the <varname>tmout</varname> value of
   1000000 results in a wait of about one second for the
   <acronym>CTS</acronym> line to become asserted.</para>
   -->
   <para>
   <varname>tmout</varname> 値を 1000000 にしてループすることで、
   <acronym>CTS</acronym> 
   ラインがアサート状態になるまで、1 秒ほど待つことになります。
   </para>

   <!--
   <para>This code ignores the status of the <acronym>RS-232</acronym>
   Data Set Ready and Data Carrier Detect status lines.  This has a
   number of consequences.</para>
   -->
   <para>
   このコードでは、
   <acronym>RS-232</acronym>
   の &quot;Data Set Ready&quot; と &quot;Data Carrier Detect&quot;
   の両ステータスラインからのステータスを無視しています。
   しかし、こうしてしまうと、多くの不都合が出てきます。
   </para>

   <itemizedlist>
    <listitem>
    <!--
     <para>If the <acronym>RS-232</acronym> cable is unplugged or the
     terminal server port is idle then the code waits for
     <acronym>CTS</acronym> to be asserted for about one second for
     every character written to the console.  So the huge number of
     characters written to the console when booting a machine can
     result in a very long wait for a reboot.</para>
     -->
     <para>
     <acronym>RS-232</acronym> ケーブルを抜いていたり、
     ターミナルサーバーのポートがアイドル状態の場合、
     このコードは、約 1 秒間 <acronym>CTS</acronym> 
     がアサートされるのを待ちますが、
     その間にコンソールにはあらゆる文字が書き込まれます。
     そうなると、マシンのブート時に、
     コンソールに大量の文字が書き込まれることになり、
     その結果リブートが非常に長時間かかってしまいます。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Clear to Send is only validly asserted if Data Carrier
     Detect and Data Set Ready are asserted.  The code should allow
     for an unpowered device which allows <acronym>CTS</acronym> to float.</para>
     -->
     <para>
     &quot;Clear to Send&quot; のアサートが有効なのは、
     &quot;Data Carrier Detect&quot; と &quot;Data Set Ready&quot;
     がアサートされる場合だけです。
     このコードは、電源が入っていないデバイスのことを考慮すべきです。
     デバイスに電源が入っていないと、
     <acronym>CTR</acronym> がフロート状態になります。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>After looping one million times, if Clear to Send is not
     assrted then the character is sent in any case.  Thus the kernel
     cannot be used on multidrop <acronym>RS-232</acronym> lines.  The
     character should be dropped instead.</para>
     -->
     <para>
     百万回のループ後、&quot;Clear to Send&quot; がアサートされていなければ、
     とにかく文字を送出します。よって、
     マルチドロップの <acronym>RS-232</acronym> ラインでは、
     このカーネルは使えません。
     それどころか、文字落ちが起こるでしょう。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>The character is sent even if Data Carrier Detect is not
     asserted.  Thus the attached modem may be in command mode.  This
     results in a security flaw if an attacker can get arbitrary text
     placed in a console messages.  As many console messages contain
     error text derived from user events, it would not be too
     difficult to place <command>AT&amp;F</command> in a console
     message and unprogram the modem's auto-answer
     configuration.</para>
     -->
     <para>
     &quot;Data Carrier Detect&quot; がアサートされていなくても、
     文字は送出されます。
     ですから、接続されているモデムはコマンドモードになるかも知れません。
     もし任意のテキストをコンソールメッセージ中に入れることができれば、
     このことがセキュリティ上の欠陥になってしまいます。
     多くのコンソールメッセージには、
     ユーザーイベントから派生したエラーテキストが入っていますから、
     コンソールメッセージ中に
     <command>AT&amp;F</command>
     を入れて、モデムの自動応答設定を外すのは、そう難しいことではないでしょう。
     </para>
    </listitem>
   </itemizedlist>

   <!--
   <para>As a result of these bugs this <citetitle>HOWTO</citetitle>
   no longer recommends the use of kernel-level flow control.  The
   author has a kernel patch which fixes all current-reported bugs and
   is attempting to get that patch integrated into the mainline
   kernel.  Once the kernel bugs are corrected this
   <citetitle>HOWTO</citetitle> will once again recommend kernel-level
   flow control.</para>
   -->
   <para>
   こういうバグがあるので、この <citetitle>HOWTO</citetitle> では、
   カーネルレベルのフロー制御は、もうお奨めしません。
   筆者は、現在報告されているバグすべてを修復するパッチを持っており、
   カーネル本体にこのパッチを取り込んでもらおうとしています。
   カーネルのこのバグが修正されてしまえば、
   この <citetitle>HOWTO</citetitle> では、
   再度カーネルレベルのフロー制御をお奨めしたいと思います。
   </para>

  </section> <!-- bugs-kernelp -->

  <section id="bugs-rhl71">
  <!--
   <title><productname>Red Hat <systemitem
   class="osname">Linux</systemitem></productname>
   <productnumber>7.1</productnumber> and SysVinit</title>
   -->
   <title>
   <productname>Red Hat <systemitem 
   class="osname">Linux</systemitem></productname>
   <productnumber>7.1</productnumber> と SysVinit
   </title>

   <!--
   <para>The System V <application>init</application> system shipped
   with <productname>Red Hat Linux</productname>
   <productnumber>7.1</productnumber> does not support serial console
   correctly in single user mode.  See Red Hat advisory
   <citetitle><acronym>RHBA-2001:085-02</acronym> <ulink
   url="http://www.redhat.com/support/errata/RHBA-2001-085.html"><citetitle>New
   SysVinit package to fix hangs on serial
   console</citetitle></ulink></citetitle>.  The advisory announces an
   update to the package
   <filename>SysVinit-2.78-15.i386.rpm</filename> that is shipped on
   the <productname>Red Hat Linux</productname>
   <productnumber>7.1</productnumber> <acronym>CD</acronym>.</para>
   -->
   <para>
   <productname>Red Hat Linux</productname>
   <productnumber>7.1</productnumber>
   で出荷している System V の 
   <application>init</application> システムは、
   現時点ではシングルユーザーモードのシリアルコンソールを、
   正しくサポートしていません。
   これについては、Red Hat の勧告
   <citetitle><acronym>RHBA-2001:085-02</acronym>
   <ulink url="http://www.redhat.com/support/errata/RHBA-2001-085.html">
   <citetitle>New SysVinit package to fix hangs on serial console</citetitle>
   </ulink></citetitle>

   <footnote><para>
   訳注：シリアルコンソールのハングアップを修復する、
   新しい SysVinit パッケージ
   </para></footnote>

   を参照して下さい。この勧告で公表しているのは、
   <productname>Red Hat Linux</productname>
   <productnumber>7.1</productnumber> <acronym>CD</acronym> で出荷
   している、<filename>SysVinit-2.78-15.i386.rpm</filename> パッケージ
   のアップデートです。
   </para>

  </section> <!-- bugs-rhl71 -->


  <section id="bugs-video">
  <!--
   <title><acronym>BIOS</acronym>s, keyboards and video cards</title>
   -->
   <title><acronym>BIOS</acronym>、 キーボード、そしてビデオカード</title>
  
  <!--
   <para>Some <acronym>BIOS</acronym>s will not boot if the keyboard is
   not installed.</para>
   -->
   <para>
   <acronym>BIOS</acronym> によっては、
   キーボードが接続されていないとブートしないものがあります。
   </para>

    <informalfigure id="bugs-video-keyboard">
<screen format="linespecific">
<computeroutput>Keyboard faulty, press F1</computeroutput></screen>
    </informalfigure>

    <!--
   <para>Most <acronym>BIOS</acronym>s have settings that will allow
   them to boot without a keybaord.</para>
   -->
   <para>
   しかしほとんどの <acronym>BIOS</acronym> には、
   キーボードを付けなくてもブートできるようにする設定があります。
   </para>

   <!--
   <para>Some odd <acronym>BIOS</acronym>s will not boot if no video
   card is installed.</para>
   -->
   <para>
   ビデオカードをインストールしてないとブートしない、奇妙な
   <acronym>BIOS</acronym> もあります。
   </para>

  </section> <!-- bugs-video -->


  <section id="bugs-reboot">
  <!--
   <title>Modem hangs up upon reboot</title>
   -->
   <title>リブートでモデムがハングアップする</title>

   <!--
   <para>During reboot the serial controller is reset.  This drops the
   modem control line Data Terminal Ready.  This in turn instructs the
   modem to hang up.</para>
   -->
   <para>
   リブート中に、シリアルコントローラーはリセットされますから、
   モデムの制御ライン &quot;Data Terminal Ready&quot; は落ちます。
   すると今度はこれが原因になって、モデムがハングアップしてしまいます。
   </para>

   <!--
   <para>Avoid the temptation to configure the modem to ignore
   <acronym>DTR</acronym>.  This leads to a worse bug, where the
   telephone line does not clear down correctly, the modem is engaged,
   and there is no way to clear it.  Ignoring <acronym>DTR</acronym>
   also gives no way to clear hostile callers from the line.</para>
   -->
   <para>
   だからといって誘惑に駆られて、
   <acronym>DTR</acronym>
   を無視するようなモデムの設定にはしないでください。
   そうしてしまうと、このバグはもっと始末が悪くなってしまいます。
   こうなると、電話は正しく切れなくなるし、モデムは動いたままになり、
   クリアする方法はなくなります。 <acronym>DTR</acronym> を無視すると、
   悪意のある人が電話をかけてきても、クリアする方法も無くなります。
   </para>

   <!--
   <para>You may wish to record the amount of time that the computer
   takes from <computeroutput>Restarting system</computeroutput> to
   the boot loader prompt.</para>
   -->
   <para>
   コンピュータが
   <computeroutput>Restarting system</computeroutput>
   というメッセージを出してから、
   ブートローダーのプロンプトを出すまでに要する、
   総時間を記録したいこともあるでしょう。
   </para>

   <!--
   <para>The modem may also hang up during the boot process (as the
   serial chip is reset) or when the <application>init</application>
   run level is changed (as <application>getty</application> is
   restarted).</para>
   -->
   <para>
   でも
   モデムはブートしている間に
   （シリアルチップがリセットされるので）ハングアップしますし、
   あるいは
   <application>init</application>
   のランレベルが変わる時も
   （<application>getty</application> が再起動するので）、
   ハングアップします。
   </para>

  </section>  <!-- bugs-reboot -->


  <section id="bugs-monitor">
  <!--
   <title><application>init</application> and
   <application>syslog</application> output does not display on
   secondary consoles</title>
   -->
   <title>
   <application>init</application> と 
   <application>syslog</application>
   の出力は補助コンソールには表示されない。
   </title>

   <!--
   <para>The kernel can be configured to output messages to the serial
   port and to the attached monitor.  However messages from
   <application>init</application> and
   <application>syslog</application> only appear on the last-listed
   console device, in our case the serial port.</para>
   -->
   <para>
   カーネルのメッセージをシリアルポートと、
   つながっているモニターの両方へ出力するように、
   カーネルを設定するのは可能です。しかし、
   <application>init</application> と 
   <application>syslog</application> のメッセージは、
   一番最後にリストしたコンソールデバイス、
   本文書の例だとシリアルポート、にしか現れません。
   </para>

   <!--
   <para>This can confuse someone looking at the attached monitor, as
   the messages on the monitor suggest that the machine has hung just
   before starting <application>init</application>.  Eventually the
   machine will finish booting and <application>getty</application>
   will display a <prompt>login:</prompt> request.  A Post-it Note on
   the monitor may reassure the impatient.</para>
   -->
   <para>
   このため、つながっているモニターを見ている人は、
   混乱する可能性があります。
   というのは、モニター上のメッセージが止まってしまうので、
   <application>init</application>
   の起動直前にマシンがハングアップしたように思えるからです。
   でも結局はブート処理は終了して、
   <application>getty</application> が
   <prompt>login:</prompt> 要求を表示します。
   ポストイットにその旨を書いてモニターに貼っておけば、
   せっかちな人たちも安心するかもしれません。
   </para>

  </section> <!-- bugs-monitor -->


  <section id="bugs-whereami">
  <!--
   <title>The console is unresponsive after connecting</title>
   -->
   <title>接続してもコンソールが応答しない</title>

   <!--
   <para>The terminal's screen may be blank after connecting to the
   machine.  Pressing <keycap>Enter</keycap> will usually bring up a
   <prompt>login:</prompt> request.</para>
   -->
   <para>
   マシンに接続後、端末の画面はまっさらかもしれません。でも
   <keycap>Enter</keycap> を押せば、
   普通は <prompt>login:</prompt> 要求が上がってきます。
   </para>

   <!--
   <para>If no characters appear upon the screen after pressing
   <keycap>Enter</keycap> do not panic.  The machine must have power
   and the operating system must have booted: for our call to be
   answered by the modem Data Terminal Ready must be active.</para>
   -->
   <para>
   <keycap>Enter</keycap> を押した後、画面に何も文字が出てこなくても、
   うろたえないでください。
   マシンの電源は入っているはずだし、
   オペレーティングシステムはブートしたはずです。
   モデムが呼び出しに答えるには、
   &quot;Data Terminal Ready&quot; が上がらなければなりません。
   </para>

   <!--
   <para>The most likely thing is that the machine booted and is
   running a <command>fsck</command> filesystem check.  These checks
   can take some considerable time, all with no or very little
   output.</para>
   -->
   <para>
   一番ありそうなのは、マシンがブートして、
   <command>fsck</command>
   というファイルシステムチェックが動いている場合です。
   このチェックには相当な時間がかかる場合があり、
   その間の出力は何もないか、あってもほんの少しです。
   </para>

   <!--
   <para>It will help your peace of mind considerably to record in the
   system log book the time <command>fsck</command> takes to check
   each filesystem.</para>
   -->
   <para>
   システムログの帳簿に、
   <command>fsck</command>
   が各ファイルシステムをチェックするのに要する時間を記録しておけば、
   心の平安を保つのに相当役立つでしょう。
   </para>

   <!--
   <para>If you see garbled text after pressing <keycap>Enter</keycap>
   then there are mismatched bit rates or parity parameters.  Correct
   your terminal emulator's configuration.</para>
   -->
   <para>
   <keycap>Enter</keycap> の押下後テキストが乱れていたら、
   ビットレートパラメータかパリティパラメータが合っていません。
   その場合は、お使いの端末エミュレータの設定を直して下さい。
   </para>

  </section>

  <section id="bugs-setserial">
  <!--
   <title>Modem hangs up during initialization</title>
   -->
   <title>初期化中にモデムがハングアップする</title>

   <!--
   <para>Using <command>setserial</command> will reset the serial
   port.  This will hang up the modem.</para>
   -->
   <para>
   <command>setserial</command>
   を使うとシリアルポートがリセットされます。
   このためにモデムがハングアップしてしまいます。
   </para>

   <!--
   <para><command>setserial</command> is sometimes used during the
   boot process, resulting in the output seen in <xref
   linkend="bugs-setserial-init">.  Look into the file
   <filename>/etc/rc.serial</filename> and remove any references to
   the port which is being used as the serial console.</para>
   -->
   <para>
   <command>setserial</command> はブート中にときどき使われます。
   その結果、出力は、
   <xref linkend="bugs-setserial-init">
   に見られるようなものになります。
   <filename>/etc/rc.serial</filename> ファイルを調べて、
   シリアルコンソールに使っているポートを参照している部分は、
   いずれも削除してください。
   </para>

   <figure id="bugs-setserial-init">
   <!--
    <title><command>setserial</command> causes a modem to hang up as
    the machine initializes</title>
    -->
    <title>
    マシンの初期化中、<command>setserial</command>
    はモデムをハングアップさせる原因になる
    </title>
<screen format="linespecific">
<computeroutput>&hellip;
Mounting local filesystems:  [  OK  ]
Turning on user and group quotas for local filesystems:  [  OK  ]
Enabling swap space:  [  OK  ]
/dev/ttyS0 at 0x03f8 (irq = 4) is a 16550A

NO CARRIER</computeroutput></screen>
   </figure>

  </section>  <!-- bugs-setserial -->


  <section id="bugs-bootloaderflow">
  <!--
   <title>Boot loader has no flow control</title>
   -->
   <title>ブートローダーにはフロー制御がない</title>

   <!--
   <para>Most boot loaders do not support
   <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control.  This can
   cause some data loss where large speed mis-matches exist, as is
   often the case with a modern modem connected into a
   9600<abbrev>bps</abbrev> fixed-speed port.</para>
   -->
   <para>
   ほとんどのブートローダーでは、 
   <acronym>CTS</acronym>/<acronym>RTS</acronym>
   フロー制御をサポートしていません。
   これがデータ喪失の原因になることがあり、
   そこには大きな速度の不整合が存在します。
   9600<abbrev>bps</abbrev>
   の固定速度ポートに接続している、最新のモデムにはよくあることです。
   </para>

   <!--
   <para><application>SYSLINUX</application> 1.66 supports flow
   control.</para>
   -->
   <para>
   <application>SYSLINUX</application> の 1.66 はフロー制御を
   サポートしています。
   </para>

  </section> <!-- bugs-bootloaderflow -->


  <section id="bugs-bootloadernoise">
  <!--
   <title>Boot loaders are vulnerable to line noise</title>
   -->
   <title>ブートローダーはラインノイズに弱い</title>

   <!--
   <para>Most boot loaders will sit at their prompt forever after
   receiving a single character of line noise.</para>
   -->
   <para>
   ほとんどのブートローダーは、
   ラインノイズから出た文字を一つでも受け取ると、
   永久にそのプロンプトが出たままになります。
   </para>

   <!--
   <para>Some modems will let the <acronym>RS-232</acronym> signals
   "float", sending noise when there is no caller.  Because the modem
   is not asserting Data Carrier Detect it expects the receiver to
   discard the noise characters.</para>
   -->
   <para>
   モデムによっては <acronym>RS-232</acronym> の信号を、
   わざと &quot;フロート&quot;状態にしておくものがあり、
   着信がないときはノイズを送っています。
   モデムは &quot;Data Carrier Detect&quot; をアサートしていないので、
   ノイズによる文字は受信側で破棄してほしい、と思っているのです。
   </para>

   <!--
   <para>The combination of an unfortunate boot loader with an
   unfortunate modem can result in a machine that will regularly hang
   during booting.</para>
   -->
   <para>
   まずいブートローダーとまずいモデムを組み合わせると、
   ブート中にいつもマシンがハングアップする、
   という結果になる場合があります。
   </para>

   <!--
   <para>If you cannot configure your boot loader to obey
   <acronym>DCD</acronym> then be careful to test any modem you intend
   to purchase to ensure that it does not generate characters when
   their is no caller.  At the present only
   <application>SYSLINUX</application> implements full
   <acronym>RS-232</acronym> status signals.</para>
   -->
   <para>
   お使いのブートローダーが <acronym>DCD</acronym>
   に従うように設定できない場合は、
   購入しようと思っているモデムはどれも試験するよう注意して、
   着信がない時に文字を生成しないことを確認してください。
   現時点では、
   <acronym>RS-232</acronym> のステータス信号を完全に実装しているのは、
   <application>SYSLINUX</application> だけです。
   </para>

  </section> <!-- bugs-bootloadernoise -->


  <section id="bugs-apm">
   <title><productname>Advanced Power Management</productname></title>

   <!--
   <para><acronym>APM</acronym> allows control of the power from
   software.  This can be a blessing and a curse.</para>
   -->
   <para>
   <acronym>APM</acronym>
   はソフトウェアで電源の管理をできるようにするものです。
   これは天の恵みでもあり、呪いにもなります。
   </para>

   <!--
   <para>The blessing is that the machine can be cleanly and totally
   shut down remotely.  You may want to do this if the remote site is
   maintaining their power supply.</para>
   -->
   <para>
   天の恵みなのは、マシンが遠隔操作で、きれいに、
   そして最後までシャットダウンできるからです。
   その遠隔サイトが電源設備を保守している場合は、
   こうするのが良いかも知れません。
   </para>

   <!--
   <para>The curse is that once powered down the machine will not
   start up again until the <keycap>Power</keycap> button is
   physically pressed.  Some machines have a <acronym>BIOS</acronym> or
   motherboard setting to defeat this unhelpful behaviour.</para>
   -->
   <para>
   これが呪いだというのは、いったん電源を落とすと、物理的に
   <keycap>電源</keycap> ボタンを押さない限り、
   二度とそのマシンが起動しないからです。
   マシンによっては <acronym>BIOS</acronym> や、
   あるいはマザーボードの設定で、この役に立たない動作を無効にできます。
   </para>

   <caution id="caution-shutdown">
   <!--
    <title>Errors when typing <command>shutdown</command> are worse
    with <acronym>APM</acronym></title>
    -->
    <title>
    <command>shutdown</command> コマンドのタイプミスは
    <acronym>APM</acronym> よりも始末が悪い
    </title>

    <!--
    <para>Be careful not to confuse <command>shutdown -r
    now</command>, which cleanly reboots the machine, with
    <command>shutdown -h now</command>, which cleanly powers down the
    machine.  Someone will need to physically press the
    <keycap>Power</keycap> button if you choose wrongly.</para>
    -->
    <para>
    <command>shutdown -r now</command> と 
    <command>shutdown -h now</command> を混同しないよう注意してください。
    前者はマシンをきれいにリブートしますが、後者はそのマシンの電源を
    きれいに落とします。下手をすると、誰かが
    <keycap>電源</keycap> ボタンを、物理的に押すはめになります。
    </para>
   </caution>

   <!--
   <para>If you are serious about remote site computing then you
   should investigate remote power switches from companies like <ulink
   url="http://www.wti.com/">Western Telematic</ulink>, <ulink
   url="http://www.servertech.com/">Server Technology</ulink> and many
   others.  Some models include built-in terminal servers, built-in
   modems and <acronym>RS-232</acronym> lines to simulate a
   <acronym>UPS</acronym> input power failure (and thus shut the
   <systemitem class="osname">Linux</systemitem> system down cleanly
   before removing power).</para>
   -->
   <para>
   リモートサイトのコンピュータ環境構築に、本気で取り組んでいるのなら、
   <ulink url="http://www.wti.com/">Western Telematic</ulink> や
   <ulink url="http://www.servertech.com/">Server Technology</ulink>、
   それに他の多くの会社から出ている、
   リモートの電源スイッチを調査する方がいいでしょう。
   モデルによってはターミナルサーバーを組み込んでいたり、
   モデムや <acronym>RS-232</acronym> ラインを組み込んでいて、
   <acronym>UPS</acronym> への入力電源の故障をシミュレートする
   （したがって、電源が切れる前に 
   <systemitem class="osname">Linux</systemitem>
   システムをきれいにシャットダウンする）ようになっています。
   </para>

  </section> <!-- bugs-apm -->

  <section id="bugs-international">
  <!--
   <title>Modems and overseas telecommunications requirements</title>
   -->
   <title>モデムと国際電話の必要条件</title>

   <!--
   <para>There is no world-wide approval processes to certify that a
   modem is suitable for connection to the telephone network.  This is
   despite the presence of a common set of technical standards that
   modems must meet for use on the global switched telephone network.
   There is little or no recognition of one nation's approvals by
   other national regulators.</para>
   -->
   <para>
   モデムが電話ネットワークに接続するのに適していると証明するような、
   国際的な承認手順はありません。技術的な共通規格が揃っており、
   モデムを世界規模の電話の交換ネットワーク上で使用する際は、
   その規格を満たさなければならないのですが、
   その存在を無視しているのです。ですから、
   ある国で承認したことが他の国の標準で認知されるということはほとんど、
   あるいはまったくありません。
   </para>

   <!--
   <para>There are national technical requirements concerning the use
   of modems. Common requirements are to set the modem and its
   software to answer after the second ring and never to dial the same
   engaged or faulty number more than five times in a row.</para>
   -->
   <para>
   モデムを使う上で必要となる国内の技術要件はあります。
   共通の必要条件は、
   2回目の呼出音の後で応答するように、
   モデムとそのソフトウェアを設定することと、
   同じ話中の番号あるいは間違っている番号に、
   連続 6 回以上はかけないことです。
   </para>

   <warning id="warning-approval">
   <!--
    <title>Telecommunications device approvals</title>
    -->
    <title>通信用機器の承認</title>

    <!--
    <para>Using or importing unapproved telecommications equipment is
    a criminal offense in most countries.</para>
    -->
    <para>
    ほとんどの国では、
    未承認の通信装置を使用したりあるいは輸入したりするのは犯罪になります。
    </para>

    <!--
    <para>Additionally, the operator of some types of equipment may
    require certification.</para>
    -->
    <para>
    さらに、ある種の装置を操作するには認可が必要になる場合があります。
    </para>
   </warning>

   <!--
   <para>Privacy laws may control what can be done with calling line
   identification records.</para>
   -->
   <para>
   プライバシーに関する法律によって、
   発信者識別記録でできることが規制されているかもしれません。
   </para>

   <!--
   <para>Do not assume that Touch Tone dialling is globally available.
   There is no common standard for decadic dialling: some countries
   have the longest sequence for zero, other countries have the
   shortest sequence for zero.</para>
   -->
   <para>
   プッシュホンの電話が世界中どこでも使えると決めてかかってはいけません。
   十進法に基づいたダイヤルに関しては、共通の標準が無いのです。
   ゼロの列が一番長い国々もあれば、ゼロの列が一番短い国々もあります。
   </para>

   <!--
   <para>There is little coordination of national numbering plans.  Be
   careful not to call a national emergency services number when
   intending to dial the international access code.  Common emergency
   services numbers are: 112, 911, 000.  International access codes
   vary by country.</para>
   -->
   <para>
   国内の電話番号プランには、国際的な協調があまりありません。
   国際識別番号をダイヤルするつもりで、
   国内の緊急サービス番号に電話しないよう注意して下さい。
   一般的な緊急サービス番号は、112, 911, 000 ですが、
   国際識別番号は国によって違います。
   </para>

   <!--
   <para>Intelligent network features such as toll-free numbers are
   usually not available to calls originating from abroad.</para>
   -->
   <para>
   無料電話のようなインテリジェントネットワークの機能は、
   国外から発信する電話では普通は利用できません。
   </para>

   <!--
   <para>International calls may be routed through fiber optical
   submarine cable, satelite or High Frequency radio.  The possible
   bit rates vary considerably between these options.  Expect the
   maximum throughput with no errors from fiber optical submarine
   cable.  Expect 1200<abbrev>bps</abbrev> to
   2400<abbrev>bps</abbrev> with some errors from satelite.  Expect
   75<abbrev>bps</abbrev> to 300<abbrev>bps</abbrev> with many
   errors from <acronym>HF</acronym> radio.</para>
   -->
   <para>
   国際電話は海底光ケーブルや衛星通信、
   あるいは短波無線を通ってくることがあります。
   このような伝送方式では、使用可能なビットレートにかなり違いがあります。
   海底光ケーブルだとエラーがなく、スループットも最大になると思って下さい。
   衛星通信だと 1200<abbrev>bps</abbrev> から
   2400<abbrev>bps</abbrev> までで、エラーもいくらかあるでしょう。
   <acronym>HF</acronym> 無線だと
   75<abbrev>bps</abbrev> から 300<abbrev>bps</abbrev> までで、
   エラーも多くなります。
   </para>

   <!--
   <para>There will be considerable latency depending upon the
   distance.  If the latency becomes greater than the modem's error
   correction window then you will get better
   <productname>Zmodem</productname> file transfer performance if you
   disable the <acronym>HDLC</acronym>-based error correction in the
   modems.</para>
   -->
   <para>
   距離によっては遅延も相当出てくるでしょう。
   モデムのエラー訂正ウィンドウよりも遅延の方が大きくなった場合、
   モデムの
   <acronym>HDLC</acronym> ベースのエラー訂正を無効にすれば、
   <productname>Zmodem</productname>
   のファイル転送性能はもっと良くなります。
   </para>

   <!--
   <para>International calls may have their signal altered
   considerably.  Traditionally, international calls are placed
   through analogue conditioning circuits to minimise echo.  This
   conditioning limits the maximum bit rate a modem can achieve,
   probably to less than 9600<abbrev>bps</abbrev>.  You may be able to program a
   <wordasword>guard tone</wordasword> to disable analogue
   conditioning, this will vary by carrier and the commands to send
   the guard tone vary by modem.</para>
   -->
   <para>
   国際電話ではその信号がかなり変わってしまうかも知れません。
   従来国際電話はエコーを最小限にするために、
   アナログのコンディショニング回路を通るようになっています。
   このコンディショニングのせいで、
   モデムで使用できるビットレートの最大値が制限されているのです。
   たぶん 9600<abbrev>bps</abbrev> 未満でしょう。
   <wordasword>ガードトーン</wordasword>
   を出すようなプログラムを作って、
   アナログのコンディショニングを無効にできるかも知れません。
   でもこれは通信会社によって様々だし、
   ガードトーンを送出するコマンドはモデムによっていろいろです。
   </para>

   <!--
   <para>On some modern international circuits, particularly those
   accessed by international calling cards, digital voice compression
   is used.  No reliable modem connection can be established over
   these digitally-compressed circuits.  The best current tactic for
   identifying these digitally compressed circuits is to listen to the
   background noise &mdash; when no-one is speaking the real
   background noise will be replaced by a synthesized background noise
   (a compression technique called <wordasword>silence
   suppression</wordasword>).</para>
   -->
   <para>
   最近の国際回線、特に国際コーリングカードでアクセスする回線では、
   デジタル音声圧縮を使っています。
   こういったデジタル圧縮している回線では、
   信頼できるモデム間接続は確立できません。
   現時点でこういったデジタル圧縮の回線を識別する一番いい戦略は、
   バックグラウンドのノイズを聴くことです。
   つまり誰も話していない時には、
   バックグラウンドノイズは合成されたバックグラウンドノイズ
   （<wordasword>サイレンスサプレッション</wordasword> という圧縮技術）
   に置き換わります。
   </para>

  </section> <!-- bugs-international -->

 </appendix> <!-- bugs -->


 <appendix id="upload">
 <!--
  <title>Uploading files from a serial console</title>
  -->
  <title>シリアルコンソールからファイルをアップロードする</title>

  <!--
  <para>There are many scenarios where the machine is dead in the
  water and you need to upload a file to correct that.  In many of
  these scenarios the only way to upload the file is via the serial
  port being used as the console.</para>
  -->
  <para>
  マシンがどうにもならなくなり、
  その復旧のためにファイルをアップロードしなければならない、
  という筋書きはたくさんあります。
  そういった筋書きのは多くは、
  コンソールに使っているシリアルポートから、
  ファイルをアップロードするのが唯一の手段です。
  </para>

  <!--
  <para>Moving files about over serial links has a long history in
  microcomputing and this section goes back in time to uncover the
  tools commonly used in the pre-Internet age of the Bulletin Board
  System.</para>
  -->
  <para>
  シリアルリンク上でファイルをあちこちに動かす方法には、
  マイクロコンピューティング技術の長い歴史があります。
  そこでこのセクションでは歴史を遡って、
  掲示版システムという&quot;先インターネット時代&quot;
  によく使ったツールのベールをはがすことにします。
  </para>


  <section id="upload-logging">
  <!--
   <title>Disable logging to console</title>
   -->
   <title>コンソールにログを取らないようにする</title>

   <!--
   <para>Before attempting to upload or download files it is a good
   idea to prevent messages from appearing on the console.  These
   messages will corrupt files moved using <command>cat</command> and
   will cause <application>Xmodem</application> and similar protocols
   to take much, much longer.</para>
   -->
   <para>
   ファイルをアップロードあるいはダウンロードしようとする前に、
   コンソール上にメッセージを表示しないようにするのがうまい考えです。
   こういったメッセージが出てると、
   <command>cat</command>
   を使って移動したファイルを壊してしまうし、
   <application>Xmodem</application> や、
   他の同様なプロトコルの通信が、かなり長時間になってしまいます。
   </para>

   <!--
   <para>Alter your system's configuration to give
   <application>klogd</application> the <literal>-c 1</literal>
   parameter, inhibiting the display of kernel messages directly to
   the console.  Kernel messages will still go to the system
   logger.</para>
   -->
   <para>
   お使いのシステムの設定を変更して、
   <application>klogd</application> に <literal>-c 1</literal>
   パラメータを付けてください。こうして、
   カーネルメッセージが直接コンソールに表示されるのを禁止します。
   それでも、カーネルメッセージはシステムのログには記録されます。
   </para>

   <figure>
   <!--
    <title>Supressing kernel messages to the console in Red Hat
    Linux</title>
    -->
    <title>
    Red Hat Linux でコンソールへのカーネルメッセージを抑止する
    </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>vi /etc/sysconfig/syslog</command></screen>
<programlisting format="linespecific">
KLOGD_OPTIONS="-2 -c 1"</programlisting>
<screen format="linespecific">
<prompt>bash#</prompt> <command>/etc/init.d/syslog restart</command></screen>
   </figure>

   <!--
   <para>Also modify the system logger's configuration not to send
   messages to the console.  Edit
   <filename>/etc/syslog.conf</filename>, altering lines sending
   output to <filename class="devicefile">/dev/console</filename>.
   Send this output to a file instead.</para>
   -->
   <para>
   それから、システムログ採取プログラムの設定を変えて、
   コンソールにメッセージを送らないようにして下さい。
   <filename>/etc/syslog.conf</filename> を編集して、
   <filename class="devicefile">/dev/console</filename>
   に出力を送っている行を変更し、
   代わりに、その出力をファイルに送るようにします。
   </para>

  </section> <!-- upload-logging -->


  <section id="upload-cat">
  <!--
   <title><acronym>ASCII</acronym> upload and <command>cat</command></title>
   -->
   <title>
   &quot;<acronym>ASCII</acronym> アップロード&quot; と <command>cat</command>
   </title>

   <!--
   <para><command>cat</command> is available on every
   <acronym>UNIX</acronym>-like system.  It copies the data received
   from the keyboard to a file.  Minicom and other terminal emulators
   have an &lsquo;<acronym>ASCII</acronym> upload&rsquo; facility that
   will send a file up the serial link as though it had been
   typed.</para>
   -->
   <para>
   <command>cat</command> はあらゆる
   <acronym>UNIX</acronym> ライクなシステムで使えます。
   このコマンドは、キーボードから受けとったデータをファイルにコピーします。
   Minicom や他の端末エミュレータには
   &lsquo;<acronym>ASCII</acronym> upload&rsquo; という機能があり、
   ファイルをキーボードから入力したものとして、シリアルリンクへ送ります。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>remote bash$</prompt> <command>cat > upload.txt</command>
</screen>

<screen format="linespecific">
<keycombo><keycap>Alt</keycap><keycap>S</keycap></keycombo> <guimenu>Upload</guimenu> <guimenuitem>ascii</guimenuitem>
<guilabel>[ascii upload - Press CTRL-C to quit]</guilabel>
</screen>

<!--
    <literallayout format="linespecific" linenumbering="unnumbered" class="normal">Wait for upload to complete&hellip;</literallayout>
-->
    <literallayout format="linespecific" linenumbering="unnumbered" class="normal">アップロードが完了するのを待ちます&hellip;</literallayout>


<screen format="linespecific">
<guilabel>ASCII upload of "upload.txt"
10.0 Kbytes transferred at 3900 CPS... Done.
READY: press any key to continue...</guilabel>
</screen>

<screen format="linespecific">
<keycombo><keycap>Ctrl</keycap><keycap>D</keycap></keycombo>
<prompt>remote bash$</prompt>
</screen>
   </informalfigure>

   <!--
   <para>Without hardware flow control <acronym>ASCII</acronym> upload
   will drop the occassional character.</para>
   -->
   <para>
   ハードウェアフロー制御をしていないと、<acronym>ASCII</acronym>
   アップロードで、
   たまに文字落ちが起こります。
   </para>

   <!--
   <para>To upload binary files encode them into
   <acronym>ASCII</acronym>, upload them, and then decode them into
   binary again.</para>
   -->
   <para>
   バイナリファイルをアップロードするには、それを <acronym>ASCII</acronym>
   にエンコードし、アップロードします。そしてそれからもう一度バイナリに
   デコードします。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>localhost bash$</prompt> <command>uuencode upload.bin &lt; upload.bin &gt; upload.txt</command>
</screen>

<screen format="linespecific">
<keycombo><keycap>Alt</keycap><keycap>S</keycap></keycombo> <guimenu>Upload</guimenu> <guimenuitem>ascii</guimenuitem>
<guilabel>[ascii upload - Press CTRL-C to quit]</guilabel>
</screen>

<!--
    <literallayout format="linespecific" linenumbering="unnumbered" class="normal">Wait for upload to complete&hellip;</literallayout>
-->
    <literallayout format="linespecific" linenumbering="unnumbered" class="normal">アップロードが完了するのを待ちます&hellip;</literallayout>

<screen format="linespecific">
<guilabel>ASCII upload of "upload.txt"
10.0 Kbytes transferred at 3900 CPS... Done.
READY: press any key to continue...</guilabel>
</screen>

<screen format="linespecific">
<keycombo><keycap>Ctrl</keycap><keycap>D</keycap></keycombo>
<prompt>remote bash$</prompt>
</screen>

<screen format="linespecific">
<prompt>remote bash$</prompt> <command>uudecode &lt; upload.txt</command>
</screen>
   </informalfigure>

   <!--
   <para>You can detect transmission errors by using a checksum
   program such as <command>sum</command>, <command>cksum</command> or
   <command>md5sum</command>.  Print the ckecksum of the file before
   it is sent from the local machine and after it is recieved upon the
   remote machine.</para>
   -->
   <para>
   転送エラーは <command>sum</command> や <command>cksum</command> 、
   あるいは <command>md5sum</command> といった、
   チェックサムプログラムを使えば検出できます。
   ローカルマシンからそのファイルを転送する前と、
   リモートマシンで受けとった後に、そのチェックサムを印刷しておきます。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>localhost bash$</prompt> <command>cksum upload.bin</command>
<computeroutput>1719761190 76 upload.bin</computeroutput>
</screen>
<screen format="linespecific">
<prompt>remote bash$</prompt> <command>cksum upload.bin</command>
<computeroutput>1719761190 76 upload.bin</computeroutput>
</screen>
   </informalfigure>

   <!--
   <para>There are a number of checksumming programs.  The
   <command>sum</command> command should be used with caution, as
   there are versions for <acronym>BSD</acronym> and
   <productname>System V <acronym>UNIX</acronym></productname> which
   give differing results.  <command>cksum</command> is the attempt by
   the <acronym>POSIX</acronym> standards developers to correct that
   mess: it gives the same result for the same file on all
   <acronym>POSIX</acronym> machines.</para>
   -->
   <para>
   チェックサムを計算するプログラムは数多くありますが、
   <command>sum</command> コマンドを使う場合は注意してください。
   というのは、<acronym>BSD</acronym> 用と
   <productname>System V <acronym>UNIX</acronym></productname>
   用に多くのバージョンがあり、それらが違う結果を出すからです。
   <command>cksum</command> は <acronym>POSIX</acronym>
   標準の開発者たちが、この混乱を収拾しようとした産物です。
   このコマンドは、すべての <acronym>POSIX</acronym>
   マシン上にある、同じファイルに対して同じ結果を返します。
   </para>

   <!--
   <para>If the checksums of the original and uploaded files do not
   match then the file will have to be uploaded again.  If the link is
   noisy and the file is big then you may never get a successful
   upload.  What is needed in this case is to divide the file into
   many small parts, upload a part, check its checksum, and if it is
   fine proceed to the next part.</para>
   -->
   <para>
   元のチェックサムと、
   アップロードしたファイルのチェックサムが一致しない場合は、
   もう一度ファイルをアップロードしなければなりません。
   リンクにノイズが多くファイルが大きい場合は、
   アップロードはけっしてうまくいかないかもしれません。
   この場合に必要なのは、ファイルを小分けにして、
   その一つをアップロードし、チェックサムを確認し、
   大丈夫なら次をアップロードするというやり方です。
   </para>

   <!--
   <para>This sounds like something that should be automated.
   Entering from stage left is <application>Xmodem</application>.</para>
   -->
   <para>
   こういうことは自動化すべきもののように思えるでしょう。
   続きは <application>Xmodem</application> から始めます。
   </para>

  </section> <!-- upload-cat -->


  <section id="upload-zmodem">
  <!--
   <title><application>Xmodem</application>,
   <application>Ymodem</application> and
   <application>Zmodem</application></title>
   -->
   <title>
   <application>Xmodem</application>,
   <application>Ymodem</application> および
   <application>Zmodem</application>
   </title>

   <!--
   <para><application>Xmodem</application> sends 128 bytes and a
   checksum, waits for a Acknowledgment to say all is well and sends
   the next block.  If a negative acknowledgement is received or if no
   <acronym>ACK</acronym> or <acronym>NAK</acronym> ever appears then
   the block is sent again.</para>
   -->
   <para>
   <application>Xmodem</application> は、
   128 バイトのデータとチェックサムを送り、
   すべて大丈夫だという通知を待ってから、
   次のブロックを送ります。もし否定的な通知が返ったり、
   <acronym>ACK</acronym> も <acronym>NAK</acronym>
   も決して返らない場合は、再度そのブロックを送ります。
   </para>

   <!--
   <para><application>Xmodem</application> is a simple protocol, as
   you would expect of a program written for 8-bit computers runing
   <systemitem class="osname">CP/M</systemitem>. It has lots of
   inefficiencies and minor problems, such as rounding up the file
   size to the next 128 byte boundary.  These deficiencies lead to an
   evolution of the protocol with revisions of
   <application>Xmodem</application>, then
   <application>Ymodem</application> and finishing with
   <application>Zmodem</application>.
   <application>Zmodem</application> is substantially faster than
   <application>Xmodem</application> and has no niggling problems.
   The <application>Zmodem</application> protocol is substantially
   more complex than the <application>Xmodem</application> protocol,
   but since we only seek to at most compile the code, that complexity
   need not concern us.</para>
   -->
   <para>
   <application>Xmodem</application> は、
   <systemitem class="osname">CP/M</systemitem>
   を動かしている 8 ビットコンピュータ用に書かれたプログラム程度の、
   単純なプロトコルです。
   このプログラムには効率が悪い部分が数多くあるし、
   小さな問題点もたくさんあります。
   例えば、ファイルサイズを次の 128 バイト境界に切り上げてしまいます。
   これらの欠点から進化した結果が、
   <application>Xmodem</application> の改訂プロトコル、それから
   <application>Ymodem</application>、そして最後が
   <application>Zmodem</application> です。
   <application>Zmodem</application> は <application>Xmodem</application>
   よりも充分高速だし、些細な問題もありません。
   <application>Zmodem</application> のプロトコルは 
   <application>Xmodem</application> のプロトコルよりもずっと複雑ですが、
   自分でするのは、
   せいぜいコードをコンパイルしてインストールすることだけですから、
   その複雑さに関わりあう必要はありません。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>remote bash$</prompt> <command>rz</command>
<computeroutput>... waiting to receive.**B0100000023be50</computeroutput>
</screen>

<screen format="linespecific">
<keycombo><keycap>Alt</keycap><keycap>S</keycap></keycombo> <guimenu>Upload</guimenu> <guimenuitem>zmodem</guimenuitem>
<guilabel>[zmodem upload - Press CTRL-C to quit]
Sending: upload.bin
Bytes Sent:   3072/  10000   BPS:2185     ETA 00:09</guilabel>
</screen>
   </informalfigure>

   <!--
   <para>If an upload fails and you are left with
   <command>rz</command> waiting to recieve a file then typing
   <keycombo><keycap>Ctrl</keycap><keycap>X</keycap></keycombo> a
   number of times will return you to the command prompt.  This also
   works for <application>Xmodem</application>'s <command>rx</command>
   and <application>Ymodem</application>'s
   <command>ry</command>.</para>
   -->
   <para>
   アップロードが失敗して <command>rz</command>
   がファイルの受信待ちのままになっている場合は、何回か
   <keycombo><keycap>Ctrl</keycap><keycap>X</keycap></keycombo>
   をタイプすればコマンドプロンプトに戻ります。この方法は、
   <application>Xmodem</application> の <command>rx</command>
   や <application>Ymodem</application> の
   <command>ry</command> でも動作します。
   </para>

   <!--
   <para>A useful <application>Zmodem</application> capability is the
   ability to resume failed uploads and to send multiple files in a
   single upload session.</para>
   -->
   <para>
   <application>Zmodem</application> で役に立つ機能といえば、
   アップロードに失敗しても復旧できることと、
   一回のアップロードのセッションで、複数のファイルを送れることです。
   </para>

   <!--
   <para>An implementation of <application>Xmodem</application>,
   <application>Ymodem</application> and
   <application>Zmodem</application> for <acronym>POSIX</acronym>
   computers is available from <ulink
   url="http://www.ohse.de/uwe/software/lrzsz.html">http://www.ohse.de/uwe/software/lrzsz.html</ulink>.
   <productname>Red Hat Linux</productname> distribute this in the
   <filename>lrzsz</filename> <acronym>RPM</acronym> package.
   <application>lrzsz</application> is a enhanced free software branch
   of the public domain version of <ulink
   url="ftp://ftp.cs.pdx.edu/pub/zmodem/rzsz.zip"><application>rzsz</application></ulink>
   from <ulink url="http://www.omen.com/">Omen
   Technology</ulink>.</para>
   -->
   <para>
   <application>Xmodem</application> や
   <application>Ymodem</application>、そして
   <application>Zmodem</application> を <acronym>POSIX</acronym>
   用に実装したものは、
   <ulink url="http://www.ohse.de/uwe/software/lrzsz.html">
   http://www.ohse.de/uwe/software/lrzsz.html</ulink> にあります。
   <productname>Red Hat Linux</productname> は
   <filename>lrzsz</filename> <acronym>RPM</acronym>
   パッケージの形でこれを配布しています。
   <application>lrzsz</application> は、
   <ulink url="http://www.omen.com/">Omen Technology</ulink> が出している、
   <ulink url="ftp://ftp.cs.pdx.edu/pub/zmodem/rzsz.zip">
   <application>rzsz</application></ulink> というパブリックドメイン版から
   派生している、機能拡張したフリーソフトウェアです。
   </para>

  </section> <!-- upload-zmodem -->


  <section id="upload-kermit">
   <title><application>Kermit</application></title>

   <!--
   <para><ulink
   url="http://www.kermit-project.org/"><application>Kermit</application></ulink>
   is a terminal emulator and file transfer program delevoped by
   <ulink url="http://www.columbia.edu/">Columbia University</ulink>.
   It's popularity springs from the large range of computers that
   <application>Kermit</application> could be used to access, from
   <acronym>IBM</acronym> mainframes to
   <productname><acronym>MS-DOS</acronym></productname>
   <acronym>PC</acronym>s.</para>
   -->
   <para>
   <ulink url="http://www.kermit-project.org/">
   <application>Kermit</application></ulink> というのは、
   <ulink url="http://www.columbia.edu/">Columbia University</ulink>
   が開発した、端末エミュレータ兼ファイル転送プログラムです。
   その人気の元は、<application>Kermit</application> を使えば、
   <acronym>IBM</acronym> のメインフレームから 
   <productname><acronym>MS-DOS</acronym></productname>
   <acronym>PC</acronym> に至る、
   幅広いコンピュータにアクセス可能だという点にあります。
   </para>

   <!--
   <para>A <application>Kermit</application> variant named <ulink
   url="http://www.columbia.edu/kermit/gkermit.html"><application>G-Kermit</application></ulink>
   was released under the <citetitle>GNU Public License</citetitle>.
   This is available in most <productname>Linux</productname>
   distributions.</para>
   -->
   <para>
   <application>Kermit</application> を若干変えたものが 
   <ulink url="http://www.columbia.edu/kermit/gkermit.html">
   <application>G-Kermit</application></ulink> という名前で、
   <citetitle>GNU Public License</citetitle> の下でリリースされました。
   これはたいていの <productname>Linux</productname> 
   ディストリビューションで使用できます。
   </para>

   <!--
   <para>The recent <application>Kermit</application> and
   <application>Zmodem</application> protocols are built upon the same
   technologies.  <application>Zmodem</application> has better
   performance in calls with high error rates.
   <application>Kermit</application> has been ported to more host
   platforms.</para>
   -->
   <para>
   最近の <application>Kermit</application> と
   <application>Zmodem</application>
   のプロトコルの技術基盤は同じ物です。
   しかし <application>Zmodem</application>
   はエラー率が高いにも関わらず、
   呼び出す時の性能は良くなっています。
   一方、移植されてきたホストプラットフォームは
   <application>Kermit</application> の方が多くなっています。
   </para>

  </section> <!-- upload-kermit -->

 </appendix>


 <appendix id="rhl">
 <!--
  <title>Upgrading <productname>Red Hat Linux</productname> from a
  serial console</title>
  -->
  <title>
  <productname>Red Hat Linux</productname>
  をシリアルコンソールからアップグレードする
  </title>

  <!--
  <para>Upgrades to Linux distributions are frequently released.  A
  machine is not remotely manageable unless these upgrades can be
  installed without needing to physically touch the machine.</para>
  -->
  <para>
  Linux ディストリビューションのアップグレード版は、
  頻繁にリリースされています。
  しかしマシンに直接触れないと、
  これらのアップグレード版のインストールができないようなら、
  遠隔管理は無理です。
  </para>

  <!--
  <para>This section examines the remote installation and remote
  upgrade of <productname>Red Hat Linux</productname>.</para>
  -->
  <para>
  このセクションでは、<productname>Red Hat Linux</productname>
  を遠隔地からインストールしたりアップグレードする方法を検証します。
  </para>

  <!--
  <para><productname>Red Hat Linux</productname> can be installed over
  the network from a <acronym>HTTP</acronym> server using an install
  diskette.  We modify this diskette to use the serial console.  If we
  can control whether to boot from this diskette or from the hard disk
  then we can remotely upgrade the Red Hat Linux distribution from the
  serial port.  If a blank diskette is placed in the drive when the
  machine is deployed then no on-site intervention is needed to
  upgrade the operating system.</para>
  -->
  <para>
  <productname>Red Hat Linux</productname>
  はインストールディスクを用いて、
  <acronym>HTTP</acronym> サーバーから、
  ネットワーク経由でインストールできます。
  このディスクを修正して、シリアルコンソールを使うようにします。
  このディスクからブートするのか、
  それともハードディスクからブートするのかが制御できれば、
  シリアルポートを使って、遠隔地から Red Hat Linux
  ディストリビューションのアップグレードができます。
  マシンを配置する際、
  空のフロッピーディスクをフロッピードライブに挿入しておけば、
  オペレーティングシステムのアップグレードに、
  オンサイトの介入は不要になります。
  </para>

  <!--
  <para>If you have upgrade procedures for other
  <systemitem class="osname">Linux</systemitem> distributions please contribute
  them to the <citetitle>HOWTO</citetitle> maintainer.</para>
  -->
  <para>
  もし他の <systemitem class="osname">Linux</systemitem> 
  ディストリビューション をアップグレードする手順をご存知なら、
  是非この <citetitle>HOWTO</citetitle> の保守担当者にいただければと思います。
  </para>


  <section id="rhl-selectboot">
  <!--
   <title>Select boot disk</title>
   -->
   <title>ブートディスクを選ぶ</title>

   <!--
   <para>The key to a remote upgrade is to be able to boot from floppy
   disk to perform the upgrade, and then to reboot from the hard disk.
   The possibilities are:</para>
   -->
   <para>
   遠隔地からアップグレードする際の関門は、
   アップグレードを実行するためにフロッピーディスクからブートできることと、
   その後ハードディスクからリブートできることです。
   可能性としては次のようなものがあります。
   </para>

   <orderedlist>
    <listitem>
    <!--
     <para>Most <acronym>BIOSs</acronym> allow the boot disk order to be
     controlled through the <acronym>BIOS</acronym>' configuration.  If
     the <acronym>BIOS</acronym> supports a serial console then the
     machine can be upgraded whilst leaving the floppy disk in the
     drive.  No one need attend the site to upgrade the operating
     system</para>
     -->
     <para>
     たいていの <acronym>BIOS</acronym> では、
     設定でブートディスクの順序が制御できるようになっています。
     その <acronym>BIOS</acronym>
     がシリアルコンソールをサポートしていれば、
     フロッピーディスクをフロッピードライブに残したまま、
     そのマシンをアップグレードできます。
     そうすれば、そのオペレーティングシステムをアップグレードするために、
     マシン本体に誰かが付添う必要はなくなります。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Someone can insert a floppy disk before the upgrade and
     remove it afterwards.  Most co-location sites will provide this
     level of &lsquo;board-swap&rsquo; technical support.</para>
     -->
     <para>
     アップグレード前後で、
     誰かがフロッピーディスクの挿入と取り出しをしてもかまいません。
     場所借りしているサイトはほとんど、
     この程度の &lsquo;媒体交換&rsquo; 用技術サポートは用意しています。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Two records of the CMOS memory which stores the
     <acronym>BIOS</acronym> configuration can be made: one for booting
     from floppy and another for booting from hard disk.
     Unfortunately the nvram device driver does not yet work on a wide
     enough variety of machines for this HOWTO to pursue this option
     further.</para>
     -->
     <para>
     <acronym>BIOS</acronym> の設定を格納する CMOS メモリで、
     レコードを二つ作ることが可能です。
     一つはフロッピーからのブートに使い、
     もう一つはハードディスクからのブートに使います。
     しかしあいにく nvram デバイス は、
     それほど多種多様なマシンで動作するわけではないので、
     このHOWTOではこの方法にはこれ以上深入りしません。
     </para>
    </listitem>

   </orderedlist>

  </section> <!-- rhl-selectboot -->


  <section id="rhl-biosserial">
  <!--
   <title>Configure the <acronym>BIOS</acronym> to use the serial
   port</title>
   -->
   <title>
   シリアルポートを使うように
   <acronym>BIOS</acronym> を設定する。
   </title>

   <!--
   <para>Many servers allow the <acronym>BIOS</acronym> to be configured
   from the serial port, especially on systems designed for rack
   mounting.  At the moment few machines designed to be used as
   desktop systems allow the <acronym>BIOS</acronym> to be accessed from
   the serial port.</para>
   -->
   <para>
   サーバーの多くは、シリアルポートから <acronym>BIOS</acronym>
   が設定できるようになっています。
   特にラックマウント用に設計されたシステムではそうなっています。
   しかし今のところ、
   デスクトップシステム向けに設計されたマシンで、
   シリアルポートから <acronym>BIOS</acronym>
   がアクセスできるようになっているものはほとんどありません。
   </para>

   <!--
   <para>Refer to your vendor's documentation to set the
   <acronym>BIOS</acronym> to use the serial port.  Some vendors call
   this feature &lsquo;console redirection&rsquo;.  Unfortunately, the
   meaning of this term varies by vendor.  Some vendors use it to mean
   the redirection of the <acronym>VGA</acronym> output and keyboard
   to a remote <acronym>PC</acronym> using a proprietary serial
   protocol.  This feature can only be used in conjunction with the
   <systemitem class="osname">Linux</systemitem> serial console if the
   <acronym>BIOS</acronym> can be instructed to disable the serial
   redirection after booting.</para>
   -->
   <para>
   ベンダーのドキュメントを参照して、
   シリアルポートが使えるように
   <acronym>BIOS</acronym> を設定して下さい。この機能を
   &lsquo;コンソールリダイレクション&rsquo;
   と呼んでいるベンダーもあります。
   あいにく、この用語の意味はベンダーによって様々です。
   <acronym>VGA</acronym> の出力とキーボードを、
   専用のシリアルプロトコルを使ってリモートの
   <acronym>PC</acronym> にリダイレクトする、
   という意味でこの用語を使っているベンダーもあります。
   ブートした後、<acronym>BIOS</acronym> に、
   シリアルリダイレクションを無効にするよう指示する場合があるなら、
   この機能は <systemitem class="osname">Linux</systemitem>
   のシリアルコンソールでしか使えません。
   </para>

   <!--
   <para>As an example of the confusion, Dell uses &lsquo;console
   redirection&rsquo; when describing the <productname>Dell
   2400</productname> and the <productname>Dell 2450</productname>.
   The <productname>Dell 2450</productname> <acronym>BIOS</acronym>
   can be configured from the serial port.  The <productname>Dell
   2400</productname>'s &lsquo;console redirection&rsquo; is
   additional hardware that remotely replicates the computer's
   <acronym>VGA</acronym> monitor and keyboard.</para>
   -->
   <para>
   混乱している例ですが、Dell は
   <productname>Dell 2400</productname> と
   <productname>Dell 2450</productname>
   の説明に &lsquo;コンソールリダイレクション&rsquo; を使用しています。
   <productname>Dell 2450</productname> の
   <acronym>BIOS</acronym> はシリアルポートから設定できます。
   <productname>Dell 2400</productname> の 
   &lsquo;コンソールリダイレクション&rsquo; というのは追加ハードウェアで、
   そのコンピュータの <acronym>VGA</acronym>
   モニターとキーボードを遠隔地で複製するものです。
   </para>

   <!--
   <para>An example of a <acronym>BIOS</acronym> configuration is given
   in <xref linkend="rhl-biosserial-example">.</para>
   -->
   <para>
   <acronym>BIOS</acronym> の設定例を 
   <xref linkend="rhl-biosserial-example"> に示します。
   </para>

   <figure id="rhl-biosserial-example">
   <!--
    <title>Configuring <acronym>BIOS</acronym> to use serial link</title>
    -->
    <title>シリアルリンクを使うために <acronym>BIOS</acronym> を設定する</title>
<screen format="linespecific">
BIOS setup console redirection

Enter BIOS setup during boot when
  Keyboard:     [Ctrl+Alt+Esc pressed]
  Serial port:  ["HAL" is typed]

Serial port
  Port:         [COM1]
  Speed         [9600] bps
  Data:         [8] bits
  Parity:       [None]
  Stop:         [1] bits
  Handshaking:  [Full CTS/RTS handshaking]
  Terminal:     [Dumb]</screen>
   </figure>

   <!--
   <para>Many <acronym>BIOSs</acronym> will enter their configuration
   dialogs if a particular terminal key is pressed during the
   <acronym>BIOS</acronym> boot.  This can be a problem if the modem
   link is noisy.</para>
   -->
   <para>
   多くの <acronym>BIOS</acronym> では、
   そのブート中にある特定のキーを押すと、
   設定ダイアログに入ります。
   モデムリンクにノイズが多い場合、これが問題になることがあります。
   </para>

   <!--
   <para>For normal operation, set the boot order to attempt to boot
   from the hard disk first.</para>
   -->
   <para>
   通常の動作では、最初にハードディスクからブートするように、
   ブート順序を設定します。
   </para>

   <figure id="rhl-biosserial-bootorder">
   <!--
    <title>Configuring BIOS to boot from hard disk</title>
    -->
    <title>ハードディスクからブートするよう BIOS を設定する</title>
<screen format="linespecific">
BIOS setup boot order

First:  [Hard disk]
Second: [CD-ROM]
Third:  [Floppy disk]</screen>
   </figure>

  </section> <!-- rhl-biosserial -->


  <section id="rhl-ignoredtr">
  <!--
   <title>Configure modem to ignore <acronym>DTR</acronym> and assert
   <acronym>DCD</acronym></title>
   -->
   <title>
   <acronym>DTR</acronym> を無視して、<acronym>DCD</acronym>
   をアサートするようにモデムを設定する
   </title>

   <!--
   <para>The computer reboots a few times during the upgrade.  These
   reboots hang up the modem. Having to dial in a number of times
   during the upgrade can become annoying. Altering the modem's
   configuration to ignore Data Terminal Ready will cause the modem
   not to hang up when the computer is rebooted.  To ignore
   <acronym>DTR</acronym> send the command
   <command>AT&amp;D0</command> to the modem.</para>
   -->
   <para>
   コンピュータはアップグレード中に 2、3 回リブートします。
   このリブートのせいでモデムはハングアップしてしまいます。
   アップグレード中に何度も電話するはめになると、
   いらだたしくなるかもしれません。
   モデムの設定を変えて &quot;Data Terminal Ready&quot;
   を無視するようにすれば、コンピュータがリブートしても、
   モデムがハングアップしなくなります。
   <acronym>DTR</acronym> を無視するには、モデムに
   <command>AT&amp;D0</command> コマンドを送って下さい。
   </para>

   <!--
   <para>We may also wish to disconnect during the install to reduce
   transmission charges.  Configuring the modem to hold Data Carrier
   Detect on will prevent any disconnection and reconnection from
   being apparent to the installer.  Use the command
   <command>AT&amp;C0</command> to always hold <acronym>DCD</acronym>
   high.</para>
   -->
   <para>
   通信料金を減らすため、
   インストール中は接続を切りたいと思うことがあります。
   そういう場合はモデムの設定で、&quot;Data Carrier Detect&quot;
   をずっと上げておくようにすれば、
   切断も再接続もインストール作業の邪魔になりません。
   常に <acronym>DCD</acronym> を上げておくには、
   <command>AT&amp;C0</command> コマンドを使います。
   </para>

   <!--
   <para>Apply these changes using the procedure in <xref
   linkend="modem-hayes">, retaining all of the other
   <literal>AT</literal> commands.</para>
   -->
   <para>
   <xref linkend="modem-hayes"> にある手順を使って、
   これらの変更を適用して下さい。
   他の <literal>AT</literal> コマンドは、すべてそのままにしておきます。
   </para>

  </section> <!-- rhl-ignoredtr -->


  <section id="rhl-preparefloppy">
  <!--
   <title>Prepare a network install floppy diskette</title>
   -->
   <title>ネットワークインストール用フロッピーディスクを用意する</title>

   <!--
   <para>The <productname>Red Hat Linux</productname> web site has a
   floppy diskette image for a network installation.  For
   <productname>Red Hat Linux</productname>
   <productnumber>7.1</productnumber> the image is <ulink
   url="ftp://ftp.redhat.com/pub/redhat/linux/7.1/en/os/i386/images/bootnet.img"><filename>ftp://ftp.redhat.com/pub/redhat/linux/7.1/en/os/i386/images/bootnet.img</filename></ulink>.</para>
   -->
   <para>
   <productname>Red Hat Linux</productname> のウェブサイトには、
   ネットワークインストール用の、フロッピーディスクイメージがあります。
   <productname>Red Hat Linux</productname>
   の 
   <productnumber>7.1</productnumber> 用のイメージは、 
   <ulink url="ftp://ftp.redhat.com/pub/redhat/linux/7.1/en/os/i386/images/bootnet.img">
   <filename>ftp://ftp.redhat.com/pub/redhat/linux/7.1/en/os/i386/images/bootnet.img</filename></ulink> です。
   </para>

   <!--
   <para>Install this image on a floppy disk.</para>
   -->
   <para>フロッピーディスクに、このイメージをインストールします。</para>

   <informalfigure id="rhl-preparefloppy-image">
   <screen format="linespecific">
<prompt>bash#</prompt> <command>mkfs -t msdos -c /dev/fd0</command>
<computeroutput>mkfs.msdos 2.2 (06 Jul 1999)</computeroutput>
<prompt>bash#</prompt> <command>dd if=bootnet.img of=/dev/fd0 bs=1440k</command>
<computeroutput>1+0 records in
1+0 records out</computeroutput>
<prompt>bash#</prompt> <command>sync</command></screen>
</informalfigure>

<!--
   <para>Now mount the diskette and check that the installer files are
   present.</para>
   -->
   <para>
   次にそのディスクをマウントし、
   インストール用のファイルが存在することを確かめます。
   </para>

   <informalfigure id="rhl-preparefloppy-mount">
<screen format="linespecific">
<prompt>bash#</prompt> <command>mount -t vfat /dev/fd0 /mnt/floppy</command>
<prompt>bash#</prompt> <command>ls /mnt/floppy</command>
<computeroutput>boot.msg    general.msg  ldlinux.sys  rescue.msg    vmlinuz
expert.msg  initrd.img   param.msg    syslinux.cfg</computeroutput></screen>
   </informalfigure>

   <!--
    <para>This floppy disk uses the
    <application>SYSLINUX</application> boot loader which was
    discussed in <xref linkend="configure-boot-loader-syslinux"> and
    in <xref linkend="configure-kernel-syslinux">.  Firstly, we alter
    the boot loader configuration file
    <filename>/mnt/floppy/syslinux.cfg</filename> to use the serial
    port.  If you are going to use the <application>vi</application>
    editor to alter this file, use the <literal>-n</literal> option to
    avoid writing a swap file to the floppy disk.</para>
    -->
    <para>
    このフロッピーディスクでは、
    <application>SYSLINUX</application> 
    ブートローダーを使用します。これについては、
    <xref linkend="configure-boot-loader-syslinux">
    と
    <xref linkend="configure-kernel-syslinux">
    で説明しました。
    まず最初に、ブートローダーの設定ファイル 
    <filename>/mnt/floppy/syslinux.cfg</filename>
    を変更して、シリアルポートを使うようにします。
    <application>vi</application>
    エディタを使ってこのファイルを編集するつもりなら、
    スワップファイルをこのフロッピーディスクに書き込まないように、
    <literal>-n</literal> オプションを使って下さい。
    </para>

   <informalfigure>
<screen>
<prompt>bash#</prompt> <command>vi -n /mnt/floppy/syslinux.cfg</command></screen>
<programlisting>
serial 0 9600</programlisting>
   </informalfigure>

   <!--
    <para>Secondly we add a new boot option.  This is modeled upon the
    other boot options in the file.  Our variant passes the serial
    console parameters to the kernel, the same parameters that we pass
    during normal operation when using serial console. "serial" seems
    an appropriate name for the boot option.</para>
    -->
    <para>
    次に、新しいブートオプションを追加します。
    これは、このファイルにある、他のブートオプションを元にして作ります。
    ここでは、
    シリアルコンソールパラメータをカーネルに渡すようにします。
    このパラメータは、シリアルコンソールを使っている、
    普段の運用時に渡すパラメータと同じです。
    ですから、&quot;serial&quot; というのは、
    このブートオプションの名前に相応しいと思います。
    </para>

   <informalfigure>
<programlisting>
label serial
 kernel vmlinuz
 append initrd=initrd.img lang= text serial expert devfs=nomount console=ttyS0,9600n8</programlisting>
   </informalfigure>

   <!--
   <para><literal>text</literal>, <literal>serial</literal> and
   <literal>expert</literal> are parameters to the Red Hat
   <application>anaconda</application> installer.  Specifying
   <literal>text</literal> ensures that the graphical installer does
   not start.  Specifying <literal>serial</literal> prevents scans for
   possibly non-existent video hardware.  You will need to run
   <application>Xconfigurator</application> manually if you do have a
   video card.  Specifying <literal>expert</literal> allows all the
   configuration options to be seen, giving one floppy image that can
   be used for all purposes.</para>
   -->
   <para>
   <literal>text</literal>、<literal>serial</literal>、および
   <literal>expert</literal> は、
   Red Hat の 
   <application>anaconda</application>
   インストーラに渡すパラメータです。
   <literal>text</literal> を指定すれば、
   グラフィカルなインストーラがスタートしないことが保証されます。また、
   <literal>serial</literal> と指定すれば、
   存在しないかもしれないビデオハードウェアは、
   できる限りスキャンしないようにします。
   ですから、実際にビデオカードがあれば、
   手動で
   <application>Xconfigurator</application>
   を動かす必要があります。
   <literal>expert</literal> を指定すると、
   設定オプションのすべてが目に見えるようになります。
   この場合は、汎用のフロッピーイメージを一つ用います。
   </para>

   <!--
   <para>Thirdly, we make this new configuration start automatically.
   As there is no-one at the site, there's no need to issue a
   <prompt>boot:</prompt> prompt.</para>
   -->
   <para>
   3 番目に、この新しい設定を自動的にスタートさせます。
   この例で使っているサイトには誰もいないので、
   <prompt>boot:</prompt> プロンプトを出す必要はありません。
   </para>

   <informalfigure>
<programlisting>
default serial
prompt 0</programlisting>
   </informalfigure>

   <!--
    <para>Fourthy, we write the new configuration to diskette.</para>
    -->
    <para>4 番目に、この新しい設定をフロッピーディスクに書き込みます。</para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash#</prompt> <command>umount /mnt/floppy</command></screen>
   </informalfigure>

   <!--
   <para>Check that the diskette boots.  If it does not then write a
   new boot sector by downloading and running the most recent
   <application>SYSLINUX</application>.</para>
   -->
   <para>
   そして、このフロッピーディスクでブートすることを確認して下さい。
   もしブートしなかったら、
   最新の <application>SYSLINUX</application>
   をダウンロードし実行して、新しいブートセクターを書き込んで下さい。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash#</prompt> <command>syslinux /dev/fd0</command></screen>
   </informalfigure>

   <!--
    <para>Finally, create a new boot image for copying to the
    computers to be upgraded.</para>
    -->
    <para>
    最後に、
    アップグレードする予定のコンピュータにコピーするために使う、
    新しいブートイメージを生成して下さい。
    </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash#</prompt> <command>dd if=/dev/fd0 of=bootserialnet.img bs=1440k</command>
<computeroutput>1+0 records in
1+0 records out</computeroutput></screen>
   </informalfigure>

   <!--
    <para>If you test the new boot floppy on a machine with a serial
    console you should briefly see <application>SYSLINUX</application>
    booting</para>
    -->
    <para>
    この新しいブートフロッピーを、
    シリアルコンソールが付いたマシンでテストすれば、
    短いですが、
    <application>SYSLINUX</application>
    がブートしているのがわかります。
    </para>

   <informalfigure>
<screen format="linespecific">
<computeroutput>SYSLINUX 1.52 2001-02-07  Copyright (C) 1994-2001 H. Peter Anvin</computeroutput></screen>
   </informalfigure>

   <!--
    <para>and then presenting the <filename>boot.msg</filename> file
    and then the <systemitem class="osname">Linux</systemitem> kernel should be
    loaded</para>
    -->
    <para>
    それから <filename>boot.msg</filename> ファイルが現れて、そして
    <systemitem class="osname">Linux</systemitem>
    カーネルがロードされます。
    </para>

   <informalfigure>
<screen format="linespecific">
<computeroutput>Loading initrd.img..............
Loading vmlinuz............. ready.</computeroutput></screen>
   </informalfigure>

   <!--
   <para>and run.</para>
   -->
   <para>そして、実行開始です。</para>

   <informalfigure>
<screen format="linespecific">
<computeroutput>Linux version 2.4.2-2BOOT (root@porky.devel.redhat.com) (gcc version 2.96 200001</computeroutput></screen>
   </informalfigure>

   <!--
   <para>Next the <application>init</application> system flashes
   by</para>
   -->
   <para>
   次に <application>init</application> システムがパッと通り過ぎます。
   </para>

   <informalfigure>
<screen format="linespecific">
<computeroutput>Greetings.
Red Hat install init version 7.0 starting
mounting /proc filesystem... done
mounting /dev/pts (unix98 pty) filesystem... done
Red Hat install init version 7.0 using a serial console
remember, cereal is an important part of a nutritionally balanced breakfast.
checking for NFS root filesystem...no
trying to remount root filesystem read write... done
checking for writeable /tmp... yes
running install...
running /sbin/loader</computeroutput></screen>
   </informalfigure>

   <!--
   <para>before the installation application, called
   <application>anaconda</application>, is started</para>
   -->
   <para>
   これは <application>anaconda</application>
   というインストール用アプリケーションがスタートする前です。
   </para>

   <informalfigure>
<screen format="linespecific">
<computeroutput>
Welcome to Red Hat Linux
+----------+ Devices +-----------+
|                                |
| Do you have a driver disk?     |
|                                |
|    +-----+          +----+     |
|    | Yes |          | No |     |
|    +-----+          +----+     |
|                                |
|                                |
+--------------------------------+
&lt;Tab&gt;/&lt;Alt-Tab&gt; between elements  | &lt;Space&gt; selects | &lt;F12&gt; next screen</computeroutput></screen>
   </informalfigure>

   <!--
   <para>There does not seem to be a way to access the function keys,
   fortunately the user interface does not require their use.</para>
   -->
   <para>
   ファンクションキーにアクセスする方法がないように思えます。でも幸い、
   このユーザーインタフェースでは、ファンクションキーを使う必要はありません。
   </para>

   <!--
   <para>Now that the floppy has been tested, eject the disk and
   reboot the machine into normal operation.</para>
   -->
   <para>
   これでフロッピーのテストは終りました。
   フロッピーディスクを抜き、マシンをリブートして、
   通常動作に戻して下さい。
   </para>

   </section>  <!-- rhl-preparefloppy -->


  <section id="rhl-preparehttp">
  <!--
   <title>Prepare <acronym>HTTP</acronym> server</title>
   -->
   <title><acronym>HTTP</acronym> サーバーを準備する</title>

   <!--
   <para>It is best if the web server runs the version of Red Hat
   Linux as is being upgraded to.  If it runs an earlier version, then
   do not rebuild the operating system on this machine and install
   <application>anaconda-runtime</application> from the later
   operating system.</para>
   -->
   <para>
   ウェブサーバーが、
   これからアップグレードするバージョンの、
   Red Hat Linux で動いているなら最高です。
   しかし以前のバージョンが動いている場合は、
   オペレーティングシステムを再構築せず、
   もっと新しいバージョンのオペレーティングシステムから、
   <application>anaconda-runtime</application>
   をインストールして下さい。
   </para>
   
   <!--
   <para>Copy the Linux distribution to a local web server using a
   mirroring utility like <command>wget</command>.  Alternatively the
   files can be copied from the distribution <acronym>CD</acronym>s to
   the web server.</para>
   -->
   <para>
   <command>wget</command> のようなミラーリングユーティリティを使って、
   Linux のディストリビューションを、ローカルのウェブサーバーにコピーします。
   あるいは、ディストリビューション <acronym>CD</acronym>
   から、ウェブサーバーにコピーしてもかまいません。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash$</prompt> <command>mkdir &hyphen;&hyphen;mode=664 &hyphen;&hyphen;parents /var/www/html/redhat/linux/7.1/en/os/i386</command>
<prompt>bash$</prompt> <command>umask 002</command>
<prompt>bash$</prompt> <command>wget -nh -nH -r -N -nr -l0 -k -np -X SRPMS ftp://ftp.redhat.com/pub/redhat/linux/7.1/en/os/i386/ -P /var/www/html/redhat/linux/7.1/en/os/i386</command></screen>
   </informalfigure>

   <!--
   <para>It's best to use a mirror site in place of Red Hat's <acronym>FTP</acronym> site
   used in the example above.</para>
   -->
   <para>
   上記の例で使っている Red Hat の <acronym>FTP</acronym> サイトの代わりに、
   ミラーサイトを使うのが一番良いです。
   </para>

   <!--
   <para>It is very important not to gain files along the way.  Delete
   any files generated by <acronym>FTP</acronym> servers, web servers
   and <acronym>CD-ROM</acronym>s.</para>
   -->
   <para>
   ファイルをどれもこれも、そっくりそのままでは、取得しないで下さい。
   これは、とても大事なことです。
   <acronym>FTP</acronym> サーバー、ウェブサーバー、それに
   <acronym>CD-ROM</acronym> が作ったファイルは、いずれも削除して下さい。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash$</prompt> <command>cd /var/www/html/redhat</command>
<!--
<prompt>bash$</prompt> &num; Files added by FTP server
-->
<prompt>bash$</prompt> # FTP サーバーが追加したファイル
<prompt>bash$</prompt> <command>find . -name '.listing' -print -exec rm {} \;</command>
<prompt>bash$</prompt> <command>find . -name 'ls-*' -print -exec rm {} \;</command>
<!--
<prompt>bash$</prompt> &num; Files added by a wget from a HTTP server
-->
<prompt>bash$</prompt> # HTTP サーバーから wget で追加したファイル
<prompt>bash$</prompt> <command>find . -name '\?*' -print -exec rm {} \;</command>
<!--
<prompt>bash$</prompt> &num; Files added by a CD-ROM
-->
<prompt>bash$</prompt> # CD-ROM で追加したファイル
<prompt>bash$</prompt> <command>find . -name 'TRANS.TBL' -print -exec rm {} \;</command></screen>
   </informalfigure>

   <!--
   <para>We now need to add the latest updates to the distributed
   software.  This is done to avoid the machine being compromised
   immediately following the upgrade.</para>
   -->
   <para>
   今度は配布されているソフトウェアに、
   最新のアップデートを追加する必要があります。
   これは、すぐにアップグレードしてしまうと、
   マシンが危険な状態になるので、それを避けるためです。
   </para>

   <!--
   <para>Adding the updates is essential for <productname>Red Hat
   Linux</productname> <productnumber>7.1</productnumber>, see <xref
   linkend="bugs-rhl71">.</para>
   -->
   <para>
   <productname>Red Hat Linux</productname> 
   <productnumber>7.1</productnumber> では、
   アップデートの追加は欠かせません。
   <xref linkend="bugs-rhl71">を参照して下さい。
   </para>

   <!--
   <para>Collect together the updates <acronym>RPM</acronym>s from
   <ulink url="ftp://ftp.redhat.com/pub/updates/7.1/en/os/"><filename
   class="directory">ftp://ftp.redhat.com/pub/updates/7.1/en/os/</filename></ulink>
   in the subdirectories <filename class="directory">i386</filename>,
   <filename class="directory">i486</filename>, <filename
   class="directory">i586</filename> <filename
   class="directory">i686</filename>, <filename
   class="directory">images</filename> and <filename
   class="directory">noarch</filename>.</para>
   -->
   <para>
   <ulink url="ftp://ftp.redhat.com/pub/updates/7.1/en/os/">
   <filename class="directory">ftp://ftp.redhat.com/pub/updates/7.1/en/os/
   </filename></ulink> にあるサブディレクトリ、
   <filename class="directory">i386</filename>,
   <filename class="directory">i486</filename>, 
   <filename class="directory">i586</filename>, 
   <filename class="directory">i686</filename>, 
   <filename class="directory">images</filename>,
   <filename class="directory">noarch</filename> から
   <acronym>RPM</acronym> のアップデートを集めて下さい。

   <footnote><para>
   訳注：2002 年 6 月 17 日現在、当該アップデートは 
   <ulink url="ftp://updates.redhat.com/7.1/en/os/">
   <filename class="directory">ftp://updates.redhat.com/7.1/en/os/</filename>
   </ulink>
   になっているようです。
   </para></footnote>

   </para>

   <!--
   <para>Merge these updates into the copy of the distribution.  For
   each updated <acronym>RPM</acronym> file, remove the original
   <acronym>RPM</acronym> file then replace it with the updated
   <acronym>RPM</acronym> file.  For example:</para>
   -->
   <para>
   これらのアップデートを、
   ディストリビューションのコピーとマージして下さい。
   アップデートする、
   それぞれの <acronym>RPM</acronym> ファイルについては、
   オリジナルの <acronym>RPM</acronym> ファイルを削除して、
   それから、アップデートする <acronym>RPM</acronym> に置き換えて下さい。
   例えば、次のようにします。
   </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash$</prompt> <command>cd /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/RPMS</command>
<prompt>bash$</prompt> <command>ls /var/www/html/redhat/updates/7.1/en/os/i386</command>
SysVinit-2.78-17.i386.rpm
<prompt>bash$</prompt> <command>ls SysVinit-*.rpm</command>
SysVinit-2.78-15.i386.rpm
<prompt>bash$</prompt> <command>rm SysVinit-2.78-15.i386.rpm</command>
<prompt>bash$</prompt> <command>cp /var/www/html/redhat/updates/7.1/en/os/i386/SysVinit-2.78-17.i386.rpm .</command>
<prompt>bash$</prompt> <command>chmod u=rw,g=r,o=r SysVinit-2.78-17.i386.rpm</command></screen>
   </informalfigure>

   <!--
   <para>Merge the <acronym>RPM</acronym>s from the <filename
   class="directory">updates</filename> subdirectories <filename
   class="directory">i386</filename>, <filename
   class="directory">i686</filename> and <filename
   class="directory">noarch</filename> into <filename
   class="directory">/var/www/html/redhat/linux/7.1/en/os/i386/RedHat/RPMS</filename>.
   Merge the files from the directory <filename
   class="directory">/var/www/html/redhat/updates/7.1/en/os/images</filename>
   into the directory <filename
   class="directory">/var/www/html/redhat/linux/7.1/en/os/i386/images</filename>.</para>
   -->
   <para>
   <filename class="directory">updates</filename> のサブディレクトリ
   <filename class="directory">i386</filename>, 
   <filename class="directory">i686</filename>,
   <filename class="directory">noarch</filename> にある  
   <acronym>RPM</acronym> を、
   <filename class="directory">
   /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/RPMS
   </filename> 
   にマージして下さい。さらに、
   <filename class="directory">
   /var/www/html/redhat/updates/7.1/en/os/images</filename> 
   ディレクトリにあるファイルを、
   <filename class="directory">
   /var/www/html/redhat/linux/7.1/en/os/i386/images</filename>
   にマージして下さい。
   </para>

   <!--
   <para>The file
   <filename>/var/www/html/redhat/linux/7.1/en/os/i386/RedHat/base/hdlist</filename>
   and <filename>hdlist2</filename> contain the list of the
   <acronym>RPM</acronym>s to install. This needs to be modified to
   contain the names of the updated <acronym>RPM</acronym>s.</para>
   -->
   <para>
   <filename>
   /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/base/hdlist
   </filename> ファイルと 
   <filename>hdlist2</filename> ファイルには、インストールする 
   <acronym>RPM</acronym> のリストが入っています。
   このリストを修正して、アップデートする <acronym>RPM</acronym>
   の名前を記載してください。
   </para>

   <!--
   <para>Install the <filename>anaconda-runtime</filename>
   <acronym>RPM</acronym> on the <acronym>HTTP</acronym> server.  This
   <acronym>RPM</acronym> should be the same version as the Red Hat
   Linux being upgraded to.</para>
   -->
   <para>
   <acronym>HTTP</acronym> サーバーには 
   <filename>anaconda-runtime</filename> <acronym>RPM</acronym>
   をインストールして下さい。
   この <acronym>RPM</acronym> は、
   アップデートしようとしているRed Hat Linux と、
   同じバージョンにしてください。
   </para>

   <!--
  <para>Now create a new <filename>hdlist</filename> with the
  commands:</para>
  -->
  <para>
  では、次のコマンドで新しい <filename>hdlist</filename> を作って下さい。
  </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash$</prompt> <command>cd /usr/lib/anaconda-runtime</command>
<prompt>bash$</prompt> <command>rm /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/base/hdlist*</command>
<prompt>bash$</prompt> <command>umask 002</command>
<prompt>bash$</prompt> <command>./genhdlist &hyphen;&hyphen;withnumbers &hyphen;&hyphen;hdlist /var/www/html/redhat/linux/7.1/en/os/i386/RedHat/base/hdlist /var/www/html/redhat/linux/7.1/en/os/i386</command></screen>
   </informalfigure>

   <!--
   <para>The distribution plus the updates can now be used for a
   network install.  They cannot be used for a <acronym>CD</acronym>
   install, but that doesn't concern us.</para>
   -->
   <para>
   これでアップデートを追加したディストリビューションが、
   ネットワークインストールで使えます。
   <acronym>CD</acronym> インストールでは使えませんが、
   この場合は関係ありません。
   </para>

   <!--
   <para>As the distribution plus the updates is different from the
   original distribution, we should not use the version number of the
   original distribution.  Appending the date to which the updates
   have been applied seems best.</para>
   -->
   <para>
   このアップデートを追加したディストリビューションは、
   オリジナルのディストリビューションとは別のものなので、
   オリジナルディストリビューションのバージョン番号は使わない方が良いです。
   そのアップデートを適用した日付を後ろに付けるのが、うまい方法です。
   </para>

   <informalfigure>
<programlisting>
<prompt>bash$</prompt> <command>cd /var/www/html/redhat/linux/</command>
<prompt>bash$</prompt> <command>mv 7.1 7.1-20020202</command></programlisting>
</informalfigure>

  </section> <!-- rhl-preparehttp -->


  <section id="rhl-ifconfig">
  <!--
   <title>Record network configuration</title>
   -->
   <title>ネットワーク設定を記録しておく</title>

   <!--
   <para>If the machine does not use the Dynamic Host Configuration
   Protocol then record the current network configuration.  This is
   used to complete the installer's <guimenu>Configure
   TCP/IP</guimenu> screen.</para>
   -->
   <para>
   &quot;Dynamic Host Configuration Protocol&quot; （DHCP） 
   を使っていないマシンの場合は、
   その時点のネットワーク設定を記録しておいて下さい。
   インストールの際、<guimenu>Configure TCP/IP</guimenu>
   画面で必要な項目を入力するのに使います。
   </para>

   <example id="rhl-ifconfig-ifconfig">
   <!--
    <title>Displaying the Internet Protocol configuration</title>
    -->
    <title>インターネットプロトコル（IP）の設定を表示する</title>
    <screenco>
     <areaspec>
      <area units="linecolumn" coords="3" id="rhl-ifconfig-ifconfig-ipaddr">
      <area units="linecolumn" coords="15" id="rhl-ifconfig-ifconfig-router">
      <area units="linecolumn" coords="20" id="rhl-ifconfig-ifconfig-dns">
     </areaspec>
<screen format="linespecific"><prompt>bash$</prompt> <command>ifconfig eth0</command>
<computeroutput>
eth0      Link encap:Ethernet  HWaddr 00:11:22:33:44:55  
          inet addr:10.1.2.3  Bcast:10.1.2.255  Mask:255.255.255.0
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:344233 errors:0 dropped:0 overruns:0 frame:0
          TX packets:285750 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:100 
          Interrupt:10 Base address:0x9000</computeroutput>
<prompt>bash$</prompt> <command>netstat -r -n</command>
<computeroutput>
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
10.1.2.0        0.0.0.0         255.255.255.0   U        40 0          0 eth0
127.0.0.0       0.0.0.0         255.0.0.0       U        40 0          0 lo
0.0.0.0         10.1.2.254      0.0.0.0         UG       40 0          0 eth0</computeroutput>
<prompt>bash$</prompt> <command>cat /etc/resolv.conf</command>
<computeroutput>
domain example.edu.au
nameserver 10.255.1.1
nameserver 10.255.2.1
nameserver 172.16.1.1</computeroutput></screen>
     <calloutlist>
      <callout arearefs="rhl-ifconfig-ifconfig-ipaddr">
      <!--
       <para>The value of <literal>inet addr</literal> is the
       &lsquo;IP address&rsquo;.  Our example shows
       <literal>10.1.2.3</literal>.  The value of
       <literal>Mask</literal> is the &lsquo;Netmask&rsquo;.  Our
       example shows <literal>255.255.255.0</literal>.</para>
       -->
       <para>
       <literal>inet addr</literal> 値は &lsquo;IP address&rsquo; のことです。
       この例では、
       <literal>10.1.2.3</literal> となっています。
       <literal>Mask</literal> の値は &lsquo;Netmask&rsquo; のことです。
       この例では、
       <literal>255.255.255.0</literal> になっています。
       </para>
      </callout>
      <callout arearefs="rhl-ifconfig-ifconfig-router">
      <!--
       <para>The value in the Gateway column for Destination
       <literal>0.0.0.0</literal> is the &lsquo;Default
       gateway&rsquo;.  Our example shows
       <literal>10.1.2.254</literal>.</para>
       -->
       <para>
       宛先 <literal>0.0.0.0</literal> に対する Gateway の欄の値は、
       &lsquo;デフォルトのゲートウェイ&rsquo; です。この例では、
       <literal>10.1.2.254</literal> になっています。
       </para>
      </callout>
      <callout arearefs="rhl-ifconfig-ifconfig-dns">
      <!--
       <para>The value of the first listed
       <literal>nameserver</literal> is the &lsquo;Primary
       nameserver&rsquo;.  Our example shows
       <literal>10.255.1.1</literal>.</para>
       -->
       <para>
       最初にリストされている、
       <literal>ネームサーバー</literal> の値が、
       &lsquo;プライマリのネームサーバー&rsquo; です。
       この例では、<literal>10.255.1.1</literal> になっています。
       </para>
      </callout>
     </calloutlist>
</screenco>
   </example>

  </section> <!-- rhl-ifconfig -->


  <section id="rhl-liloconfig">
  <!--
   <title>Record LILO configuration</title>
   -->
   <title>LILO の設定を記録しておく</title>

   <!--
   <para>Record the current value of <literal>append=</literal>,
   <literal>boot=</literal> and <literal>linear</literal> in
   <filename>/etc/lilo.conf</filename>.</para>
   -->
   <para>
   <filename>/etc/lilo.conf</filename> にある、
   インストール時点の <literal>append=</literal>、
   <literal>boot=</literal>、および <literal>linear</literal>
   の値を記録しておいて下さい。
   </para>

   <example id="rhl-liloconfig-lilo">
   <!--
    <title>Displaying the <application>LILO</application>
    configuration</title>
    -->
    <title><application>LILO</application> の設定を表示する</title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>fgrep append= /etc/lilo.conf</command>
<computeroutput>
append="console=tty0 console=ttyS0,9600n8"</computeroutput>
<prompt>bash#</prompt> <command>fgrep boot= /etc/lilo.conf</command>
<computeroutput>
boot=/dev/hda</computeroutput>
<prompt>bash#</prompt> <command>fgrep linear /etc/lilo.conf</command>
<prompt>bash#</prompt></screen>
   </example>

   <!--
   <para>If the <literal>boot=</literal> parameter points to a hard
   disk then <application>LILO</application> is installed in the
   master boot record, or <acronym>MBR</acronym>.  It can also point to
   a partition.</para>
   -->
   <para>
   <literal>boot=</literal>
   パラメータがハードディスクを指している場合は、
   <application>LILO</application> は、マスターブートレコード、つまり
   <acronym>MBR</acronym> にインストールされています。
   パーティションを指していることもあります。
   </para>

   <!--
   <para>If the <literal>linear</literal> parameter is present then
   the hard disk that is booted from uses linear block addressing, or
   <acronym>LBA</acronym>.</para>
   -->
   <para>
   <literal>linear</literal> パラメータが存在すれば、
   ブートするハードディスクはリニアブロックアドレッシング、
   つまり <acronym>LBA</acronym> を使っています。
   </para>

  </section> <!-- rhl-liloconfig -->


   <section id="rhl-upgrade">
   <!--
    <title>Upgrade Red Hat distribution</title>
    -->
    <title>Red Hat ディストリビューションをアップグレードする</title>

    <!--
    <para>In this section it all comes together.  We will walk through
    an entire serial console upgrade, not that it differs much from a
    standard text mode upgrade.</para>
    -->
    <para>
    このセクションですべてが一つになります。
    シリアルコンソールのアップグレード全体のリハーサルをします。
    普通のテキストモードによるアップグレードと、大きな違いはありません。
    </para>

    <!--
    <para>Configure <acronym>BIOS</acronym> to boot from floppy or
    insert the floppy disk. Now reboot the machine.</para>
    -->
    <para>
    <acronym>BIOS</acronym> をフロッピーからブートするように設定して、
    フロッピーディスクを挿入して下さい。さあ、マシンをリブートしましょう。
    </para>

   <informalfigure>
<screen format="linespecific">
<prompt>bash#</prompt> <command>shutdown -r now</command>
<computeroutput>
SYSLINUX 1.64 1.64-pre2   Copyright (C) 1994-2001 H. Peter Anvin
                Welcome to Red Hat Linux 7.1!
 -  To install or upgrade Red Hat Linux in graphical mode, 
    press the &lt;ENTER&gt; key.
 -  To install or upgrade Red Hat Linux in text mode, type: text &lt;ENTER&gt;.
 -  To enable low resolution mode, type: lowres &lt;ENTER&gt;.  
    Press &lt;F2&gt; for more information about low resolution mode.
 -  To disable framebuffer mode, type: nofb &lt;ENTER&gt;.  
    Press &lt;F2&gt; for more information about disabling framebuffer mode.
 -  To enable expert mode, type: expert &lt;ENTER&gt;.  
    Press &lt;F3&gt; for more information about expert mode.
 -  To enable rescue mode, type: linux rescue &lt;ENTER&gt;.  
    Press &lt;F5&gt; for more information about rescue mode.
 -  If you have a driver disk, type: linux dd &lt;ENTER&gt;.
 -  Use the function keys listed below for more information.
[F1-Main] [F2-General] [F3-Expert] [F4-Kernel] [F5-Rescue]
boot: 
Loading initrd.img..............
Loading vmlinuz............. ready.
Linux version 2.4.2-2BOOT (root@porky.devel.redhat.com) (gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-79)) #1 Sun Apr 8 18:24:33 EDT 2001
</computeroutput>
</screen>
   </informalfigure>

   <!--
   <para>Because we have booted into expert mode, the menus differ
   slightly from the standard upgrade.  For example, you probably
   don't have a driver disk.</para>
   -->
   <para>
   エキスパートモードでブートしたので、
   メニューは標準のアップグレードとは若干違っています。
   例えば、ドライバーディスクはありません。
   </para>

   <informalfigure>
<screen format="linespecific">
 Welcome to Red Hat Linux
+----------+ Devices +-----------+
|                                |
| Do you have a driver disk?     |
|                                |
|    +-----+          +----+     |
|    | Yes |          |[No]|     |
|    +-----+          +----+     |
|                                |
+--------------------------------+</screen>
   </informalfigure>

   <!--
   <para>The upgrade then continues in the usual fashion.</para>
   -->
   <para>
   その後アップグレードは、通常のやり方で続きます。
   </para>

   <informalfigure>
<screen format="linespecific">
+--------+ Choose a Language +---------+
|                                      |
| What language should be used during  |
| the installation process?            |
|                                      |
|            Czech       :             |
|          [ English     : ]           |
|            Danish      :             |
|            French      :             |
|            German      :             |
|            Hungarian   :             |
|            Icelandic   :             |
|            Italian     :             |
|                                      |
|               +----+                 |
|               |[OK]|                 |
|               +----+                 |
|                                      |
+--------------------------------------+</screen>
   </informalfigure>

   <!--
   <para>Select <guimenuitem>HTTP</guimenuitem> to upgrade from the
   web server we prepared previously.</para>
   -->
   <para>
   これまでに準備したウェブサーバーからアップグレードするため、
   <guimenuitem>HTTP</guimenuitem> を選びます。
   </para>

   <informalfigure>
<screen format="linespecific">
+-----+ Installation Method +------+
|                                  |
| What type of media contains the  |
| packages to be installed?        |
|                                  |
|            NFS image             |
|            FTP                   |
|          [ HTTP ]                |
|                                  |
|     +----+         +------+      |
|     |[OK]|         | Back |      |
|     +----+         +------+      |
|                                  |
+----------------------------------+</screen>
   </informalfigure>

   <!--
   <para>Here we supply the network details recorded in <xref
   linkend="rhl-ifconfig-ifconfig">.  If your network supports Dynamic
   Host Configuration Protocol or the Bootstrap Protocol then these
   work fine too.</para>
   -->
   <para>
   ここで、<xref linkend="rhl-ifconfig-ifconfig">
   で記録しておいたネットワークの詳細を入力します。ネットワークが
   &quot;Dynamic Host Configuration Protocol&quot; か、
   &quot;Bootstrap Protocol&quot; をサポートしていれば、
   それらもちゃんと動作します。
   </para>

   <informalfigure id="rhl-upgrade-ipaddr">
<screen format="linespecific">
+--------------------+ Configure TCP/IP +--------------------+
|                                                            |
| Please enter the IP configuration for this machine. Each   |
| item should be entered as an IP address in dotted-decimal  |
| notation (for example, 1.2.3.4).                           |
|                                                            |
|       [ ] Use dynamic IP configuration (BOOTP/DHCP)        |
|                                                            |
|           IP address:           10.1.2.3________           |
|           Netmask:              255.255.255.0___           |
|           Default gateway (IP): 10.1.2.254______           |
|           Primary nameserver:   10.255.1.1______           |
|                                                            |
|            +----+                      +------+            |
|            |[OK]|                      | Back |            |
|            +----+                      +------+            |
|                                                            |
+------------------------------------------------------------+</screen>
   </informalfigure>

   <!--
   <para>Provide the name of the pre-prepared web server.  Note that
   the response to <guimenuitem>Red Hat directory</guimenuitem> must
   start with a <filename class="directory">/</filename>.</para>
   -->
   <para>
   予め準備しておいたウェブサーバーの名前を入力します。
   <guimenuitem>Red Hat directory</guimenuitem> へ入力するディレクトリは、
   <filename class="directory">/</filename>
   で始めなければならないことに注意して下さい。
   </para>

   <informalfigure>
<screen format="linespecific">
+-----------------+ HTTP Setup +-----------------------------------+
|                                                                  |
| Please enter the following information:                          |
|                                                                  |
|     o the name or IP number of your web server                   |
|     o the directory on that server containing                    |
|       Red Hat Linux for your architecure                         |
|                                                                  |
|   Web site name:     www.example.edu.au_______________________   |
|   Red Hat directory: /redhat/linux/7.1-20020202/en/os/i386____   |
|                                                                  |
|         +----+                 +------+                          |
|         |[OK]|                 | Back |                          |
|         +----+                 +------+                          |
|                                                                  |
+------------------------------------------------------------------+</screen>
   </informalfigure>

   <!--
   <para>The following status messages then fly by before the welcome
   screen appears.</para>
   -->
   <para>
   それから 次のステータスメッセージがパッと出て、その後 &quot;welcome&quot; 
   の画面が現れます。
   </para>

   <informalfigure>
<screen format="linespecific">
<guilabel>Retrieving base/netstg1.img...</guilabel>
<guilabel>Loading /mnt/runtime ramdisk...</guilabel>
<guilabel>Retrieving base/netstg2.img...</guilabel>
<guilabel>Loading /mnt/runtime/usr ramdisk...</guilabel>
<guilabel>Running anaconda - please wait...</guilabel>
<guilabel>Graphical installation not available for http installs.  Starting text mode.</guilabel>
</screen>

<screen format="linespecific">
+----------------+ Red Hat Linux +-----------------+
|                                                  |
| Welcome to Red Hat Linux!                        |
|                                                  |
| This installation process is outlined in detail  |
| in the Official Red Hat Linux Installation       |
| Guide available from Red Hat Software. If you    |
| have access to this manual, you should read the  |
| installation section before continuing.          |
|                                                  |
| If you have purchased Official Red Hat Linux,    |
| be sure to register your purchase through our    |
| web site, http://www.redhat.com/.                |
|                                                  |
|         +----+                 +------+          |
|         |[OK]|                 | Back |          |
|         +----+                 +------+          |
|                                                  |
+--------------------------------------------------+</screen>
   </informalfigure>

   <!--
   <para>Select <guimenuitem>Upgrade Existing
   Installation</guimenuitem>, although this procedure works fine for
   installations as well.</para>
   -->
   <para>
   <guimenuitem>Upgrade Existing Installation</guimenuitem> を
   選んで下さい。でもこの手順は一般のインストールでもうまくいきます。
   </para>

   <informalfigure>
<screen format="linespecific">
+--------------+ Installation Type +--------------+
|                                                 |
| What type of system would you like to install?  |
|                                                 |
|          Workstation                            |
|          Server System                          |
|          Laptop                                 |
|          Custom System                          |
|        [ Upgrade Existing Installation ]        |
|                                                 |
|         +----+                +------+          |
|         | OK |                | Back |          |
|         +----+                +------+          |
|                                                 |
+-------------------------------------------------+</screen>
   </informalfigure>

   <!--
   <para>The upgrade continues.  When the <guimenu>LILO
   Configuration</guimenu> screen appears insert the kernel parameters
   recorded from <xref linkend="rhl-liloconfig-lilo">.  These
   parameters should include
   <literal>console=ttyS&hellip;</literal>.</para>
   -->
   <para>
   アップグレードは続きます。
   <guimenu>LILO Configuration</guimenu> 画面が現れたら、
   <xref linkend="rhl-liloconfig-lilo">
   で記録しておいたカーネルパラメータを入力して下さい。
   これらのパラメータには、
   <literal>console=ttyS&hellip;</literal>
   が含まれているはずです。
   </para>

   <informalfigure>
<screen format="linespecific">
+---------------------+ LILO Configuration +---------------------+
|                                                                |
| A few systems will need to pass special options to the kernel  |
| at boot time for the system to function properly. If you need  |
| to pass boot options to the kernel, enter them now. If you     |
| don't need any or aren't sure, leave this blank.               |
|                                                                |
|       [ ] Use linear mode (needed for some SCSI drives)        |
|                                                                |
|        console=tty0 console=ttyS0,9600n8_______________        |
|                                                                |
|       +----+              +------+             +------+        |
|       | OK |              | Skip |             | Back |        |
|       +----+              +------+             +------+        |
|                                                                |
+----------------------------------------------------------------+</screen>
   </informalfigure>

   <informalfigure>
<screen format="linespecific">
+-------------+ LILO Configuration +--------------+
|                                                 |
|  Where do you want to install the bootloader?   |
|                                                 |
|[/dev/hda         Master Boot Record (MBR)      ]|
| /dev/hda1        First sector of boot partition |
|                                                 |
|         +----+                +------+          |
|         | OK |                | Back |          |
|         +----+                +------+          |
|                                                 |
+-------------------------------------------------+</screen>
   </informalfigure>

   <informalfigure>
<screen format="linespecific">
+----------------------+ LILO Configuration +-----------------------+
|                                                                   |
| The boot manager Red Hat uses can boot other operating systems    |
| as well. You need to tell me what partitions you would like to    |
| be able to boot and what label you want to use for each of them.  |
|                                                                   |
| Device      Partition type            Default Boot label          |
|[/dev/hda6   Linux Native              *       linux     ] :       |
|                                                           :       |
|                                                           :       |
|                                                           :       |
|                                                           :       |
|                                                                   |
|        +----+              +------+              +------+         |
|        | Ok |              | Edit |              | Back |         |
|        +----+              +------+              +------+         |
|                                                                   |
|                                                                   |
+-------------------------------------------------------------------+</screen>
   </informalfigure>


   <!--
   <para>The upgrade continues.  As installing the packages may take a
   few hours, you can disconnect.</para>
   -->
   <para>
   アップグレードは続きます。
   パッケージのインストールには2、3 時間かかるかもしれませんから、
   接続を切ってもかまいません。
   </para>

   <informalfigure>
<screen format="linespecific">
+-------------+ Package Installation +--------------+
|                                                   |
| Name   :                                          |
| Size   :                                          |
| Summary:                                          |
|                                                   |
|                  Packages       Bytes        Time |
| Total    :              0         0M              |
| Completed:              0         0M              |
| Remaining:              0         0M              |
|                                                   |
|                                                   |
+---------------------------------------------------+</screen>
   </informalfigure>

   <!--
   <para>If you disconnected, then when reconnecting it is best to
   press <keycap>Tab</keycap> rather than pressing
   <keycap>Return</keycap>.</para>
   -->
   <para>
   接続を切り、その後再接続する際、一番いいのは、
   <keycap>Return</keycap> を押すのではなく、
   <keycap>Tab</keycap> を押すことです。
   </para>

   <!--
   <para>Pressing <keycap>Return</keycap> on the
   <guimenu>Bootdisk</guimenu> screen writes a boot disk.  This will
   overwrite the upgrade disk.</para>
   -->
   <para>
   <guimenu>Bootdisk</guimenu> 画面で <keycap>Return</keycap> を押すと、
   ブートディスクを書きます。
   これでアップグレードディスクを上書きします。
   </para>

   <!--
   <para>You may wish to deliberately create a boot disk if you cannot
   alter the <acronym>BIOS</acronym> parameters to boot from the hard
   disk, or if you cannot wait for someone to eject the floppy disk
   before rebooting.</para>
   -->
   <para>
   <acronym>BIOS</acronym> のパラメータを変えても、
   ハードディスクからのブートができない場合や、
   リブートの際、誰かにフロッピーディスクを抜いてもらわなくても済むように、
   あえてブートディスクを新しく作りたくなることがあります。
   </para>

   <informalfigure>
<screen format="linespecific">
+------------------+ Bootdisk +-------------------+
|                                                 |
| A custom boot disk provides a way of booting    |
| into your Linux system without depending on     |
| the normal bootloader. This is useful if you    |
| don't want to install lilo on your system,      |
| another operating system removes lilo, or lilo  |
| doesn't work with your hardware configuration.  |
| A custom boot disk can also be used with the    |
| Red Hat rescue image, making it much easier to  |
| recover from severe system failures.            |
|                                                 |
| Would you like to create a boot disk for your   |
| system?                                         |
|                                                 |
|         +-----+                 +----+          |
|         |[Yes]|                 | No |          |
|         +-----+                 +----+          |
|                                                 |
+-------------------------------------------------+</screen>
   </informalfigure>

   <!--
   <para>When the <guimenu>Complete</guimenu> screen appears prepare
   to reboot into Linux.  If you have a serial <acronym>BIOS</acronym>
   be prepared to alter the <acronym>BIOS</acronym> parameters to boot
   from the hard disk first.  If you do not have a serial
   <acronym>BIOS</acronym> ask someone to eject the floppy disk.</para>
   -->
   <para>
   &quot;<guimenu>Complete</guimenu>&quot; の画面が現れたら、
   リブートして Linux を立ち上げる準備をして下さい。
   シリアルの <acronym>BIOS</acronym> があるなら、
   その <acronym>BIOS</acronym> のパラメータを変えて、
   最初にハードディスクからブートするように準備してください。
   シリアルの 
   <acronym>BIOS</acronym> がなければ、
   誰かにフロッピーディスクを抜いてもらってください。
   </para>

   <informalfigure>
<screen format="linespecific">
+-----------------+ Complete +------------------+
|                                               |
| Congratulations, installation is complete.  # |
|                                             : |
| Press return to reboot, and be sure to      : |
| remove your boot medium after the system    : |
| reboots, or your system will rerun the      : |
| install. For information on fixes which     : |
| are available for this release of Red Hat   : |
| Linux, consult the Errata available from    : |
| http://www.redhat.com/errata.               : |
|                                             : |
| Information on configuring and using your   : |
| Red Hat Linux system is contained in the    : |
|                                               |
|                    +----+                     |
|                    |[OK]|                     |
|                    +----+                     |
|                                               |
+-----------------------------------------------+</screen>

<screen format="linespecific">
<computeroutput>sending termination signals...done
sending kill signals...done
disabling swap...
	/tmp/swap/hda5
unmounting filesystems...
	/mnt/sysimage/var/www/html
	/mnt/sysimage/boot
	/mnt/sysimage/proc
	/mnt/runtime/usr
	/mnt/sysimage
	/proc/bus/usb
	/mnt/runtime
	/dev/pts
	/proc
rebooting system
Restarting system.

LILO 
Loading linux......................
Linux version 2.4.3-12 (root@porky.devel.redhat.com) (gcc version 2.96 20000731 (Red Hat Linux 7.1 2.96-85)) #1 Fri Jun 8 15:05:56 EDT 2001</computeroutput></screen>
   </informalfigure>

  </section> <!-- rhboot -->

  <section id="rhbootdisk">
  <!--
   <title>Create boot disk for serial console</title>
   -->
   <title>シリアルコンソール用のブートディスクを作る</title>

   <!--
   <para>Once the upgrade has been sucessfully done create a boot
   floppy which has serial console support.  This is most simply done
   by creating a boot disk, as done by the
   <application>anaconda</application> installer or as described in
   <xref linkend="preparation-fallback">; modifying the configuration
   file <filename>\SYSLINUX.CFG</filename> to configure the boot
   loader to use the serial console, as described in <xref
   linkend="configure-boot-loader-syslinux">; and finally configuring
   the kernel to use the serial console, as described in <xref
   linkend="configure-kernel-syslinux">.</para>
   -->
   <para>
   アップグレードがうまくいったら、
   シリアルコンソールをサポートするブートフロッピーを作って下さい。これは
   <application>anaconda</application> インストーラを使ったり、
   <xref linkend="preparation-fallback">
   で説明したのと同じ方法でブートディスクを作れば一番簡単にできます。
   <xref linkend="configure-boot-loader-syslinux">で説明したように、
   設定ファイル <filename>\SYSLINUX.CFG</filename> を修正して、
   ブートローダーがシリアルコンソールを使うようにします。そして最後に、
   <xref linkend="configure-kernel-syslinux"> で説明したように、
   シリアルコンソールを使うようにカーネルを設定します。
   </para>

   <!--
   <para>An alternative is to create your own
   <application>mkbootdisk</application> <acronym>RPM</acronym>
   package containing a modified copy of the shell script
   <filename>/sbin/mkbootdisk</filename>.</para>
   -->
   <para>
   あるいは、自分専用の <application>mkbootdisk</application> の
   <acronym>RPM</acronym> パッケージを作って、
   そこに修正したシェルスクリプト
   <filename>/sbin/mkbootdisk</filename>
   のコピーを入れるという方法もあります。
   </para>

   <!--
   <para>The <filename>\SYSLINUX.CFG</filename> file on the boot
   floppy is written by <command>mkbootdisk</command> using the code
   in <xref linkend="rhbootdisk-mkbootdisk-original">.  We alter this
   code to use the serial console; the result is shown in <xref
   linkend="rhbootdisk-mkbootdisk-serial">.</para>
   -->
   <para>
   ブートフロッピーの <filename>\SYSLINUX.CFG</filename> ファイルは、
   <xref linkend="rhbootdisk-mkbootdisk-original"> にあるコードを使って、
   <command>mkbootdisk</command> で書いています。
   このコードは、シリアルコンソールを使うように変更します。その結果は、
   <xref linkend="rhbootdisk-mkbootdisk-serial"> に示してあります。
   </para>

   <figure id="rhbootdisk-mkbootdisk-original">
   <!--
    <title>Extract from Red Hat Linux 7.2
    <filename>mkbootdisk</filename> which creates
    <filename>SYSLINUX.CFG</filename></title>
    -->
    <title>
    Red Hat Linux 7.2 の
    <filename>mkbootdisk</filename> から抜き出す。
    これで <filename>SYSLINUX.CFG</filename> を作る 
    </title>
<programlisting>
cat &gt; $MOUNTDIR/syslinux.cfg &lt;&lt;EOF
default linux
prompt 1
display boot.msg
timeout 100
label linux
  kernel vmlinuz
  append $INITRDARG root=$rootdev
EOF
</programlisting></figure>

   <figure id="rhbootdisk-mkbootdisk-serial">
   <!--
    <title>Altered extract from <filename>mkbootdisk</filename>, which
    creates a <filename>SYSLINUX.CFG</filename> that uses a serial
    console</title>
    -->
    <title>
    <filename>mkbootdisk</filename> から抜き出して変更したもの。
    シリアルコンソールを使う <filename>SYSLINUX.CFG</filename>
    を作る
    </title>
   <programlisting>
cat &gt; $MOUNTDIR/syslinux.cfg &lt;&lt;EOF
serial 0 9600
default linux
prompt 1
display boot.msg
timeout 100
label linux
  kernel vmlinuz
  append $INITRDARG root=$rootdev console=tty0 console=ttyS0,9600n8
EOF
</programlisting></figure>

<!--
   <para>Created boot floppies will now use the serial console.</para>
   -->
   <para>
   これで、作成したブートフロッピーはシリアルコンソールを使います。
   </para>

   <!--
   <para>By far the best alternative would be the addition of
   parameters to <command>mkbootdisk</command> to allow the kernel
   parameters and serial port, speed and flow control to be given when
   the boot floppy is created.  For this enhancement request see Red
   Hat Bugzilla entry <ulink
   url="https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=59351">59351</ulink>.</para>
   -->
   <para>
   代替案として抜群に良いのは、ブートフロッピーを作る時に、
   カーネルパラメータとシリアルポート、
   それに速度とフロー制御が指定できるように、
   パラメータを
   <command>mkbootdisk</command>
   に追加することだろうと思います。この拡張要件については、
   Red Hat Bugzilla のエントリ
   <ulink url="https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=59351">
   59351</ulink>
   を参照して下さい。
   </para>

  </section> <!-- rhbootdisk -->

  
  <section id="rhreferences">
  <!--
   <title>Further references</title>
   -->
   <title>参考文献</title>

   <!--
   <para>Sometimes the kernel on the installation
   <acronym>CD</acronym> won't boot on the machine to be upgraded, or
   the filesystem requires modules that are not present.  In this case
   you will need to build a new kernel and rebuild the installation
   disk to use the new kernel.  This is documented in the <ulink
   url="http://cambuca.ldhs.cetuc.puc-rio.br/RedHat7-CDs-HowTo.html"><citetitle>RedHat7
   CDs mini-HowTo</citetitle></ulink>.  This is an informal HOWTO not
   available through the Linux Documentation Project.</para>
   -->
   <para>
   インストール <acronym>CD</acronym> にあるカーネルが、
   アップグレードするマシンではブートしなかったり、
   あるいは存在しないモジュールが、
   ファイルシステムに必要だったりすることがときどきあります。
   この場合は新しいカーネルを構築して、
   この新しいカーネルを使うように、
   インストールディスクを再作成する必要があるでしょう。これについては、
   <ulink url="http://cambuca.ldhs.cetuc.puc-rio.br/RedHat7-CDs-HowTo.html">
   <citetitle>RedHat7 CDs mini-HowTo</citetitle></ulink> で、
   文書になっています。これは &quot;Linux Documentation Project&quot;
   からは利用できない、非公式の HOWTO です。
   </para>

   <!--
   <para>An older document that more fully describes an older Red Hat
   distribution build process is <ulink
   url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/RedHat-CD-HOWTO.html"><citetitle>Burning
   a RedHat CD HOWTO</citetitle></ulink>.</para>
   -->
   <para>
   これよりも古い文書で、
   以前の Red Hat ディストリビューションの構築プロセスを、
   ほぼ完全に説明しているのは、
   <ulink url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/html_single/RedHat-CD-HOWTO.html">
   <citetitle>Burning a RedHat CD HOWTO</citetitle></ulink> 

   <footnote><para>
   邦訳は、
   <ulink url="http://www.linux.or.jp/JF/JFdocs/RedHat-CD-HOWTO.html">
   <citetitle>Burning a RedHat CD HOWTO</citetitle></ulink> です。
   </para></footnote>

   です。
   </para>

  </section> <!-- rhreferences -->

 </appendix> <!-- rhupgrade -->

 <appendix id="debian">
 <!--
  <title>Upgrading <productname>Debian
  <acronym>GNU</acronym>/Linux</productname> from a serial
  console</title>
  -->
  <title>
  シリアルコンソールから、
  <productname>Debian<acronym>GNU</acronym>/Linux</productname>
  をアップグレードする
  </title>

  <!--
  <para>Make a boot disk and a root disk.</para>
  -->
  <para>ブートディスクとルートディスクを作成して下さい</para>

  <!--
  <para>Boot the boot disk with the parameter
  <literal>console=ttyS0,9600</literal>.</para>
  -->
  <para>
  <literal>console=ttyS0,9600</literal>
  というパラメータを付けて、ブートディスクでブートして下さい。
  </para>

  <!--
  <para>Start the install program.</para>
  -->
  <para>インストールプログラムを開始して下さい</para>

 </appendix> <!-- debian -->

 <appendix id="ts">
 <!--
  <title>Terminal server configuration</title>
  -->
  <title>ターミナルサーバーの設定</title>

  <!--
  <para>Terminal servers were originally designed for connecting
  terminals to minicomputers.  Each terminal would have an
  <acronym>RS-232</acronym> port.  The connection to the minicomputer
  usually used an ethernet port.  Connecting terminals would be
  connected to a command line interface where they could select from a
  list of predefined machines.  A <application>Telnet</application>
  session would then be started to that machine.</para>
  -->
  <para>
  ターミナルサーバーはもともと、
  ミニコンピュータに端末を接続するために設計されたものです。
  各端末には <acronym>RS-232</acronym> ポートが付いています。
  ミニコンピュータとの接続には、普通イーサネットポートを使いました。
  端末を接続すれば、予め定義してあるマシンのリストから、
  どのマシンをつなぐのかが選べるような、
  コマンドラインインタフェースにつながります。
  それからそのマシンとの間で、
  <application>Telnet</application> セッションが始まります。
  </para>

  <!--
  <para>Over time terminal servers gained more features.  For example,
  modems could be connected.  These initially allowed people to dial
  in to the minicomputer but grew in features until most terminal
  servers became routers with a great number of serial ports.</para>
  -->
  <para>
  時が流れて、ターミナルサーバーはより多くの機能を手に入れました。
  例えばモデムが接続できるようになっています。
  最初のうちは、これを使って、
  単にミニコンピュータに電話をかけて、接続できるようになっただけでしたが、
  機能の拡大により、ほとんどのターミナルサーバーは、
  非常に多くのシリアルポートが付いた、ルーターになるまでに成長しました。
  </para>

  <!--
  <para>As well as allowing the connection of many console to a single
  terminal, the terminal server can be configured with user accounts
  and passwords, preventing unauthenticated access to the console
  whilst still allowing the console to be reached from any
  modem.</para>
  -->
  <para>
  多くのコンソールを端末一台につなげられる他に、
  ターミナルサーバーは、
  ユーザーアカウントとパスワードが使えるように設定できます。
  こうすることで、どのモデムからでも、
  そのコンソールに接続できるようになる一方で、
  そのコンソールに、未承認のユーザーからアクセスされないようにします。
  </para>

  <!--
  <para>This remainder of this section lists the considerations when
  purchasing terminal servers and the cabling pinouts and basic
  software configuration needed for differing types of terminal
  servers.</para>
  -->
  <para>
  このセクションの残りの部分では、
  ターミナルサーバーを選択する際に必要になる、
  ターミナルサーバーの購入時の考慮事項や、ケーブルのピン配置、
  それから、ターミナルサーバーの種類を区別するのに必要な、
  基本的なソフトウェアの設定を記載します。
  </para>

  <!--
  <para>Further contributions are welcome and should be e-mailed to
  the maintainer of this <citetitle>HOWTO</citetitle>.</para>
  -->
  <para>
  この後も情報をお寄せ下さい。歓迎します。この <citetitle>HOWTO</citetitle>
  の保守担当者に電子メールで送って下さい。
  </para>


  <section id="ts-buy">
  <!--
   <title>Considerations when buying second-hand terminal
   servers</title>
   -->
   <title>
   中古のターミナルサーバーを購入する際の考慮事項
   </title>

   <!--
   <para>Internet Service Providers have been large users of terminal
   servers in the past.  Each modem would be connected to a terminal
   server port and incoming users would be permitted to send
   <acronym>IP</acronym> packets anywhere, not just to some predefined
   minicomputer.  Manufacturers renamed the equipment to &lsquo;access
   servers&rsquo; or &lsquo;modem servers&rsquo; to reflect this new
   use.</para>
   -->
   <para>
   昔はインターネットサービスプロバイダが、
   ターミナルサーバーの大手ユーザーでした。
   各モデムはターミナルサーバーポートにつながっていたでしょうし、
   接続してくるユーザーは、たんに予め決まったミニコンピュータだけにではなく、
   どこにでも <acronym>IP</acronym> が送れるようになっていたと思います。
   製造業者はこの使い方を反映するように、その装置の名前を、
   &lsquo;アクセスサーバー&rsquo; とか
   &lsquo;モデムサーバー&rsquo; に変えました。
   </para>

   <!--
   <para>These access servers have been superseded by a new generation
   which allows telephone trunks to be plugged directly into the
   <acronym>ISP</acronym>'s router.  There are no discrete modems; the
   modem tones are decoded by digital signal processing chips within
   the router.  As a result terminal servers are currently readily
   available on the second-hand market.</para>
   -->
   <para>
   これらのアクセスサーバーは新しい世代がとって代わりました。新しい世代は、
   <acronym>ISP</acronym> のルーターに、
   電話のトランク回線を直接挿し込めるようになっています。
   モデムが別々に分かれているわけではありません。
   モデムのトーンは、
   ルーター内部にある、デジタルシグナルプロセッサチップがデコードします。
   この結果今では、ターミナルサーバーは中古市場で、
   簡単に入手できるようになっています。
   </para>
   <!--
   <para>When purchasing a second-hand terminal server ensure that you
   are also buying the rights to the software.  Some companies license
   their software and have contract terms which state that the license
   cannot be resold, but has to be repurchased from the company if the
   terminal server changes hands.  Many companies require a current
   maintenance contract to obtain software updates.  These maintenance
   agreements can be expensive, a common figure is 15% per annum of
   the manufacturer's retail price.  You may be able to source a
   cheaper software updates from a third-party maintenance
   supplier.</para>
   -->
   <para>
   中古のターミナルサーバーを購入する場合は、
   そのソフトウェアの権利も購入することを確認して下さい。
   会社によっては、自分たちのソフトウェアをライセンスしていて、
   そのライセンスが再販できないこと、
   そのターミナルサーバーの所有者変更の際は、
   当該会社からライセンスを再購入しなければならないこと、
   という契約条件を付けているところがあります。
   ソフトウェアのアップデートを得るには、
   多くの会社では一般に保守契約が必要になります。
   これらの保守契約は高額になる可能性があり、
   一般的な数字は、年額で小売価格の 15 パーセントです。
   サードパーティのメンテナンス業者から、
   もっと安価なソフトウェアアップデートを入手できるかも知れません。
   </para>

   <!--
   <para>Many older terminal servers are no longer sold or supported
   by their vendors.  Search the vendor's web site for &ldquo;end of
   life&rdquo;.</para>
   -->
   <para>
   古いターミナルサーバーの多くはもう販売していないか、
   あるいはそのベンダーのサポートが打ち切られています。
   ベンダーのウェブサイトで 
   &ldquo;end of life&rdquo; を探して下さい。
   </para>

   <!--
   <para>Vendor support can be a particular issue when the
   most-recently available software does not fit within the
   <acronym>RAM</acronym> or flash memory contraints of the terminal
   server you have purchased.  You should check this before purchasing
   a seond-hand terminal server.  Upgrading flash memory can be
   particularly difficult, as the <acronym>ROM</acronym> on the
   motherboard may also need to be replaced with one aware of the new
   flash memory's characteristics.<footnote>
   -->
   <para>
   ごく最近利用可能になったソフトウェアが、
   購入したターミナルサーバーの
   <acronym>RAM</acronym> やフラッシュメモリの制約内で収まらない場合、
   ベンダーのサポートが、特に問題となることがあります。
   中古のターミナルサーバーを購入するのは、
   このことを調べてからにしたほうがいいでしょう。
   そうしないと、
   フラッシュメモリのアップグレードが、著しく困難になる可能性があります。
   というのは、マザーボード上の <acronym>ROM</acronym> も、
   フラッシュメモリの特性を分かっているものに、
   置き換える必要があるかも知れないからです。
   </para>

   <!--
     <para>This is a fault with the design of flash memory.  It
     identifies itself with a model designator rather than with the
     timings required to read and write the memory.  So to load
     software from flash memory the boot <acronym>ROM</acronym> must
     have a table of flash memory models and
     timings.</para></footnote></para>
     -->
     <para>
     これはフラッシュメモリ設計の失敗です。このようなサーバーでは、
     フラッシュメモリは、メモリの読み書きに要するタイミングではなく、
     モデル名でそれ自身を識別します。
     ですから、フラッシュメモリからソフトウェアをロードする場合は、
     ブート <acronym>ROM</acronym>
     には、フラッシュメモリのモデルとタイミングの表が必要です。
     </para>

     <!--
   <para>Third-party parts suppliers such as <ulink
   url="http://www.kingston.com/">Kingston</ulink> or <ulink
   url="http://www.memoryx.net/">MemoryX</ulink> can usually provide
   dynamic <acronym>RAM</acronym> and flash memory.  They cannot
   usually supply <acronym>ROM</acronym>s or static
   <acronym>RAM</acronym>.</para>
   -->
   <para>
   <ulink url="http://www.kingston.com/">Kingston</ulink> とか 
   <ulink url="http://www.memoryx.net/">MemoryX</ulink> といった、
   サードパーティの部品メーカーでは、
   通常ダイナミック<acronym>RAM</acronym>
   やフラッシュメモリを提供しています。ですが普通は
   <acronym>ROM</acronym> もスタティック<acronym>RAM</acronym> も
   提供できません。
   </para>

   <!--
   <para>Most old terminal servers will not support
   <application>Secure Shell</application>.  In this is the case
   accessing the terminal server by its ethernet port is a poor idea:
   when you login to the console you password will travel across the
   Internet in clear text.  Either dial in to the terminal server or
   use a one-time password system such as the
   <productname><acronym>RADIUS</acronym></productname> protocol with
   <productname>S/KEY</productname> authentication.</para>
   -->
   <para>
   古いターミナルサーバーのほとんどは、
   <application>Secure Shell</application> をサポートしていません。
   この場合、イーサネットポートでターミナルサーバーにアクセスするという
   考えはまずいです。つまりコンソールにログインすると、
   自分のパスワードが平文でインターネット上を流れてしまいます。
   ですから、ターミナルサーバーに電話して接続するか、あるいは
   <productname>S/KEY</productname> 認証付きの、
   <productname><acronym>RADIUS</acronym></productname>
   プロトコルといったような、ワンタイムパスワードシステムを使って下さい。
   </para>

   <!--
   <para>An alternative to using a terminal server is to use a
   multiport serial card in another <systemitem
   class="osname">Linux</systemitem> system.</para>
   -->
   <para>
   あるいは、別の
   <systemitem class="osname">Linux</systemitem> マシンを一台用意して、
   マルチポートのシリアルカードを使ってもかまいません。
   </para>

  </section>  <!-- ts-buy -->


  <section id="ts-cisco2511">
   <title><productname>Cisco 2511</productname></title>

   <!--
   <para>The basic configuration for a Cisco 2511 access server is
   shown in <xref linkend="ts-cisco2511-config">.  A similar
   configuration will work for other Cisco access servers.  Cisco has
   excellent documentation at its <ulink
   url="http://www.cisco.com/">web site</ulink>; start by finding the
   correct <citetitle>Configuration guide</citetitle>.</para>
   -->
   <para>
   Cisco 2511 アクセスサーバーに対する基本的な設定は、
   <xref linkend="ts-cisco2511-config"> に示してあります。
   同じような設定は、他のシスコのアクセスサーバーでも動作すると思います。
   Cisco には <ulink url="http://www.cisco.com/">web site</ulink>
   に優れたドキュメントがあります。正しい
   <citetitle>Configuration guide</citetitle>
   を見つけることから始めてください。
   </para>

   <!--
   <para>A current maintenance contract with Cisco or a reseller is
   required to download software updates.  This contract also includes
   the provision of <acronym>ROM</acronym>s required for flash memory
   upgrades.  In most jurisdictions Cisco software licenses are not
   transferrable, so if you purcashed the access server on the
   second-hand market you will need to purchase a software license
   from Cisco or a reseller.</para>
   -->
   <para>
   シスコあるいは再販業者との現在の保守契約は、
   ソフトウェアアップデートをダウンロードするのに必要です。
   この契約には、フラッシュメモリのアップグレードに必要な、
   <acronym>ROM</acronym> に関する条項も入っています。
   ほとんどの管轄区域では、
   シスコのソフトウェアライセンスは譲渡可能にはなっていません。
   ですから、中古市場でアクセスサーバーを購入した場合は、
   シスコか再販業者から、ソフトウェアライセンスを購入する必要があると思います。
   </para>

   <figure id="ts-cisco2511-config">
   <!--
    <title>Basic configuration for <productname>Cisco
    2511</productname> terminal server to <systemitem
    class="osname">Linux</systemitem> <acronym>PC</acronym></title>
    -->
    <title>
    <systemitem class="osname">Linux</systemitem> <acronym>PC</acronym>
    がつながっている <productname>Cisco 2511</productname>
    ターミナルサーバーに対する基本設定
    </title>
<programlisting>
interface Async1
 description To Linux computer
 ip unnumbered Loopback0
 async mode interactive
 no peer default ip address

line 1
 location To Linux PC
 session-timeout 30
 no exec
 login
 modem InOut
 terminal-type vt100
 special-character-bits 8
 transport preferred none
 transport input telnet
 telnet break-on-ip
 telnet ip-on-break
 stopbits 1
 flowcontrol hardware

line vty 0 4
 location Network
 password <replaceable>PASSWORD</replaceable>
 login local
 terminal-type vt100
 transport preferred none
 transport output telnet</programlisting>
   </figure> <!-- ts-cisco2511-config -->

   <!--
   <para>There is a <ulink
   url="http://www.mcvax.org/~koen/uClinux-cisco2500/">port</ulink> of
   Linux to the <productname>Cisco 2500</productname> series of
   routers.  At the time of writing it did did not support the
   asycnhronous ports on the <productname>Cisco 2511</productname>.
   The attractiveness of running <systemitem class="osname">Linux</systemitem>
   instead of running Cisco's <productname
   class="trade">IOS</productname> is that
   <systemitem class="osname">Linux</systemitem> can support <productname
   class="trade">SSH</productname>.  At the time of writing Cisco were
   yet to release <productname>SSH</productname> on the
   <productname>Cisco 2500</productname> series of routers, although a
   unofficial beta version has been seen.</para>
   -->
   <para>
   Linux を <productname>Cisco 2500</productname> シリーズのルーターに
   <ulink url="http://www.mcvax.org/~koen/uClinux-cisco2500/">
   移植しているところ
   </ulink>
   があります。
   この <citetitle>HOWTO</citetitle> の執筆時点では、
   <productname>Cisco 2511</productname>
   で非同期ポートはサポートしていませんでした。
   シスコの <productname>IOS</productname>
   の代わりに <systemitem class="osname">Linux</systemitem>
   を動かす魅力は、
   <systemitem class="osname">Linux</systemitem> が
   <productname>SSH</productname> をサポートできるという点にあります。
   この文書の執筆時点では、非公式のベータ版は見かけましたが、
   シスコは、
   <productname>Cisco 2500</productname> シリーズのルーター用の
   <productname>SSH</productname> を、まだリリースしていませんでした。
   </para>

  </section> <!-- ts-cisco2511 -->


  <section id="ts-maxserver">
   <title>Xyplex/iTouch <productname>MAXserver
   1600</productname></title>

   <!--
   <para>A good site for information on Xyplex terminal servers is
   <ulink url="http://www.gno.org/~gdr/xyplex/"></ulink>.  Cabling is
   discussed at <ulink
   url="http://www.conserver.com/consoles/xyplexcons.html"></ulink>.</para>
   -->
   <para>
   Xyplex ターミナルサーバーに関する情報を得るのに役立つサイトは、
   <ulink url="http://www.gno.org/~gdr/xyplex/"></ulink> です。
   ケーブル配線については、
   <ulink
   url="http://www.conserver.com/consoles/xyplexcons.html"></ulink>
   で論じています。
   </para>

   <!--
   <para>The Xyplex terminal servers are now manufacturered by <ulink
   url="http://www.itouchcom.com/">iTouch Communications</ulink>.  A
   current maintenance contract with iTouch is required to download
   software updates.</para>
   -->
   <para>
   Xyplex ターミナルサーバーは、現在 
   <ulink url="http://www.itouchcom.com/">iTouch Communications</ulink>
   社が製造しています。 iTouch と結んでいる、現時点で有効な保守契約が、
   ソフトウェアアップデートのダウンロードに必要です。
   </para>

  </section> <!-- ts-xyplex -->


  <section id="ts-annex">
   <title>Xylogics/Bay/Nortel <productname>Annex</productname></title>

   <!--
   <para>A good site for information on
   <productname>Annex</productname> terminal servers is <ulink
   url="http://www.ofb.net/~jheiss/annex/"></ulink>.</para>
   -->
   <para>
   <productname>Annex</productname> のターミナルサーバーに関する情報を
   集めるのに役立つサイトは、
   <ulink url="http://www.ofb.net/~jheiss/annex/"></ulink> です。
   </para>

  </section> <!-- ts-annex -->

  <section id="ts-pm">
   <title>Livingston/Lucent <productname>Portmaster</productname></title>

   <!--
   <para>Firstly configure the terminal server, as shown in <xref
   linkend="ts-pm-basic">.  This figure uses the system name
   <literal>example</literal>, with IP address 10.1.2.3, address mask
   255.255.255.0, gateway address 10.1.2.254, and DNS server address
   10.1.1.1.  Replace these addresses with the addresses used in your
   network.</para>
   -->
   <para>
   最初に、<xref linkend="ts-pm-basic"> に示すように、
   ターミナルサーバーの設定を行ないます。
   この図では、<literal>example</literal> というシステム名を用い、
   IP アドレスは 10.1.2.3、ネットマスクは 255.255.255.0、
   ゲートウェイアドレスは 10.1.2.254、DNS サーバーのアドレスは
   10.1.1.1 にしてあります。これらのアドレスは、
   ご自分のネットワークでお使いのアドレスに置き換えて下さい。
   </para>

   <figure id="ts-pm-basic">
   <!--
    <title>Portmaster unit configuration</title>
    -->
    <title>Portmaster ユニットの設定</title>
<screen>
<userinput>set sysname example</userinput>
<userinput>set password <replaceable>PASSWORD</replaceable></userinput>
<userinput>set ether0 address 10.1.2.3</userinput>
<userinput>set ether0 netmask 255.255.255.0</userinput>
<userinput>set ether0 broadcast high</userinput>
<userinput>set gateway 10.1.2.254</userinput>
<userinput>set namesvc dns</userinput>
<userinput>set nameserver 10.1.1.1</userinput>
<userinput>save all</userinput>
</screen>
   </figure>

   <!--
   <para>Now configure each serial port of the terminal server, as
   shown in <xref linkend="ts-pm-port">.</para>
   -->
   <para>
   では、ターミナルサーバーの各シリアルポートを設定しましょう。
   その様子は、<xref linkend="ts-pm-port"> に示してあります。
   </para>

   <figure id="ts-pm-port">
   <!--
    <title>Portmaster port configuration</title>
    -->
    <title>Portmaster のポート設定</title>
<screen>
<userinput>set s0 service_device telnet 2000</userinput>
<userinput>set s0 device</userinput>
<userinput>reset s0</userinput>
<userinput>set s1 service_device telnet 2001</userinput>
<userinput>set s1 device</userinput>
<userinput>reset s1</userinput>
&hellip;
<userinput>set s29 service_device telnet 2029</userinput>
<userinput>set s29 device</userinput>
<userinput>reset s29</userinput>
<userinput>save all</userinput>
</screen>
   </figure>

   <!--
   <para>To connect to serial port 0 enter the command <userinput>telnet
   example 2000</userinput>.  Use the associated TCP port number to
   connect to telnet to the other serial devices.</para>
   -->
   <para>
   シリアルポート 0 に接続するには、
   <userinput>telnet example 2000</userinput> コマンドを実行して下さい。
   他のシリアルデバイスに telnet で接続する場合は、
   相応の TCP ポート番号を使って下さい。
   </para>

  </section> <!-- ts-pm -->
 </appendix> <!-- ts -->


 <appendix id="advice">
 <!--
  <title>Gratuitous advice for developers</title>
  -->
  <title>
  開発者へのお願い
  </title>

  <section id="advice-bootloader">
  <!--
   <title>Advice for boot loader authors</title>
   -->
   <title>
   ブートローダーの作者へのお願い
   </title>

  
  <!--
   <para>Serial console support in a boot loader is very useful.
   Thank you for supporting it.</para>
   -->
   <para>
   ブートローダーでシリアルコンソールをサポートしていることが、
   非常に役立っています。サポートしてくれて感謝します。
   </para>

   <!--
   <para>The boot loader should support the
   <productnumber>8250A</productnumber> <acronym>UART</acronym> and
   its programming-compatible <productnumber>82510</productnumber>,
   <productnumber>16450</productnumber>,
   <productnumber>16550</productnumber> and
   <productnumber>16750</productnumber> descendants.  The serial chip
   used in the <productname>IBM PC/XT</productname>, the
   <productnumber>8250</productnumber> (no A), and its
   <productnumber>8250B</productnumber> descendant need not be
   supported.  The <productnumber>8250A</productnumber> data sheet is
   <ulink
   url="http://www.intersil.com/data/FN/FN2/FN2958/FN2958.pdf"><citetitle><productnumber>82C50A</productnumber>
   <productname>CMOS Asynchronous Communications
   Element</productname></citetitle></ulink> and is updated by Intel's
   errata <ulink
   url="http://support.intel.com/support/controllers/peripheral/7513.htm"><citetitle><productnumber>82510</productnumber>
   PC Software Compatibility</citetitle></ulink>.  The
   <productnumber>16550</productnumber> data sheet is <ulink
   url="http://www.national.com/ds/PC/PC16550D.pdf"><citetitle><productnumber>PC16550D</productnumber>
   <productname>Universal Asynchronous Receiver/Transmitter with
   FIFOs</productname></citetitle></ulink>.</para>
   -->
   <para>
   ブートローダーは
   <productnumber>8250A</productnumber> <acronym>UART</acronym> と、
   そのプログラム互換の後継である、
   <productnumber>82510</productnumber>、
   <productnumber>16450</productnumber>、
   <productnumber>16550</productnumber>、および、
   <productnumber>16750</productnumber> 
   をサポートしてください。
   <productname>IBM PC/XT</productname> で使われているシリアルチップ
   <productnumber>8250</productnumber> (Aは付かない) と、その後継である
   <productnumber>8250B</productnumber> のサポートは不要です。
   <productnumber>8250A</productnumber> のデータシートは
   <ulink url="http://www.intersil.com/data/FN/FN2/FN2958/FN2958.pdf">
   <citetitle><productnumber>82C50A</productnumber>
   <productname>CMOS Asynchronous Communications Element</productname>
   </citetitle></ulink> にあり、インテルの正誤表、
   <ulink url="http://support.intel.com/support/controllers/peripheral/7513.htm">
   <citetitle><productnumber>82510</productnumber>
   PC Software Compatibility</citetitle></ulink> で更新されています。
   <productnumber>16550</productnumber> のデータシートは、
   <ulink url="http://www.national.com/ds/PC/PC16550D.pdf">
   <citetitle><productnumber>PC16550D</productnumber>
   <productname>
   Universal Asynchronous Receiver/Transmitter with FIFOs
   </productname></citetitle></ulink> です。
   </para>

   <!--
   <para>To set the serial port and serial parameters, most
   <acronym>Linux</acronym> boot loaders use a syntax modeled upon the
   kernel's <literal>console</literal> parameter.  It would be nice to
   retain this consistency, since the user needs to learn the kernel
   syntax in any case.</para>
   -->
   <para>
   シリアルポートとシリアルパラメータを設定するため、
   <acronym>Linux</acronym> のブートローダーのほとんどは、
   カーネルの
   <literal>コンソール</literal>パラメータをモデルにした構文を使っています。
   いずれにせよ、ユーザーはカーネル構文を覚える必要がありますから、
   このまま一貫性を維持するのはうまいやり方だろうと思います。
   </para>

   <!--
   <para>The default value should be 9600<abbrev>bps</abbrev>, 8 data
   bits, no parity, 1 stop bit and
   <acronym>CTS</acronym>/<acronym>RTS</acronym> flow control.  This
   gives the maximum interoperability with the other programs that use
   the serial console.</para>
   -->
   <para>
   デフォルト値は 9600<abbrev>bps</abbrev>、 データは 8 ビット、
   パリティ無し、 ストップビットは 1 ビット それに
   <acronym>CTS</acronym>/<acronym>RTS</acronym> のフロー制御にしてください。
   こうしておけば、
   シリアルコンソールを使う他のプログラムとの相互運用性が最大になります。
   </para>

   <!--
   <para>Please do not ignore the lower speeds, as remote serial
   console is at its most valuable when the computer is located three
   days walk up a mountain in the New Guinea highlands.  It is
   difficult to get more than 75<abbrev>bps</abbrev> from
   <acronym>HF</acronym> radio under adverse sky conditions.</para>
   -->
   <para>
   低速もどうか無視しないで下さい。ニューギニア高地の、
   徒歩で三日かけて登るような山中にコンピュータがある場合、
   リモートのシリアルコンソールは、一番価値があります。
   天候条件が悪い中で、
   <acronym>短波(HF)</acronym> 無線で 75<abbrev>bps</abbrev>
   を越える速度を出すのは困難です。
   </para>

   <!--
   <para>Be conservative in your use of the modem status lines.  Even
   if you are ignoring incoming status (<acronym>DSR</acronym>,
   <acronym>DCD</acronym>) and handshaking lines (<acronym>RTS</acronym>)
   at least assert the outgoing status (<acronym>DTR</acronym>) and
   handshaking (<acronym>CTS</acronym>) lines.  Correctly configured
   modems will not receive calls with <acronym>DTR</acronym> low, and
   dropping <acronym>DTR</acronym> will cause the modem to hang
   up.</para>
   -->
   <para>
   モデムのステータスラインを使う場合は、従来のやり方に従って下さい。
   着信のステータス（<acronym>DSR</acronym> と <acronym>DCD</acronym>）
   や、ハンドシェークライン（<acronym>RTS</acronym>）を無視していても、
   少なくとも送出するステータス（<acronym>DTR</acronym>) と、ハンドシェーク
   (<acronym>CTS</acronym> のラインは、アサートするようにして下さい。
   正しく設定したモデムは、
   <acronym>DTR</acronym> が落ちている時に、着信は受けません。
   それに <acronym>DTR</acronym> を落とすと、
   モデムがハングアップすることになります。
   </para>

   <!--
   <para>Consider that the <acronym>BIOS</acronym> may have already
   initialised the <acronym>UART</acronym> and provide a configuration
   option to allow the boot loader to be informed of that.  When the
   boot loader initialises the <acronym>UART</acronym>,
   <acronym>DTR</acronym> will fall and the line will hang up.  In some
   scenarios each hang up requires the satelite circuit to be
   re-booked before another call can be placed. </para>
   -->
   <para>
   <acronym>BIOS</acronym> が、すでに <acronym>UART</acronym>
   を初期化してあり、
   ブートローダーにそのことを知らせることができる、
   設定オプションを用意しているかもしれません。
   このことを考えに入れて下さい。
   ブートローダーが <acronym>UART</acronym> を初期化すると、
   <acronym>DTR</acronym> が落ちて、ラインはハングアップします。
   場合によっては、ハングアップするたびに衛星回線を再予約しないと、
   別の電話が着信できなくなります。
   </para>

   <!--
   <para>Cater for line noise.  Imagine the boot loader starting and
   then being sent nonsensical characters every few seconds.  Although
   this is certainly wrong, a fault in a modem is difficult to
   remotely diagnose and correct if the machine is left stranded at
   the boot loader prompt.  A solution is to boot the default image
   upon the expiry of a timer; the boot occurring even if the user (or
   line noise) has started to type.  For example the boot loader
   configuration could say:</para>
   -->
   <para>
   ラインノイズに関する要件を満たして下さい。ブートローダーがスタートして、
   それから無意味な文字を 2、3 秒ごとに出している、と想像してみてください。
   これは無論まずいのですが、
   もしマシンが、ブートローダーのプロンプトで、立往生したままだとすると、
   モデム内の障害を、遠隔地から診断して、修復するのは困難です。
   解決方法は、タイマーの時間切れで、
   デフォルトイメージをブートすることです。
   もしユーザー（あるいはラインノイズ）がタイプを始めたとしても、
   ブートは始まります。
   例えば、ブートローダーの設定は以下のようにできます。
   </para>

   <informalfigure>
<programlisting>
<!--
<lineannotation>&num; Start the machine regardless after 30 minutes
&num;   30 * 60 seconds per minute * units of tenths of seconds</lineannotation>
-->
<lineannotation># 30分後にとにかくマシンをスタートさせる
#   30 * 60 秒 * 10 分の 1 秒単位</lineannotation>
<command>lifetime 18000</command></programlisting>
   </informalfigure>

   <!--
   <para>The default should be no life timer.  The timer is also
   useful in high availability applications: when a machine is used in
   environments with an planned availability of 99.999% the lifetime
   value should be configured to three minutes or less.</para>
   -->
   <para>
   デフォルトでは ライフタイマーは無いはずです。
   このタイマーは、利用率が高いアプリケーションでも役に立ちます。
   利用率が 99.999% になるように計画されている環境でマシンを使う場合、
   この &quot;lifetime&quot;値は、3 分前後に設定してください。
   </para>

   <!--
   <para>Check information read from the BIOS for reasonablness.  For
   example, if the BIOS's Extended Data Area suggests 0x000 as the
   address for the serial port's registers then don't try to
   initialise the registers.</para>
   -->
   <para>
   BIOS から読み込んだ情報が正しいことを確認して下さい。例えば、
   もしシリアルポートのレジスタアドレスは 0x000 だと、
   BIOS の拡張データエリアが示唆している場合は、
   レジスタを初期化しようとしないでください。
   </para>

  </section> <!-- advise-bootloader -->


  <section id="advice-bios">
  <!--
   <title>Advice for <acronym>BIOS</acronym> authors</title>
   -->
   <title>
   <acronym>BIOS</acronym> の作者へのお願い
   </title>

   <!--
   <para>Thank you for adding support for remote operations to your
   <acronym>BIOS</acronym>.  A few points will maximize the benefits of
   that support, most of them are listed in <xref
   linkend="advice-bootloader">.</para>
   -->
   <para>
   皆さんの <acronym>BIOS</acronym>
   に、リモート操作のサポートを追加してくれて感謝します。
   2、3 改善すれば、これをサポートしている利点が最大になります。
   そのほとんどは、<xref linkend="advice-bootloader"> に載せてあります。
   </para>

   <itemizedlist>
    <listitem>
    <!--
     <para>Keep the user interface simple.  There is no need for fancy
     cursor-addressed terminal support.  Fancy features simply limit
     the number of client terminal emulators that can be used.  A
     surprising number of these have very buggy <acronym>DEC</acronym>
     <productname>VT100</productname> implementations.</para>
     -->
     <para>
     ユーザーインタフェースは、単純なままにしておいて下さい。
     派手なカーソルで指し示すような端末を、サポートする必要はありません。
     見栄えの良い機能を付けても、
     使える端末エミュレータクライアントの数を、制限するだけです。
     驚くほど多数の端末エミュレータが、
     非常にバグが多い <acronym>DEC</acronym>
     <productname>VT100</productname> を実装しています。
     </para>

     <!--
     <para>In addition to supporting lower speeds, also test your user
     interface at low data rates.</para>
     -->
     <para>
     低速をサポートする他に、
     データ転送量が少ない場合の、ユーザーインタフェースも試験して下さい。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Don't do too much.  In <systemitem class="osname">Linux</systemitem> the
     boot loader and operating system both have explicit support for a
     serial console.  So all the <acronym>BIOS</acronym> need do is to
     support the a serial interface for itself.
     <systemitem class="osname">Linux</systemitem> has no need for a generic serial
     redirection facility.  If you do provide such a facility for
     other operating systems, please allow it to be disabled after
     system boot.</para>
     -->
     <para>
     あまりやり過ぎないで下さい。
     <systemitem class="osname">Linux</systemitem> では、
     ブートローダーとオペレーティングシステムの両方が、
     シリアルコンソールを明示的にサポートしています。
     ですから <acronym>BIOS</acronym> に必要なのは、
     <acronym>BIOS</acronym>
     自身のシリアルインタフェースをサポートすることだけです。
     <systemitem class="osname">Linux</systemitem>
     は、汎用のシリアルリダイレクション機能を、サポートする必要はありません。
     どうしても他のオペレーティングシステム用に、そういった機能を用意する場合は、
     ぜひシステムブート後に、その機能を無効にできるようにして下さい。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Don't allow line noise to prevent the computer from
     booting.  Don't require just one key to enter the
     <acronym>BIOS</acronym> configuration, make your users and your
     marketing people happy by using a phrase like
     <literal>dell</literal>, <literal>hp</literal> or
     <literal>ibm</literal>. Copy the <literal>lifetime</literal> idea
     from <xref linkend="advice-bootloader">.</para>
     -->
     <para>
     ラインノイズのせいで、コンピュータがブートできなくなるようにはしないで下さい。
     <acronym>BIOS</acronym>
     の設定画面に入るのに、必要なキー入力が一つしかない、
     ということは止めて下さい。
     <literal>dell</literal> や <literal>hp</literal> あるいは
     <literal>ibm</literal> のようにフレーズを使って、
     ユーザーや営業部門の人たちをハッピーにして下さい。
     <literal>lifetime</literal> のアイデアは、
     <xref linkend="advice-bootloader">からコピーして下さい。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Present a consistent prompt.  Imagine a user with a
     supercomputer array of five hundred <acronym>PC</acronym>s.  You
     want to change a <acronym>BIOS</acronym> parameter.  Make it easy
     for <application><ulink
     url="http://expect.nist.gov/">Expect</ulink></application> to set
     those parameters.</para>
     -->
     <para>
     首尾一貫したプロンプトを表示して下さい。
     500 台の <acronym>PC</acronym> 
     を、スーパーコンピュータアレイにして使っているユーザーを想像してみてください。
     自分でも <acronym>BIOS</acronym> のパラメータを変えたいしょう。
     <application>
     <ulink url="http://expect.nist.gov/">Expect</ulink></application>
     が、そのパラメータを設定しやすいようにして下さい。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Make sure the <systemitem class="osname">Linux</systemitem> utilities
     work.  Check that the <systemitem class="osname">Linux</systemitem>
     <function>nvram</function> device driver returns the full
     contents of <acronym>CMOS</acronym>.  This makes it simple to set
     the same <acronym>CMOS</acronym> settings on a large number of
     machines.  The commands in <xref linkend="advice-bios-nvramget">
     and <xref linkend="advice-bios-nvramset"> should work to copy the
     <acronym>BIOS</acronym> settings from one machine to another, where
     the make, model and <acronym>BIOS</acronym> versions of the
     machines are the same.</para>
     -->
     <para>
     <systemitem class="osname">Linux</systemitem>
     のユーティリティが動作することを保証して下さい。
     <systemitem class="osname">Linux</systemitem> の
     <function>nvram</function> デバイスドライバが、
     <acronym>CMOS</acronym> の内容をすべて返すかどうか確認して下さい。
     そうすれば、大量のマシンで簡単に、同じ内容の <acronym>CMOS</acronym> 
     設定ができます。
     <xref linkend="advice-bios-nvramget"> と
     <xref linkend="advice-bios-nvramset"> にあるコマンドが、
     あるマシンから別のマシンへ、
     <acronym>BIOS</acronym> の設定をコピーするように動作するはずです。
     ここでいうマシンの型、モデル、および
     <acronym>BIOS</acronym> のバージョンは同一です。
     </para>

     <figure id="advice-bios-nvramconfig">
     <!--
      <title>Configuring /dev/nvram to access the
      <acronym>CMOS</acronym> configuration</title>
      -->
      <title>
      /dev/nvram を設定して、<acronym>CMOS</acronym> の設定にアクセスする
      </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>/dev/MAKEDEV nvram</command>
<prompt>bash#</prompt> <command>vi /etc/modules.conf</command>
</screen>
<programlisting>
alias char-major-10-144 nvram
</programlisting>
<screen format="linespecific">
<prompt>bash#</prompt> <command>depmod -a</command>
</screen>
     </figure>

     <figure id="advice-bios-nvramget">
     <!--
      <title>Getting the <acronym>CMOS</acronym> configuration</title>
      -->
      <title>
      <acronym>CMOS</acronym> の設定を得る
      </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>cat /dev/nvram &gt; /etc/nvram.bin</command>
</screen>
     </figure>

     <figure id="advice-bios-nvramset">
     <!--
      <title>Setting the <acronym>CMOS</acronym> configuration</title>
      -->
      <title>
      <acronym>CMOS</acronym> の内容を設定する
      </title>
<screen format="linespecific">
<prompt>bash#</prompt> <command>cat /etc/nvram.bin &gt; /dev/nvram</command>
</screen>
     </figure>
    </listitem>

    <listitem>
    <!--
     <para>Have a flash <acronym>BIOS</acronym> upgrade program that
     works from <systemitem class="osname">Linux</systemitem>.  Make the source
     code to this available.  Or publish the specifications so that
     one can be written.</para>
     -->
     <para>
     <systemitem class="osname">Linux</systemitem>
     から動かせる、フラッシュ <acronym>BIOS</acronym>
     のアップグレードプログラムを用意して下さい。
     そしてそのソースコードが利用できるようにして下さい。
     あるいは、仕様を公開して下さってもかまいません。
     そうすれば、そういうプログラムは書けます。
     </para>

     <!--
     <para>Many flash <acronym>BIOS</acronym> update programs run from
     a Microsoft <productname><acronym>MS-DOS</acronym></productname>
     boot diskette.  Please check that the program also works with the
     similar <productname>Free<acronym>DOS</acronym></productname>
     operating system.  Many Linux computers do not have licenses for
     Microsoft operating system software, so legally creating a
     <productname><acronym>MS-DOS</acronym></productname> boot
     diskette may not be possible.</para>
     -->
     <para>
     フラッシュ <acronym>BIOS</acronym> のアップデートプログラムは、
     その多くがマイクロソフトの 
     <productname><acronym>MS-DOS</acronym></productname>
     のブートディスクから起動します。
     そのアップデートプログラムが、
     同じような <productname>Free<acronym>DOS</acronym></productname>
     でも動作するかどうか、ぜひ調べて下さい。
     Linux コンピュータの多くは、マイクロソフトのオペレーティングシステム
     ソフトウェアのライセンスを持っていません。
     ですから、法律上は、
     <productname><acronym>MS-DOS</acronym></productname> のブート
     ディスク作成が不可能です。
     </para>
    </listitem>

    <listitem>
    <!--
     <para>Be clear in the documentation about what serial servies the
     BIOS provides.  Some <acronym>BIOS</acronym>s with a
     &lsquo;serial redirection&rsquo; feature don't allow the
     <acronym>BIOS</acronym> to be redirected to a plain text
     terminal, but instead use a proprietary protocol.  This isn't of
     much use to <systemitem class="osname">Linux</systemitem> serial
     console users.</para>
     -->
     <para>
     BIOS が備えているシリアルサービスについて、
     ドキュメントで明らかにして下さい。
     &lsquo;シリアルリダイレクション&rsquo; 機能を持っている
     <acronym>BIOS</acronym> の中には、 <acronym>BIOS</acronym>
     を普通のテキスト端末にリダイレクトできず、
     その代わりに専用のプロトコルを使うようになっているものがあります。
     でもこれでは、
     <systemitem class="osname">Linux</systemitem>
     のシリアルコンソールユーザーには、ほとんど役に立ちません。
     </para>
    </listitem>

   </itemizedlist>

  </section> <!-- advice-bios -->

 </appendix> <!-- advice -->


 <appendix id="about">
 <!--
  <title>About this <citetitle>HOWTO</citetitle></title>
  -->
  <title>
  この <citetitle>HOWTO</citetitle> について
  </title>

  <section id="about-copyright">
  <!--
   <title>Copyright</title>
   -->
   <title>
   著作権
   </title>

   <para>本節の邦訳は参考です。正式なものは英文をお読み下さい。</para>

   <para>The first edition of this document is copyright &copy; 2001
   Mark <abbrev>F.</abbrev> Komarinski and is distributed under the
   terms of the <citetitle>Linux Documentation Project
   (<acronym>LDP</acronym>) License</citetitle>, see <xref
   linkend="about-copyright-ldp">.</para>

   <para>
   本文書の初版の著作権は copyright &copy; 2001 Mark <abbrev>F.</abbrev> Komarin
ski と
   なっており、
   <citetitle>Linux Documentation Project (<acronym>LDP</acronym>) License</citetitle> の
   条件下で配布されています。当該ライセンスについては、
   &quot;Linux Documentation Project License&quot; のセクションをみて下さい。
   </para>

   <para>The revisions to this document for the second edition are
   copyright &copy; AARNet Pty Ltd (Australian Company Number 084 540
   518), 2001&hyphen;2002.  These parts were written by Glen Turner.
   He asserts his moral rights to be identified as one of the authors
   of this work under the <citetitle>Copyright Act 1968 (Commonwealth
   of Australia)</citetitle>.  The Australian Academic and Research
   Network and Glen Turner distribute these parts under the terms of
   the <citetitle>Linux Documentation Project (<acronym>LDP</acronym>)
   License</citetitle>, see <xref
   linkend="about-copyright-ldp">.</para>

   <para>
   第二版についての本文書の改訂版の著作権は 
   copyright &copy; AARNet Pty Ltd (Australian Company Number 084 540
   518), 2001&hyphen;2002 となっています。これらの部分は 
   Glen Turner が書きました。
   <citetitle>Copyright Act 1968 (Commonwealth of Australia)</citetitle> の
   下で、Glen Turner は自分がこの文書の著者の一人であると証明する
   道義的権利を主張します。
   The Australian Academic and Research Network と Glen Turner は
   <citetitle>Linux Documentation Project (<acronym>LDP</acronym>) License</citetitle> の
   条件下でこれらの部分を配布します。当該ライセンスについては、
   &quot;Linux Documentation Project License&quot; のセクションをみて下さい。
   </para>

   <para>This license meets the <ulink
   url="http://www.debian.org/social_contract.html#guidelines">Debian
   Free Software Guidelines</ulink>, so you should find this
   <citetitle>HOWTO</citetitle> in the Debian package
   <filename>doc-linux-html</filename>.</para>

   <para>
   本ライセンスは <ulink
   url="http://www.debian.org/social_contract.html#guidelines">Debian
   Free Software Guidelines</ulink> を満たしていますので、
   この <citetitle>HOWTO</citetitle> は Debian パッケージの 
   <filename>doc-linux-html</filename> にあるはずです。
   </para>

   <section id="about-copyright-ldp">

    <title><citetitle>Linux Documentation Project
    License</citetitle></title>

   <para>本節の邦訳は参考です。正式なものは英文をお読み下さい。</para>

    <para>Unless otherwise stated, <systemitem
    class="osname">Linux</systemitem> <citetitle>HOWTO</citetitle>
    documents are copyrighted by their respective authors. <systemitem
    class="osname">Linux</systemitem> <citetitle>HOWTO</citetitle>
    documents may be reproduced and distributed in whole or in part,
    in any medium physical or electronic, as long as this copyright
    notice is retained on all copies. Commercial redistribution is
    allowed and encouraged; however, the author would like to be
    notified of any such distributions.</para>

    <para>
    他に特別明言されていない限り、
    <systemitem class="osname">Linux</systemitem> 
    <citetitle>HOWTO</citetitle> 文書の著作権は個々の著者に属する。
    この著作権の告知がそのすべての複製で維持される限り、
    <systemitem class="osname">Linux</systemitem> 
    <citetitle>HOWTO</citetitle> 文書は、その全体、あるいはその一部を、
    どのような物理的ないし電子的媒体で、再作成ないし配布しても良い。
    商業的再配布はこれを許可し、また奨励する。ただし
    そのような配布はいずれもその著者に通知してもらいたい。
    </para>

    <para>All translations, derivative works, or aggregate works
    incorporating any <systemitem class="osname">Linux</systemitem>
    <citetitle>HOWTO</citetitle> documents must be covered under this
    copyright notice. That is, you may not produce a derivative work
    from a <citetitle>HOWTO</citetitle> and impose additional
    restrictions on its distribution. Exceptions to these rules may be
    granted under certain conditions; please contact the <systemitem
    class="osname">Linux</systemitem> <citetitle>HOWTO</citetitle>
    coordinator at the address given below.</para>

    <para>
    翻訳物、派生した著作、ないしは 
    <systemitem class="osname">Linux</systemitem>
    <citetitle>HOWTO</citetitle> 文書を組み込んだ集合的著作は、すべて
    この著作権の告知の下で保護されねばならない。すなわち、
    <citetitle>HOWTO</citetitle> から派生した著作を作成しその配布物
    に新たな制約を課することをしてはならない。ある条件下ではこれら
    の規則に対する例外も許可される。その場合はどうか
    <systemitem class="osname">Linux</systemitem> 
    <citetitle>HOWTO</citetitle> 調整担当者へ下記アドレス宛てに連絡
    してもらいたい。
    </para>

    <para>In short, we wish to promote dissemination of this
    information through as many channels as possible. However, we do
    wish to retain copyright on the <citetitle>HOWTO</citetitle>
    documents, and would like to be notified of any plans to
    redistribute the <citetitle>HOWTO</citetitle>s.</para>

    <para>
    つまり我々はできる限り多くの経路を通じて、この情報の普及を促進する
    ことを望んでいる。しかしながらこの <citetitle>HOWTO</citetitle> 
    文書の著作権を維持することは切に望んでいるし、この 
    <citetitle>HOWTO</citetitle> の再配布案はどんなものであれ、通知して
    もらいたい。
    </para>

    <para>If you have any questions, please contact
    <email>linux-howto@metalab.unc.edu</email>.</para>

    <para>
    どんなものであれ質問があれば、どうか 
    <email>linux-howto@metalab.unc.edu</email> に連絡してもらいたい。
    </para>

   </section> <!-- about-copyright-ldp -->

  </section>  <!-- about-copyright -->


  <section id="about-disclaimer">
   <!--
   <title>Disclaimer</title>
   -->
   <title>免責条項</title>

   <para>本節の邦訳は参考です。正式なものは英文をお読み下さい。</para>

   <para>No liability for the contents of this documents can be
   accepted.  Use the concepts, examples and other content at your own
   risk.  As this is a new edition of this document, there may be
   errors and inaccuracies, that may of course be damaging to your
   system.  Proceed with caution, and although this is highly
   unlikely, the author(s) do not take any responsibility for
   that.</para>

   <para>
   本文書の内容に関するいかなる責任も負わない。その概念、例、および
   その他の内容は自分の責任において使用すること。これは本文書の
   新しい版であるから、間違いや不正確な記述はありうるし、読者の
   システムに被害をあたえることも当然ありうる。慎重に進めてもらいたい。
   被害を与えることはまずないだろうが、もし被害を与えたとしても、
   著者はいかなる責任も負わない。
   </para>

   <para>All copyrights are held by their by their respective owners,
   unless specifically noted otherwise.  Use of a term in this
   document should not be regarded as affecting the validity of any
   trademark or service mark.</para>

   <para>
   すべての著作権は特に他で明記しない限り、個々の所有者が所有する。
   この文書内の用語の使用は、どのような商品商標あるいは役務商標の
   有効性にも影響すると見なすべきではない。
   </para>

   <para>Naming of particular products or brands should not be seen as
   endorsements.</para>

   <para>
   特定の製品ないし商標の名称に言及しても、それが是認されていると見なす
   べきではない。
   </para>

   <para>You are strongly recommended to take a backup of your system
   before major installation and backups at regular intervals.</para>

   <para>
   危険を伴うインストールを行なう場合は、事前にバックアップをとり、
   かつ定期的にバックアップをとることを、読者には強く推奨する。
   </para>

  </section> <!-- about-disclaimer -->


  <section id="about-credits">
<!--
   <title>Acknowledgments</title>
   -->
   <title>謝辞</title>

   <!--
   <para>The first edition of this <citetitle>HOWTO</citetitle> was
   written by Mark Komarinski.  It was based upon
   <filename>/usr/src/linux/Documentation/serial-console.txt</filename>,
   which was written by Miquel van Smoorenburg.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> の初版は、Mark Komarinski が書きました。
   これは Miquel van Smoorenburg が書いた、
   <filename>/usr/src/linux/Documentation/serial-console.txt</filename>
   に基づいていました。
   </para>

   <!--
   <para>The second edition of this <citetitle>HOWTO</citetitle> was
   written by the staff of the <ulink
   url="http://www.aarnet.edu.au/">Australian Academic and Research
   Network</ulink>, mainly Glen Turner and David Vu.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> の第二版は
   <ulink url="http://www.aarnet.edu.au/">
   Australian Academic and Research Network</ulink>のスタッフ、主に
   Glen Turner と David Vu が書きました。
   </para>

   <!--
   <para>The following people have contributed to this
   <citetitle>HOWTO</citetitle>.  They are listed in no particular
   order.</para>
   -->
   <para>
   次の人たちからは、この <citetitle>HOWTO</citetitle> に援助をいただきました。
   順不同で掲載します。
   </para>

   <variablelist>
    <varlistentry>
     <term>LinuxSA mailing list</term>
     <listitem>
     <!--
      <para>Proof reading of the Second Edition.  <ulink
      url="http://www.linuxsa.org.au/">LinuxSA</ulink> is a
      <systemitem class="osname">Linux</systemitem> user group based
      in South Australia.</para>
      -->
      <para>
      第二版の校正。<ulink url="http://www.linuxsa.org.au/">LinuxSA</ulink> 
      というのは南オーストラリアに本拠をおく 
      <systemitem class="osname">Linux</systemitem> ユーザーグループです。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term>David Lawyer</term>
     <listitem>
     <!--
      <para>Technical review of the Second Edition and recommending
      the updated <citetitle>HOWTO</citetitle> to the Linux
      Documentation Project.  David is author of the <ulink
      url="http://www.tldp.org/HOWTO/Text-Terminal-HOWTO.html"><citetitle>Text-Terminal-HOWTO</citetitle></ulink>.</para>
      -->
      <para>
      第二版の技術レビューと、更新した この <citetitle>HOWTO</citetitle>
      の Linux Documentation Project への推薦。
      David は <ulink 
      url="http://www.tldp.org/HOWTO/Text-Terminal-HOWTO.html">
      <citetitle>Text-Terminal-HOWTO</citetitle></ulink> 
      <footnote><para>
      <ulink url="http://www.linux.or.jp/JF/JFdocs/Text-Terminal-HOWTO.html"><citetitle>Text-Terminal-HOWTO</citetitle></ulink> です。
      </para></footnote>
      の著者です。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term>Devin Reade</term>
     <listitem>
     <!--
      <para>Xyplex terminal server information.  Devin maintains
      information about Xyplex terminal servers at <ulink
      url="http://www.gno.org/~gdr/xyplex/"></ulink>.</para>
      -->
      <para>
      Xyplex ターミナルサーバーの情報。Devin は 
      <ulink url="http://www.gno.org/~gdr/xyplex/"></ulink> で、
      Xyplex ターミナルサーバーに関する情報の保守をしています。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Michael Brown, Marc Mondragon and other members of the
     <citetitle>Linux on Dell PowerEdge</citetitle> mailing
     list</term>
     -->
     <term>
     Linux on Dell PowerEdge mailing list の 
     Michael Brown, Marc Mondragon および 他のメンバー
     </term>
     <listitem>
     <!--
      <para>Technically described how the <acronym>BIOS</acronym>
      redirects characters to the serial port.  The <citetitle>Linux
      on Dell PowerEdge</citetitle> list can be subscribed to by
      sending a message containing <literal>subscribe
      linux-poweredge</literal> to
      <email>linux-poweredge-request@dell.com</email>.</para>
      -->
      <para>
      <acronym>BIOS</acronym> 
      が文字をどうやってシリアルポートにリダイレクトするのかを、
      技術的に説明してくれました。
      <citetitle>Linux on Dell PowerEdge list</citetitle> は、
      <literal>subscribe linux-poweredge</literal> という文を含む
      メッセージを、
      <email>linux-poweredge-request@dell.com</email>
      に送れば購読できます。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Thomas Lunde and Gabor Kiss</term>
     -->
     <term>Thomas Lunde と Gabor Kiss</term>
     <listitem>
     <!--
      <para>Noticed errors of grammar and typography.</para>
      -->
      <para>文法の誤りとタイプミスを指摘してくれました。</para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term>Darren Young</term>
     <listitem>
     <!--
      <para>Updates to
      <filename>/etc/security/console.perms</filename> for
      <productname>Red Hat Linux</productname>
      <productnumber>7.2</productnumber>.</para>
      -->
      <para>
      <productname>Red Hat Linux</productname> のバージョン 
      <productnumber>7.2</productnumber> 用に、
      <filename>/etc/security/console.perms</filename> を更新してくれました。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Yasufumi Haga</term>
     -->
     <term>芳賀靖史</term>
     <listitem>
     <!--
      <para>Spotted many errors whilst translating this
      <citetitle>HOWTO</citetitle> into Japanese for the
      <acronym>JF</acronym> Linux documentation endeavour.</para>
      -->
      <para>
      この <citetitle>HOWTO</citetitle> を
      <acronym>JF</acronym> Linux documentation プロジェクト向けに、
      日本語に翻訳するかたわら、沢山の間違いを指摘してくれました。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term>Thomas Horsley</term>
     <listitem>
     <!--
      <para>Pointed out that the <application>X Window
      System</application> may still need to be running even if a
      serial console is used.  Supplied the <command>gdm</command>
      configuration used in <xref
      linkend="misc-init-x11-gdmconf">.</para>
      -->
      <para>
      シリアルコンソールを使っていても、
      <application>X Window System</application>
      は動かす必要があるかもしれないことを指摘してくれました。
      <xref linkend="misc-init-x11-gdmconf">
      で使用している、
      <command>gdm</command> の設定をいただきました。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Greg Matthews, Nathan Neulinger and Romildo Wildgrube</term>
     -->
     <term>Greg Matthews, Nathan Neulinger および Romildo Wildgrube</term>
     <listitem>
     <!--
      <para>Encountered and reported that machines hang when booting
      if kernel parameter
      <literal>console=ttyS</literal>&hellip;<literal>r</literal> is
      used.  This is due to a kernel bug which loops testing
      <acronym>CTS</acronym> without firstly checking that
      <acronym>DSR</acronym> and <acronym>DCD</acronym> are
      asserted.</para>
      -->
      <para>
      カーネルパラメータに
      <literal>console=ttyS</literal>&hellip;<literal>r</literal>
      を使うとマシンがハングしてしまったので、
      そのことを報告してくれました。
      これは最初に <acronym>DSR</acronym> と <acronym>DCD</acronym>
      がアサートされているかどうかを調べずに、
      <acronym>CTS</acronym> を検査するループを行なっているという、
      カーネルのバグによるものです。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
    <!--
     <term>Shaun Karl and Keisuke Nakao</term>
     -->
     <term>Shaun Karl と Keisuke Nakao</term>
     <listitem>
     <!--
      <para>Procedures for <productname>Debian
      <acronym>GNU</acronym>/Linux</productname>.</para>
      -->
      <para>
      <productname>Debian <acronym>GNU</acronym>/Linux</productname>
      用の手順をいただきました。
      </para>
     </listitem>
    </varlistentry>

    <varlistentry>
     <term>Igor Sviridov</term>
     <listitem>
     <!--
      <para>Configuration of <productname>Livingstone
      Portmaster</productname> terminal server in <xref
      linkend="ts-pm">.</para>
      -->
      <para>
      <xref linkend="ts-pm"> で使用している、
      <productname>Livingstone Portmaster</productname>
      の設定をいただきました。
      </para>
     </listitem>
    </varlistentry>
   </variablelist>

  </section> <!-- about-credits -->


  <section id="about-feedback">
  <!--
   <title>Comments and corrections</title>
   -->
   <title>
   コメントと訂正
   </title>

   <!--
   <para>The current maintainer of this <citetitle>HOWTO</citetitle>
   is <author><firstname>Glen</firstname>
   <surname>Turner</surname></author>.  Please send corrections,
   additions, comments and criticisms to
   <email>glen.turner+howto@aarnet.edu.au</email>.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> を現在保守しているのは 
   <author><firstname>Glen</firstname> <surname>Turner</surname></author> 
   です。どうか訂正や追加、コメント、そして批評は 
   <email>glen.turner+howto@aarnet.edu.au</email> に送って下さい。
   </para>

   <!--
   <para>The maintainer would also appreciate e-mails from people that
   have sucessfully used this <citetitle>HOWTO</citetitle> to
   configure serial consoles on their machines.  Please state the
   version of the <citetitle>HOWTO</citetitle> you used (see the cover
   page), your <systemitem class="osname">Linux</systemitem>
   distribution and its version, and the number of machines involved.
   This information allows the maintainer to show his employer
   sufficient public benefit for his work on this
   <citetitle>HOWTO</citetitle> to continue and will not be used for
   any other purpose.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle> を使って、
   自分たちのマシンでシリアルコンソールがうまく設定できたという
   電子メールを送ってくれた皆さんにも感謝します。
   お使いの <citetitle>HOWTO</citetitle> のバージョン
   （表紙を参照して下さい）や、
   <systemitem class="osname">Linux</systemitem> ディストリビューション名
   とそのバージョン、対象マシン数は、
   ぜひ明示して下さい。
   その情報があれば、保守担当者は自分の雇主に、
   この <citetitle>HOWTO</citetitle> に関わる作業を続けることで生まれる
   充分な公共の利益を示すことができます。その情報は、他のどのような
   目的にも使用しません。
   </para>

   <!--
   <para><systemitem class="osname">Linux</systemitem> is continually
   improving, so please send those small alterations required for the
   latest version of your <systemitem
   class="osname">Linux</systemitem> distribution.</para>
   -->
   <para>
   <systemitem class="osname">Linux</systemitem>
   の改善は続いています。
   ですから、ご自分の <systemitem class="osname">Linux</systemitem> 
   ディストリビューションの最新バージョンに必要な、そういった小さな
   部分的な変更点もどうか送って下さい。
   </para>

   <!--
   <para>The <citetitle>HOWTO</citetitle>'s maintainer is not a
   professional writer.  If you find some parts of this
   <citetitle>HOWTO</citetitle> difficult to comprehend then let the
   maintainer know.</para>
   -->
   <para>
   この <citetitle>HOWTO</citetitle>
   の著者は著述を専門にしているわけではありません。
   ですからもし理解し難い部分などが見つかったら、
   そのときは保守している人に知らせてあげて下さい。
   </para>

  </section> <!-- about-feedback -->

  <section id="thanksjp">
   <title>
   日本語版謝辞
   </title>
   <Para>
   校正にあたり、JF プロジェクトの皆様にご協力いただきました。
   特に、以下の方々（順不同）には貴重なアドバイスをいただきました。
   この場を借りて、御礼申し上げます。鈴木康弘さん、Akihiro KODAさん、
   Seiji Kaneko さん、高橋聡さん、中野武雄さん、山下義之さん、
   日下部陽一さん、小野間博さん、佐野武俊さん、山崎康宏さん。
   もし、洩れがありましたらご連絡下さい。早急に対処いたします。
   </Para>
  </section>
 </appendix> <!-- about -->


 <colophon id="colophon">

 <!--
  <para>Written in DocBook 4.1 <acronym>SGML</acronym>.
  <application>XEmacs</application> and the
  <application><acronym>PSGML</acronym></application> package were
  used to create the <acronym>SGML</acronym> source file. The
  <acronym>HTML</acronym>, <productname>PostScript</productname> and
  <productname><acronym>PDF</acronym></productname> output was
  generated from the DocBook source by the Linux Documentation
  Project.</para>
  -->
  <para>
  この文書は DocBook 4.1 <acronym>SGML</acronym> で書かれています。
  <acronym>SGML</acronym> ソースファイルを生成するために 
  <application>XEmacs</application> と 
  <application><acronym>PSGML</acronym></application> を使用しました。
  <acronym>HTML</acronym> と <productname>PostScript</productname> 
  および <productname><acronym>PDF</acronym></productname> の出力は、
  Linux Documentation Project の手により、DocBook ソースから生成され
  ました。
  </para>

  <!--
  <para>It appears that some character entities such as quotes
  (&lsquo;&rsquo; &ldquo;&rdquo;) and ellipses (&hellip;), appear as
  ampersands (&amp;) in the
  <productname><acronym>PDF</acronym></productname> generated by the
  Linux Documentation Project.  In this case you may wish to download
  the <ulink
  url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/ps/Remote-Serial-Console-HOWTO.ps.gz"><productname>PostScript</productname>
  file</ulink> and use <ulink
  url="http://www.cs.wisc.edu/~ghost/"><application>GhostScript</application></ulink>
  to convert the <productname>PostScript</productname> file to
  <productname><acronym>PDF</acronym></productname> with the
  command:</para>
  -->
  <para>
  Linux Documentation Project で生成した 
  <productname><acronym>PDF</acronym></productname> では、
  引用符（&lsquo;&rsquo; &ldquo;&rdquo;）や省略符号といったような文字が、
  アンパサンド（&amp;）になっているようです。そういう時はおそらく、
  <ulink
  url="http://www.ibiblio.org/pub/Linux/docs/HOWTO/other-formats/ps/Remote-Serial-Console-HOWTO.ps.gz"><productname>PostScript</productname>
  file</ulink> をダウンロードしてから、
  <ulink
  url="http://www.cs.wisc.edu/~ghost/"><application>GhostScript</application></ulink>
  を使い、以下のコマンドで <productname>PostScript</productname>
  ファイルを <productname><acronym>PDF</acronym></productname> 
  に変換してもかまいません。
  </para>

<screen format="linespecific" linenumbering="unnumbered">
<prompt>bash$</prompt> <userinput>gs -q -dNOPAUSE -dBATCH -dSAFER \
-dNOPLATFONTS -dMaxSubsetPct=100  -dSubsetFonts=true -dEmbedAllFonts=true \
-sPAPERSIZE=a4 -sDEVICE=pdfwrite -dCompatibilityLevel=1.2 \
-sOutputFile=Remote-Serial-Console-HOWTO.pdf \
-c .setpdfwrite -f Remote-Serial-Console-HOWTO.ps</userinput>
</screen>

 </colophon>

</book> <!-- Remote-Serial-Console-HOWTO -->


<!-- Keep this comment at the end of the file for Emacs's PSGML
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-namecase-general:t
sgml-general-insert-case:lower
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:nil
sgml-parent-document:nil
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->
