(1) Update console-server article. The stallion drivers were updated

with FreeBSD 4.4 making the patch unnecessary.  Also, the various
  versions of the console-server software in the ports collection has
  changed rendering the existing material misleading.

* While here, wordsmith and correct two mispelled words.

(1) Submitted by: Dmitry Morozovsky <marck@rinet.ru>
This commit is contained in:
Murray Stokely 2004-08-01 07:01:13 +00:00
parent f962d385e1
commit f2a0ff2b31
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/head/; revision=21748

View file

@ -36,8 +36,8 @@
</legalnotice>
<abstract>
<para>This document describes how you can use &os;, hardware and
software that runs on &os; to set up a <quote>console server</quote>;
<para>This document describes how you can use &os;
to set up a <quote>console server</quote>. A console server is
a machine that you can use to monitor the consoles of many other
machines, instead of a bunch of serial terminals.</para>
</abstract>
@ -322,21 +322,17 @@
<title>Setting Up The Server</title>
<sect2 id="patching-stallion">
<title>Patching the Stallion driver</title>
<title>Checking the Stallion driver</title>
<para>&os; has adequate support for modern Stallion cards since
4.4 release. If you are running an older version of &os;, you
will need to upgrade to a more modern version of &os; (which
you should do anyway, to make sure your system is not
vulnerable to known security issues). See the <ulink
url="../../books/handbook/makeworld.html">&os;
Handbook</ulink> for information about updating your
system.</para>
<para>The only hitch with setting up the server PC is getting the device
drivers for the Stallion card. &os; has supported Stallion ISA
cards for many years, but unfortunately the driver has not been
actively maintained for some years, and does not support the newer
Stallion cards (such as the &easyio; PCI card or some of the other ISA
cards with newer UART chips). I have put together a <ulink
URL="stal-jumbo-patch">patch file</ulink> for &os; 4.3 (based on
the work of many other people) that will update the system to support
these newer cards. Hopefully, this patch will be committed to the
&os; tree in time for the 4.4 release. If you are running &os;
4 from prior to this time, you will need to download and apply this
patch (instructions are included at the top of the patch file). If
you are running &os; 3, then you had probably best upgrade.</para>
</sect2>
<sect2 id="configuring-kernel">
@ -350,16 +346,6 @@
Handbook</ulink>.</para>
</sect2>
<sect2 id="building-world">
<title>Building World</title>
<para>After applying the patch you will certainly need to update the
whole system, including all the user programs and the kernel. See the
documentation in <filename>/usr/src/UPDATING</filename> and the <ulink
URL="../../books/handbook/makeworld.html">&os;
Handbook</ulink>.</para>
</sect2>
<sect2 id="making-devices">
<title>Making The Devices</title>
@ -388,8 +374,9 @@
<note>
<para>See the section on <application>conserver</application> versions
<xref linkend="conserver-versions">; the version I use is not the one
available in the &os; ports collection.)</para>
<xref linkend="conserver-versions">; the version I use is
available in the &os; ports collection; however, it is not the only
one.)</para>
</note>
<para>There are two ways to install <application>conserver</application>.
@ -401,10 +388,10 @@
<para>Using the ports is a bit cleaner, as the package system can then
keep track of installed software and cleanly delete them when not
being used. Download the port framework from <ulink
URL="conserver-port.tar.gz">here</ulink>, unpack it to create a
directory called <filename>conserver-port</filename>. Change into
that directory and (as <username>root</username>) type:</para>
being used. I recommend using the
<filename role="package">comms/conserver-com</filename> port.
Change into the
port directory and (as <username>root</username>) type:</para>
<screen>&prompt.root; <userinput>make DEFAULTHOST=<replaceable>consolehost</replaceable> install</userinput></screen>
@ -448,7 +435,7 @@
the console server.</para>
<para>Download the file from the <ulink
URL="ftp://ftp.conserver.com/conserver/conserver-7.0.2.tar.gz">conserver.com
URL="ftp://ftp.conserver.com/conserver/conserver-8.1.9.tar.gz">conserver.com
FTP site</ulink>. Extract it into a handy directory then
configure it by running</para>
@ -935,7 +922,7 @@ exit 0</programlisting>
<listitem>
<para>I think that all Cisco gear that has RJ-45 console ports and
runs &os;will have the same cable requirements. But best to
runs &ios; will have the same cable requirements. But best to
check first. We have tried this on 1600s and 2600s only.</para>
<para>Both the Stallion card and the 2600 have RJ-45 connections,
@ -1049,7 +1036,7 @@ exit 0</programlisting>
<emphasis>really</emphasis> hard as they do not make RJ-45
serial line testers!</para>
<para>Let me state this more stongly: Be <emphasis>very</emphasis>
<para>Let me state this more strongly: Be <emphasis>very</emphasis>
sure that you label this cable in a way that is easily,
instantly and permanently recognisable as a special cable and
not easily confused with normal drop cables. Some suggestions
@ -1099,7 +1086,7 @@ exit 0</programlisting>
to be used with the shipped (hardwired) RJ-45 - DB-25 and
RJ-45&ndash;DB-9 headshells for console connections. Ours are
2m long, either light blue or black, and are quite flat.
Attempts to use them for 100baseT ethernet will fail miserably!
Attempts to use them for 100baseT Ethernet will fail miserably!
You can tell it is a rollover cable by holding both ends with
the cable pointing down and the clip pointing away from you.
Check the colour of the leads in each pin in the two connectors,
@ -1280,7 +1267,9 @@ exit 0</programlisting>
<para>We have confirmed by direct testing that neither the Cisco 16xx,
26xx, or &catalyst; hardware suffers from the <literal>BREAK</literal> sent
when the Stallion card loses power.</para>
when the Stallion card loses power. Contemporary Cisco software listens
for <literal>BREAK</literal> signal only for first 30 seconds after
power-on or reboot.</para>
</sect1>
<sect1 id="freebsd">
@ -1319,8 +1308,7 @@ exit 0</programlisting>
<para>If you are not going to have any keyboard/video screen on this
server at all, you should find all the lines for
<devicename>ttyv0</devicename> through
<devicename>ttyv8</devicename>:</para>
<devicename>ttyv</devicename> devices like</para>
<programlisting>ttyv1 "/usr/libexec/getty Pc" cons25 on secure</programlisting>
@ -1369,14 +1357,15 @@ exit 0</programlisting>
<para>The <application>conserver</application> program has fractured into
a number of versions. The home page referenced below seems to be the
latest and most featureful version around, and carries a version number
of <quote>7.0.2</quote>. This is maintained by Bryan Stansell
latest and most featureful version around, and for July 2004 carries a version number
of <quote>8.1.9</quote>. This is maintained by Bryan Stansell
<email>bryan@conserver.com</email>, who has brought together the work of
many people (listed on his webpage).</para>
<para>The &os; ports collection contains a port for version 8.5 of
<application>conserver</application>.
This seems to be older and less featureful than the 7.0.2
<application>conserver</application> at
<filename role="package">comms/conserver</filename>.
This seems to be older and less featureful than the 8.1.9
version (in particular, it does not support consoles connected to
terminal server ports and does not support a
<filename>conserver.passwd</filename> file), and is written in a fairly
@ -1385,61 +1374,16 @@ exit 0</programlisting>
<email>ksb+conserver@sa.fedex.com</email> who did most of the original
work on <application>conserver</application>,
and whose work Bryan Stansell is building on. The
8.5 version does support one feature not in the 7.0.2 version
8.5 version does support one feature not in the 8.1.9 version
(controlling power to remote machines via a specific serial-interfaced
power controller hardware).</para>
<para>Beginning with December 2001, Brian's version (currently 8.1.9) is
also presented in ports collection at
<filename role="package">comms/conserver-com</filename>. We therefore
recommend you to use this version as it is much more appropriate for
console server building.</para>
<para>As shipped with &os;, the 8.5 version does not authenticate
against &os; servers using &man.md5.1; passwords. There is a patch in the
&os; <application>GNATS</application> system (which you can view at <ulink
URL="http://www.FreeBSD.org/cgi/query-pr.cgi?pr=28432">ports/28432</ulink>)
that fixes this problem. Kevin has indicated this patch will be
included in future versions of <application>conserver</application> from him.
There are a couple
of other problems with the 8.5 version as well.</para>
<itemizedlist>
<listitem>
<para>It is hard to rotate log files, as
<application>conserver</application> does not create a PID file and
killing the parent <application>conserver</application> process does
not kill the children
(which have the logfiles open).</para>
</listitem>
<listitem>
<para>Compiling it (on anything other than &os;) is a pain because
it depends on a couple of other large programs to compile. This is
because it is not written in C but in a macro language that produces
C code, and so depends on these macro processors. The intent of
this macro language is to hide system dependencies. The 7.0.2
version uses GNU configure for the same task, and compiling this
version on &solaris; is a breeze. (Compiling 8.5 is easier on &os;
as the ports framework takes care of all this for you).</para>
</listitem>
<listitem>
<para>After compiling on &solaris;, the
<application>console</application> program would not authenticate
against the <application>conserver</application> program on &os;,
because it used <function>getpass</function> on &solaris; that
silently truncates passwords to 8 characters. &os; uses <acronym>MD5</acronym>
passwords that can be (and in our case, are) longer than 8
characters.</para>
</listitem>
<listitem>
<para>There was some confusion about the role of <quote>groups</quote>
in <application>conserver</application>. When replaying log
messages in 8.5, it seemed to replay messages from all consoles in
the group, whereas 7.0.2 seems to do the obvious thing and keep
output from individual consoles separate. (This may well have just
been boneheaded setup mistakes on my part however.) The upshot was
that the 8.5 version needed a new group (and process) per console,
whereas the 7.0.2 version will happily support multiple ports per
process.</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="links">
@ -1455,10 +1399,10 @@ exit 0</programlisting>
</varlistentry>
<varlistentry>
<term><ulink URL="ftp://ftp.conserver.com/conserver/conserver-7.0.2.tar.gz">ftp://ftp.conserver.com/conserver/conserver-7.0.2.tar.gz</ulink></term>
<term><ulink URL="ftp://ftp.conserver.com/conserver/conserver-8.1.9.tar.gz">ftp://ftp.conserver.com/conserver/conserver-8.1.9.tar.gz</ulink></term>
<listitem>
<para>The source tarball for version 7.0.2 of
<para>The source tarball for version 8.1.9 of
<application>conserver</application>.</para>
</listitem>
</varlistentry>
@ -1516,146 +1460,22 @@ exit 0</programlisting>
</variablelist>
</sect1>
<sect1 id="files">
<title>Files</title>
<itemizedlist>
<listitem>
<para><ulink URL="stal-jumbo-patch">stal-jumbo-patch</ulink>.
Stallion Jumbo Patch for &os; 4 (unzipped, 400&nbsp;KB).</para>
</listitem>
<listitem>
<para><ulink URL="stal-jumbo-patch.gz">stal-jumbo-patch.gz</ulink>.
Stallion Jumbo Patch for &os; 4 (gzipped, 140&nbsp;KB).</para>
</listitem>
<listitem>
<para><ulink URL="conserver-port.tar.gz">conserver-port.tar.gz</ulink>.
A &os; port framework for <application>conserver</application> 7.0.2.</para>
</listitem>
<listitem>
<para><ulink URL="conserver-port.shar">conserver-port.shar</ulink>.
The port framework as a SHAR file.</para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="manpages">
<title>Manual Pages</title>
<itemizedlist>
<listitem>
<para><ulink URL="console.html">console(8)</ulink></para>
<para><ulink URL="http://www.conserver.com/docs/console.man.html">console(8)</ulink></para>
</listitem>
<listitem>
<para><ulink URL="conserver.html">conserver(8)</ulink></para>
<para><ulink URL="http://www.conserver.com/docs/conserver.man.html">conserver(8)</ulink></para>
</listitem>
<listitem>
<para><ulink URL="conserver.cf.html">conserver.cf(5)</ulink></para>
<para><ulink URL="http://www.conserver.com/docs/conserver.cf.man.html">conserver.cf(5)</ulink></para>
</listitem>
</itemizedlist>
</sect1>
<sect1 id="changelog">
<title>Change Log</title>
<variablelist>
<varlistentry>
<term>10 July, 2001</term>
<listitem>
<itemizedlist>
<listitem>
<para>Initial version announced on &os; and Sage-AU mailing
lists.</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry>
<term>12 July, 2001</term>
<listitem>
<itemizedlist>
<listitem>
<para>Notes on some commercial console servers from Doug
Schache.</para>
</listitem>
<listitem>
<para>Grrr. Fixed the pinout for the Cisco - Stallion RJ-45
cable. The cable would have worked but was backwards. The
new table now reflects the description.</para>
</listitem>
<listitem>
<para>Noted that &catalyst; cable is a 26xx cable plugged in the
other way around.</para>
</listitem>
<listitem>
<para>Added notes about RJ-45 pin numberring and color coding
conventions.</para>
</listitem>
<listitem>
<para>Added notes about serial console on &os;/i386
platforms.</para>
</listitem>
<listitem>
<para>Now in RCS.</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry>
<term>13 July, 2001</term>
<listitem>
<itemizedlist>
<listitem>
<para>Notes on cable marking from Hugh Irvine.</para>
</listitem>
<listitem>
<para>Notes on custom-made cables, source for headshells.</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
<varlistentry>
<term>18 July, 2001</term>
<listitem>
<itemizedlist>
<listitem>
<para>Links to Black Box adapters.</para>
</listitem>
<listitem>
<para>Fix dates. It is July, already!</para>
</listitem>
<listitem>
<para>Pointers to commercial solutions and
serial-port-on-other-server setup.</para>
</listitem>
<listitem>
<para>Pointer to <command>openssl passwd</command>
command.</para>
</listitem>
</itemizedlist>
</listitem>
</varlistentry>
</variablelist>
</sect1>
</article>