home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Caldera Network Desktop 1.0
/
caldera-network-desktop-1.0.bin
/
doc
/
HOWTO
/
mini
/
Getty-ps
< prev
next >
Wrap
Text File
|
1994-09-05
|
16KB
|
407 lines
Mini getty_ps-HOWTO
by Mark Horton mah@ka4ybr.com, mah@ka4ybr.atl.ga.us
OK, this seems to keep cropping up and I'm getting tired of
emailing what works for me and serial lines and getty and
uugetty (sorry about all the ands :) above !) so I'm posting
this to c.o.l.help instead. IMHO, mgetty+sendfax is a very
nice package if you want to doitall with a single modem
line. However, to create a getty/uugetty situation which
serves dial-up lines, uucp in and outbound, and serial local
devices, the getty_ps package (again IMHO) is an excellent
way to go.
The suggestions below work on my systems and have, in one form
or another, worked for almost two years of my Linux experiences.
The fact that they work for me does NOT mean they are guaranteed
to work for you.... I hope they do and make your life easier...
if not, please accept my apologies and condolences. If you
have any suggestions or improvements to these procedures,
(other than "Stuff it up your $#@(%^") please contact me. If
you have questions about them and/or problems in getting your
setup to work, please feel free to email me... I will try to
answer any questions I can, but please give me a little more
than "It don't work!" to go on... :)
-- Mark
So, all verbage and b.s. aside, here's my "cookbook" configuration:
0. a. Get getty_ps-2.0.7e from sunsite.unc.edu
b. Decide if you want to use the new FSSTND or not.
(This from the Makefile) :
# FSSTND Compliance:
# If you want getty_ps to comply with the upcoming FSSTND document,
# uncomment the following line. As a result, all config files will
# be expected in /etc/conf.* rather than /etc/default, modem locks
# will be created in /var/lock, and binaries will go in /sbin.
#
# FSSTND=-DFSSTND
I commented it out since I'm a curmudgeon and LIKE my defaults
in /etc/default (and couldn't figure out if the formats were
the same for the /etc/conf.* format... I admit it, I'm lazy)
I also didn't want to mess with Taylor and wanted my locks
left in /usr/spool/uucp. You will also note in the following
examples that I have violated the rules and put my executables
for getty and uugetty in /etc.... if you don't like it, put
them in /sbin or /bin if it pleases you... it's YOUR system!
c. READ the README.linux file to figure out where you want things
and how you want to proceed!!!!!!!!!!!!!!!!!!!
d. "make" and "make install"
e. Move getty and uugetty to where you want them. (I like /etc)
f. Make changes to /etc/inittab, /etc/gettydefs (or use defaults
in the distribution subdirectory Examples - I highly recommend
this! It helps you avoid oversites like forgetting the INITLINE
parameter for manual (program) answering and wondering why the
modems just ring... and ring.... and ring....) *blush*
g. Move the examples to /etc/default if you use that configuration
or figure out what they look like with the new FSSTND config. and
put them there.
h. Hack the uugetty.ttyS? and getty.ttyS? entries as desired (my
sample uugetty.ttyS? is below.)
i. Change your /etc/rc.d/rc.serial as desired for your ports -
remember - you have to do this even with the standard ports!
Make sure it gets executed on startup (a safe place to put it
is in rc.local! :) NOTE: if you have a serial rodent and use
the selection package, be sure to execute rc.serial PRIOR to
starting up selection!
j. Make the necessary changes to the uucp files Systems, Dialers,
Devices, and Permissions.
k. Shutdown and reboot with the new getty. Have your boot diskettes
handy in case of finger-checks... init is not too kind about errors
in /etc/inittab!
l. try dialing out on one of your uucp lines (I like to use "cu -d" for
this so I can see that all is working as planned) and adjust as
necessary.
m. For nasty problems, use the -D777 flag in /etc/inittab for the
lines in question to figure out what's going on... REMEMBER to
change it back after all is clean or you'll be burning up disk
space at a furious rate!
1. /etc/rc.d/rc.serial : (I use 2 STB-4COM cards)
(yours WILL most likely be different - read the man page!)
#
# /etc/rc.serial
# Initializes the serial ports on your system
#
# Version 2.01
cd /dev
SETSERIAL="/bin/setserial -b"
PORTS=`echo cua?`
echo -n "Configuring serial ports...."
# Do wild interrupt detection
#
${SETSERIAL} -W ${PORTS}
#
# MANUAL CONFIGURATION
#
${SETSERIAL} /dev/cua0 -- uart 16550A port 0x3f8 irq 4 -fourport
${SETSERIAL} /dev/cua1 -- uart 16550A port 0x2f8 irq 4 -fourport
${SETSERIAL} /dev/cua2 -- uart 16550A port 0x3e8 irq 4 -fourport
${SETSERIAL} /dev/cua3 -- uart 16550A port 0x2e8 irq 4 -fourport
${SETSERIAL} /dev/cua4 -- uart 16550A port 0x1f8 irq 3 -fourport
${SETSERIAL} /dev/cua5 -- uart 16550A port 0x1e8 irq 3 -fourport
${SETSERIAL} /dev/cua6 -- uart 16550A port 0x2a8 irq 3 -fourport
${SETSERIAL} /dev/cua7 -- uart 16550A port 0x1a8 irq 3 -fourport
#
###########################################################
#
# Print the results of the serial configuration process
#
###########################################################
echo "done."
${SETSERIAL} -bg ${PORTS}
2. /etc/gettydefs (pretty much what comes with getty_ps):
# [ put this file in /etc/gettydefs ]
#
# This file contains the startup and final flags for the
# tty lines. Each line starts with a SPEED value; this is
# the same SPEED that you pass to [uu]getty. Note that the
# SPEED identifier is just a string; use whatever names
# you want.
#
# The blank lines in this file are important (so I hear).
#
# The flags are the same flags you would pass to the stty
# program.
#
# Format: <speed># <init flags> # <final flags> #<login string>#<next-speed>
#
#
# Virtual Console entry
VC# B38400 SANE CLOCAL # B38400 SANE -ISTRIP CLOCAL #@S login: #VC
# 38400 fixed baud Dumb Terminal entry
DT38400# B38400 CS8 CLOCAL CRTSCTS # B38400 SANE -ISTRIP CLOCAL CRTSCTS #@S login: #DT38400
# 19200 fixed baud Dumb Terminal entry
DT19200# B19200 CS8 CLOCAL # B19200 SANE -ISTRIP CLOCAL #@S login: #DT19200
# 9600 baud Dumb Terminal entry
DT9600# B9600 CS8 CLOCAL # B9600 SANE -ISTRIP CLOCAL #@S login: #DT9600
# 38400 fixed-baud modem entry
F38400# B38400 CS8 # B38400 SANE -ISTRIP HUPCL #@S login: #F38400
# 19200 fixed-baud modem entry
F19200# B19200 CS8 CRTSCTS # B19200 SANE -ISTRIP HUPCL CRTSCTS #@S login: #F19200
# 9600 fixed-baud modem entry
F9600# B9600 CS8 # B9600 SANE -ISTRIP HUPCL #@S login: #F9600
# 38400 autobauding Modem entry with hard flow control
38400# B38400 CS8 CRTSCTS # B38400 SANE -ISTRIP HUPCL CRTSCTS #@S login: #38400
19200# B19200 CS8 CRTSCTS # B19200 SANE -ISTRIP HUPCL CRTSCTS #@S login: #19200
9600# B9600 CS8 CRTSCTS # B9600 SANE -ISTRIP HUPCL CRTSCTS #@S login: #9600
2400# B2400 CS8 CRTSCTS # B2400 SANE -ISTRIP HUPCL CRTSCTS #@S login: #2400
1200# B1200 CS8 CRTSCTS # B1200 SANE -ISTRIP HUPCL CRTSCTS #@S login: #1200
300# B300 CS8 CRTSCTS # B300 SANE -ISTRIP HUPCL CRTSCTS #@S login: #300
3. /etc/inittab (modified per getty_ps documentation) :
#
# inittab This file describes how the INIT process should set up
# the system in a certain run-level.
#
# Version: @(#)inittab 2.04 17/05/93 MvS
#
# Author: Miquel van Smoorenburg, <miquels@drinkel.nl.mugnet.org>
#
# Default runlevel.
id:5:initdefault:
# System initialization (runs when system boots).
si:S:sysinit:/etc/rc.d/rc.S
# Script to run when going single user.
su:S:wait:/etc/rc.d/rc.K
# Script to run when going multi user.
rc:123456:wait:/etc/rc.d/rc.M
# What to do at the "Three Finger Salute".
ca::ctrlaltdel:/sbin/shutdown -t3 -rf now
# What to do when power fails (shutdown to single user).
pf::powerfail:/sbin/shutdown -f +5 "THE POWER IS FAILING"
# If power is back before shutdown, cancel the running shutdown.
pg:0123456:powerokwait:/sbin/shutdown -c "THE POWER IS BACK"
# If power comes back in single user mode, return to multi user mode.
ps:S:powerokwait:/sbin/init 5
# The getties in multi user mode on consoles an serial lines.
#
# NOTE NOTE NOTE adjust this to your getty or you will not be
# able to login !!
#
# Note: for 'agetty' you use linespeed, line.
# for 'getty_ps' you use line, linespeed and also use 'gettydefs'
c1:12345:respawn:/etc/getty tty1 VC
c2:12345:respawn:/etc/getty tty2 VC
c3:45:respawn:/etc/getty tty3 VC
c4:45:respawn:/etc/getty tty4 VC
c5:45:respawn:/etc/getty tty5 VC
c6:45:respawn:/etc/getty tty6 VC
c7:45:respawn:/etc/getty tty7 VC
c8:45:respawn:/etc/getty tty8 VC
c9:45:respawn:/etc/getty tty9 VC
cx:45:respawn:/etc/getty tty10 VC
cy:45:respawn:/etc/getty tty11 VC
# cz:456:respawn:/etc/getty tty12 VC
# Serial lines
# To turn on debugging insert the -Dnnn parameter ex.:
# s3:45:respawn:/etc/uugetty -D777 ttyS3 F19200 vt100
# Debug levels: (from getty.h)
# define D_OPT 0001 /* option settings */
# define D_DEF 0002 /* defaults file processing */
# define D_UTMP 0004 /* utmp/wtmp processing */
# define D_INIT 0010 /* line initialization (INIT) */
# define D_GTAB 0020 /* gettytab file processing */
# define D_RUN 0040 /* other runtime diagnostics */
# define D_RB 0100 /* ringback debugging */
# define D_LOCK 0200 /* uugetty lockfile processing */
# define D_SCH 0400 /* schedule processing */
# define D_ALL 0777 /* all priorities */
#
s0:45:respawn:/etc/getty ttyS0 DT9600
s1:45:respawn:/etc/getty ttyS1 DT9600
s2:45:respawn:/etc/getty ttyS2 DT9600
s3:45:respawn:/etc/uugetty ttyS3 19200 vt100
s4:45:respawn:/etc/uugetty ttyS4 19200 vt100
s5:45:respawn:/etc/getty ttyS5 DT9600
s6:45:respawn:/etc/uugetty ttyS6 19200 vt100
s7:45:respawn:/etc/getty ttyS7 DT9600
# Runlevel 6 used to be for an X-window only system, until we discovered
# that it throws init into a loop that keeps your load avg at least 1 all
# the time. Thus, there is now one getty opened on tty6. Hopefully no one
# will notice. ;^)
# It might not be bad to have one text console anyway, in case something
# happens to X.
x1:6:wait:/etc/rc.d/rc.6
# End of /etc/inittab
4. /etc/default/uugetty.ttyS4 (a sample)
[note: the init string is for DSI Scout+ modems - yours WILL
most likely be different!]
# sample uugetty configuration file for a Hayes compatible modem to allow
# incoming modem connections
#
# this config file sets up uugetty to answer with a WAITFOR string. When
# using waitfor, it is necessary to specify INITLINE=cua?
ISSUE=/etc/issue
LOGIN=/bin/login
# line to use to do initialization. All INIT, OFF, and WAITFOR functions
# are handled on this line. If this line is not specified, any other
# program that wants to share the line (like kermit, uucp, seyon) will
# fail. This line will also be checked for lockfiles.
#
# format: <line> (without the /dev/)
INITLINE=cua4
# timeout to disconnect if idle...
TIMEOUT=60
# modem initialization string... Sets the modem to disable auto-answer
#
# format: <expect> <send> ... (chat sequence)
INIT="" \d+++\dAT\r OK\r\n ATH0\r OK\r\n AT\sM0\sE1\sQ0\sV1\sX4\sS0=0\s*S0\s*M0\s*T0\r OK\r\n
# waitfor string... if this sequence of characters is received over the line,
# a call is detected.
WAITFOR=RING
# this line is the connect chat sequence. This chat sequence is performed
# after the WAITFOR string is found. The \A character automatically sets
# the baudrate to the characters that are found, so if you get the message
# CONNECT 2400, the baud rate is set to 2400 baud.
#
# format: <expect> <send> ... (chat sequence)
CONNECT="" ATA\r CONNECT\s\A
# this line sets the time to delay before sending the login banner
DELAY=2
5. /var/lib/uucp/hdb_config/Devices (this is a Slackware dist.)
# Devices
#
# Everybody works at these speeds :
ACU cua3 - 9600 scout \D
ACU cua4 - 9600 scout \D
ACU cua6 - 9600 scout \D
#
ACU cua3 - 2400 scout \D
ACU cua4 - 2400 scout \D
ACU cua6 - 2400 scout \D
#
ACU cua3 - 38400 scout \D
ACU cua4 - 38400 scout \D
ACU cua6 - 38400 scout \D
#
# This one works - connect at 14400 in reality using v.32bis :
ACU cua4 - 19200 scout \D
ACU cua3 - 19200 scout \D
ACU cua6 - 19200 scout \D
#
# This is to force a certain system to always use one line.
ACUX cua3 - 19200 scout \D
# ACUX cua4 - 19200 scout \D
# ACUX cua6 - 19200 scout \D
6. /var/lib/uucp/hdb_config/Dialers (this is a Slackware dist.)
(please note the *E0 for no error correction, no compression... uucp
does just fine by itself... use of anything other (in my experience)
just slows things down!)
#
# Dialers - note the setup strings to set the TrailBlazer registers
#
scout =W-, "" A\pA\pA\pT\r OK \pAT&F\r OK \pATM0*Q0*T0*E0DP\T CONNECT
tbfast =W-, "" A\pA\pA\pT OK ATS50=255DP\T CONNECT\sFAST
tbslow =W-, "" A\pA\pA\pT OK ATS50=2DT\T CONNECT\s1200
tbmed =W-, "" A\pA\pA\pT OK ATS50=3DT\T CONNECT\s2400
7. /var/lib/uucp/hdb_config/Systems (this is a Slackware dist.)
(please note that I've shortened this to just a few entries and removed
secure information such a phone numbers and passwords.) And before I
get a lot of flak about the connect strings, let me say "Tough!" I want
my connect sequences to blast through no matter what state the receiving
modems are in!
# UUCP Systems file: System ka4ybr
asystem Any ACU 19200 nnnnnn1 "" \r ogin:-\K-ogin:-\K-ogin:-\K-ogin:-\K-ogin: \d\Euuka4ybr word: \dpassword
asystem Any ACU 19200 nnnnnn2 "" \r ogin:-\K-ogin:-\K-ogin:-\K-ogin:-\K-ogin: \d\Euuka4ybr word: \dpassword
bsystem Any ACU 9600 nnnnnn3 "" \r ogin:-\K-ogin:-\K-ogin:-\K-ogin:-\K-ogin: \d\Euuka4ybr\r word: \dpassword
csystem Any ACUX 19200 nnnnnn4 "" \r ogin:-\K-ogin:-\K-ogin:-\K-ogin:-\K-ogin: \d\Euuka4ybr\r word: \dpassword
8. /var/lib/uucp/hdb_config/Permissions (this is a Slackware dist.)
LOGNAME=nuucp
LOGNAME=uuv43test
MACHINE=asystem LOGNAME=uuasystem \
COMMANDS=/bin/rmail:/usr/bin/rsmtp:/usr/bin/smail:/usr/bin/uucp:/usr/local/lib/news/bin/rnews:/usr/bin/uux \
READ=/var/spool/uucppublic:/usr/spool/uucppublic:/usr/tmp:/usr/local/lib:/var/spool/news: \
WRITE=/var/spool/uucppublic:/usr/spool/uucppublic:/usr/tmp:/usr/local/lib/news:/usr/spool/news:/var/spool/news \
SENDFILES=yes REQUEST=yes
MACHINE=bsystem LOGNAME=uubsystem \
COMMANDS=/bin/rmail:/usr/bin/rsmtp:/usr/bin/smail:/usr/bin/uucp:/usr/local/lib/news/bin/rnews:/usr/bin/uux \
READ=/var/spool/uucppublic:/usr/spool/uucppublic:/usr/tmp:/usr/local/lib:/var/spool/news: \
WRITE=/var/spool/uucppublic:/usr/spool/uucppublic:/usr/tmp:/usr/local/lib/news:/usr/spool/news:/var/spool/news \
SENDFILES=yes REQUEST=yes
MACHINE=csystem LOGNAME=uucsystem \
COMMANDS=/bin/rmail:/usr/bin/rsmtp:/usr/bin/smail:/usr/bin/uucp:/usr/local/lib/news/bin/rnews:/usr/bin/uux \
READ=/var/spool/uucppublic:/usr/spool/uucppublic:/usr/tmp:/usr/local/lib:/var/spool/news: \
WRITE=/var/spool/uucppublic:/usr/spool/uucppublic:/usr/tmp:/usr/local/lib/news:/usr/spool/news:/var/spool/news \
SENDFILES=yes REQUEST=yes
9. /etc/passwd entries (samples)
uuasystem:6sEM8hx9x6efw:613:5:Node asystem:/var/spool/uucppublic:/usr/lib/uucp/uucico
uubsystem:6sEM8hx9x6efw:614:5:Node bsystem:/var/spool/uucppublic:/usr/lib/uucp/uucico
uucsystem:6sEM8hx9x6efw:615:5:Node csystem:/var/spool/uucppublic:/usr/lib/uucp/uucico
mah@ka4ybr.com 94/06/27
--
"Linux! Guerrilla UNIX Development Venimus, Vidimus, Dolavimus."
------------------------------------------------------------
Mark A. Horton ka4ybr mah@ka4ybr.atl.ga.us
P.O. Box 747 Decatur GA US 30031-0747 mah@ka4ybr.com
+1.404.371.0291 33 45 31 N / 084 16 59 W