Only one console per technology type. Setting timezone. Use off parameter rather than comments in inittab. Cable lengths.

This commit is contained in:
gdt 2003-01-20 02:54:02 +00:00
parent 35e2b474fe
commit 614e6d32b7
1 changed files with 189 additions and 67 deletions

View File

@ -5,7 +5,7 @@
<title>Remote Serial Console HOWTO</title>
<pubdate>v2.4 2002-10-03</pubdate>
<pubdate>v2.5 2003-01-20</pubdate>
<authorgroup>
<author>
@ -30,19 +30,31 @@
<revhistory>
<revision>
<revnumber>2.4</revnumber> <date>2002-10-03</date>
<revnumber>2.5</revnumber>
<date>2003-01-20</date>
<authorinitials>gdt</authorinitials> <revremark>Only one console
per technology type. Setting timezone. Use off parameter rather
than comments in inittab. Cable lengths.</revremark>
</revision>
<revision>
<revnumber>2.4</revnumber>
<date>2002-10-03</date>
<authorinitials>gdt</authorinitials>
<revremark>Kernel flow control bug, more cabling, Debian,
Livingston Portmaster, typos (especially those found during
translation to Japanese).</revremark>
</revision>
<revision>
<revnumber>2.3</revnumber> <date>2002-07-11</date>
<revnumber>2.3</revnumber>
<date>2002-07-11</date>
<authorinitials>gdt</authorinitials>
<revremark>Updates for Red Hat Linux 7.3, corrections to serial
port speeds and UARTs, ioctlsave.</revremark>
</revision>
<revision>
<revnumber>2.2</revnumber>
<date>2002-05-22</date>
<authorinitials>gdt</authorinitials>
<revremark>Minor changes</revremark>
</revision>
<revision>
@ -150,9 +162,9 @@
<title>Why use a serial console?</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
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>
@ -1026,9 +1038,9 @@ setserial /dev/ttyS2 uart none port 0x0 irq 0
console message to be read.</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>
<acronym>CR</acronym> <acronym>LF</acronym> (carriage return then
line feed). Set the transmitted end of line characters to just
<acronym>CR</acronym> (carriage return).</para>
<para>If you are using a terminal emulator then it is best to
choose to emulate the popular <acronym>DEC</acronym>
@ -1231,7 +1243,7 @@ setserial /dev/ttyS2 uart none port 0x0 irq 0
<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
Otherwise go 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>
@ -1834,12 +1846,17 @@ serial 0 9600</programlisting>
kernel</title>
<para>The <systemitem class="osname">Linux</systemitem> kernel is
configured to use a serial console by passing it the
configured to select the 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
<literal>console</literal> parameter can be given repeatedly, but
the parameter can only be given once for each console technology.
So <literal>console=tty0 console=lp0 console=ttyS0</literal> is
acceptable but <literal>console=ttyS0 console=ttyS1</literal> will
not work.</para>
<para>When multiple consoles are listed 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>The syntax of the <literal>console</literal> parameter is
@ -2193,6 +2210,26 @@ APPEND console=tty0 console=ttyS0,9600n8</programlisting>
</screen>
</figure>
<para>A <application>getty</application> is also responsible for
setting the time zone when a permanently-connected remote terminal
is located beyond the machine's default time zone. The
<application>getty</application> overrides the default timezone by
setting the <envar>TZ</envar> environment variable. As with the
<envar>TERM</envar> environment variable, a user connecting from a
modem can interactively override the default time zone.</para>
<figure id="getty-tz">
<title>Interactively altering the connecting terminal's time zone</title>
<screen>
<prompt>bash$</prompt> <command>TZ=Australia/Adelaide</command>
<prompt>bash$</prompt> <command>export TZ</command>
</screen>
</figure>
<para>If you do not know your time zone name, run the
<command>tzselect</command> utility to generate the appropiate
contents for <envar>TZ</envar>.</para>
<para>But first, let's see how <application>getty</application> gets
started in the first place.</para>
@ -2554,11 +2591,11 @@ port ttyS0
<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
2:2345:off:/sbin/mingetty tty2
3:2345:off:/sbin/mingetty tty3
4:2345:off:/sbin/mingetty tty4
5:2345:off:/sbin/mingetty tty5
6:2345:off:/sbin/mingetty tty6
</programlisting>
</figure>
@ -3092,7 +3129,7 @@ SAFE=yes</programlisting>
<informalfigure>
<screen format="linespecific">
<prompt>bash#</prompt> <command>shutdown -h now</command></screen>
<prompt>bash#</prompt> <command>shutdown -r now</command></screen>
</informalfigure>
<para>During reboot the terminal should see the usual boot loader
@ -4528,23 +4565,17 @@ Transmit data ---------------------- Receive data</programlisting>
</section> <!-- serial-pc-terminal -->
<section id="serial-manufacture">
<title>Making serial cables</title>
<section id="serial-distance">
<title>Lengths of serial cables</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>The <acronym>RS-232</acronym> standard will drive at least 15
metres of shielded cable. More precisely, an
<para>The <acronym>RS-232</acronym> standard 9600bps port will
drive 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>
capacitance of up to 2500 picoFarad with low enough skew to allow a
9600bps signal to be recovered.</para>
<para>For example,
<para>If you select a cable with lower capacitance you can drive
further distances. 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
@ -4559,19 +4590,59 @@ Transmit data ---------------------- Receive data</programlisting>
capacitance cables which can be driven up to
100<acronym>m</acronym>.</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>Similarly, if you select a lower data rate you can drive
further distances. <xref linkend="serial-manufacture-distance">
shows the maximum distances over standard shielded cable at
differing data rates.</para>
<table frame="topbot" colsep="0" rowsep="0" id="serial-manufacture-distance">
<title>Data rates and the maximum distances recommended in
<citetitle>RS-232</citetitle></title>
<tgroup cols="2">
<colspec colname="bps" align="center">
<colspec colname="m" align="center">
<thead>
<row>
<entry colname="bps">Data rate (bps)</entry>
<entry colname="m">Distance (m)</entry>
</row>
</thead>
<tbody>
<row>
<entry colname="bps"><para>2400</para></entry>
<entry colname="m"><para>60</para></entry>
</row>
<row>
<entry colname="bps"><para>4800</para></entry>
<entry colname="m"><para>30</para></entry>
</row>
<row>
<entry colname="bps"><para>9600</para></entry>
<entry colname="m"><para>15</para></entry>
</row>
<row>
<entry colname="bps"><para>19200</para></entry>
<entry colname="m"><para>7.6</para></entry>
</row>
<row>
<entry colname="bps"><para>38400</para></entry>
<entry colname="m"><para>3.7</para></entry>
</row>
<row>
<entry colname="bps"><para>56000</para></entry>
<entry colname="m"><para>2.6</para></entry>
</row>
</tbody>
</tgroup>
</table> <!-- serial-manufacture-distance -->
<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>
you might note that 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>For longer distances use an <acronym>RS-232</acronym> line
driver; these will typically drive up to 2000 meters over category
@ -4579,16 +4650,35 @@ Transmit data ---------------------- Receive data</programlisting>
using fiber optical modems, the global telephony system, the mobile
telephony system, satellite or radio.</para>
</section>
<section id="serial-manufacture">
<title>Making serial cables</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>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. You might choose to use shielded UTP
cables (these require special RJ-45 plugs but use standard RJ-45
sockets).</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>
use traditional shielded cable and metal RS-232 connector shells.
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 shell 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>If you are making one of these cables and have some soldering
skill, you can easily do the jumpering of the signal wires within
@ -4935,7 +5025,7 @@ Press CTRL-A Z for help on special keys
<section id="modem-hayes-speaker">
<title>Configure silent connection</title>
<title>Optionally, configure silent connection</title>
<para>Most modems have a speaker. By default this is connected
whilst a modem is connecting and negotiating a common protocol and
@ -5701,7 +5791,7 @@ READY: press any key to continue...</guilabel>
the block is sent again.</para>
<para><application>Xmodem</application> is a simple protocol, as
you would expect of a program written for 8-bit computers runing
you would expect of a program written for 8-bit computers running
<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
@ -5738,9 +5828,9 @@ Bytes Sent: 3072/ 10000 BPS:2185 ETA 00:09</guilabel>
and <application>Ymodem</application>'s
<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>Useful <application>Zmodem</application> abilities are
resuming failed uploads and sending multiple files in a single
upload session.</para>
<para>An implementation of <application>Xmodem</application>,
<application>Ymodem</application> and
@ -6905,12 +6995,13 @@ EOF
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>
terminal server changes hands.</para>
<para>Many vendors 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>Many older terminal servers are no longer sold or supported
by their vendors. Search the vendor's web site for &ldquo;end of
@ -7340,7 +7431,7 @@ alias char-major-10-144 nvram
<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.
518), 2001&hyphen;2003. 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
@ -7547,6 +7638,19 @@ alias char-major-10-144 nvram
</listitem>
</varlistentry>
<varlistentry>
<term>Sue Bauer-Lee</term>
<listitem>
<para>Suggested using the <literal>off</literal> clause in
<filename>/etc/inittab</filename> in <xref
linkend="getty-mingetty-inittab"> rather than commenting or
deleting the excess <application>mingetty</application>
invocations. This has the advatage that no automated system
administration tool will restore the excess
<filename>inittab</filename> entries.</para>
</listitem>
</varlistentry>
</variablelist>
</section> <!-- about-credits -->
@ -7623,6 +7727,24 @@ alias char-major-10-144 nvram
</book> <!-- Remote-Serial-Console-HOWTO -->
<!-- Updating this HOWTO using CVS
# Initialise
mkdir cvs
cd cvs
export CVSROOT=:pserver:USERID@cvs.tldp.org:/cvsroot
cvs -d $CVSROOT login
mkdir -p LDP/howto/docbook
cd LDP/howto/docbook
cvs get Remote-Serial-Console-HOWTO.sgml
# Update HOWTO, by copying local updated copy over CVS original copy
cd cvs/LDP/howto/docbook
export CVSROOT=:pserver:USERID@cvs.tldp.org:/cvsroot
cvs update Remote-Serial-Console-HOWTO.sgml
cp ~/Remote-Serial-Console-HOWTO.sgml Remote-Serial-Console-HOWTO.sgml
cvs ci -m 'COMMENT' Remote-Serial-Console-HOWTO.sgml
mail submit@en.tldp.org
-->
<!-- Keep this comment at the end of the file for Emacs's PSGML
Local variables: