ymon - port monitor for terminal ports ttymon



  • System Administration Commands					    ttymon(1M)
    
    
    
    NAME
           ttymon -	port monitor for terminal ports
    
    SYNOPSIS
           /usr/sbin/ttymon	-g [-d device] [-h] [-t	timeout]
    	    [-l	ttylabel] [-p prompt] [-m modules] [-T termtype]
    
    
    DESCRIPTION
           ttymon  is a STREAMS-based TTY port monitor. Its	function is to monitor
           ports, to set terminal modes, baud rates, and line disciplines for  the
           ports, and to connect users or applications to services associated with
           the ports. Each instance	of ttymon  monitors  one  port,	 specified  at
           startup.	 When  an instance of ttymon is	started, ttymon	first initial-
           izes the	line disciplines, if they are specified,  and  the  speed  and
           terminal	 settings. For ports with entries in /etc/logindevperm,	device
           owner, group and	permissions are	set. (See logindevperm(4).) The	values
           used for	initialization are taken from the appropriate entry in the TTY
           settings	file. This file	is maintained  by  the	sttydefs(1M)  command.
           Default	line  disciplines  on  ports  are  usually set up by the auto-
           push(1M)	command	of the Autopush	Facility.
    
    
           ttymon then writes the prompt and waits for user	 input.	 If  the  user
           indicates  that	the  speed is inappropriate by pressing	the BREAK key,
           ttymon tries the	next speed and writes the  prompt  again.  When	 valid
           input  is  received,  ttymon  creates a utmpx entry (see	utmpx(4)), and
           execs the login service for the port. Valid input consists of a	string
           of at least one non-newline character, terminated by a carriage return.
    
    
           If  autobaud  is	 enabled  for a	port, ttymon will try to determine the
           baud rate on the	port automatically. Users must enter a carriage	return
           before  ttymon  can  recognize the baud rate and	print the prompt. Cur-
           rently, the baud	rates that can be  determined  by  autobaud  are  110,
           1200, 2400, 4800, and 9600.
    
       SMF Service Description
           The primary smf(5) service which	invokes	ttymon is svc:/system/console-
           login,  which  may  have	 multiple  service  instances.	Instances  are
           described  in  greater  detail  below. The service provides a number of
           properties within the property group ttymon to control the  invocation,
           as follows:
    
    	 NAME		       TYPE		  TTYMON OPTION
    	 ----------------------------------------------------------
    	 device		       astring		  [-d device]
    	 nohangup	       boolean		  [-h]
    	 label		       astring		  [-l label]
    	 modules	       astring		  [-m module1,module2]
    	 prompt		       astring		  [-p prompt]
    	 timeout	       count		  [-t timeout]
    	 terminal_type	       astring		  [-T termtype]
    
    
    
    
           If  any	value  is the empty string or an integer set to	zero, then the
           option is not passed to the ttymon invocation.
    
           svc:/system/console-login:default
    
    	   The default instance	always represents the ttymon that offers login
    	   on the system hardware console.
    
    	   See	EXAMPLES for an	example	of how to modify settings for the sys-
    	   tem console.
    
    
           svc:/system/console-login:{vt2, vt3, vt4, vt5, vt6}
    
    	   Additional service instances	are provided for the system's  virtual
    	   consoles.  If  virtual  consoles  are not available,	these services
    	   will	automatically disable themselves. See vtdaemon(1M).
    
    
           svc:/system/console-login:{terma, termb}
    
    	   svc:/system/console-login:terma and svc:/system/console-login:termb
    	   are provided	as a convenience and can assist	the user in setting up
    	   login services for additional ports	/dev/term/a  and  /dev/term/b.
    	   These services are disabled by default.
    
    
       Creating Additional Instances
           The  user  can  configure  additional  service instances	for additional
           devices.	This can be accomplished in any	of these ways:
    
    	   o	  Manually creating the	service	instance using svccfg(1M).
    
    	   o	  Creating the service in a service profile (see smf(5)).
    
    	   o	  Creating  a  service	 manifest   for	  additional   service
    		  instance(s).
    
    
           See  EXAMPLES  for an example of	manually configuring the service using
           svccfg.
    
       SMF Service Errors
           In most cases when an instance of the console-login service is  miscon-
           figured,	 it  will transition itself to the maintenance state. Use svcs
           -l (see svcs(1))	to determine the location of the  service's  log  file
           and consult the log for additional information.
    
    
           In  some	error cases, the service may respawn indefinitely. Disable the
           service using svcadm(1M), then consult the service log  for  additional
           messages	or information to help resolve the problem.
    
    SECURITY
           ttymon  uses  pam(3PAM)	for  session management. The PAM configuration
           policy, specified in /etc/pam.conf or per-service files in /etc/pam.d/,
           specifies the modules to	be used	for ttymon. Here is a partial pam.conf
           file with an entry for ttymon using the UNIX session management module:
    
    	 ttymon	session	required /usr/lib/security/pam_unix_session.so.1
    
    
    
           The equivalent PAM configuration	using /etc/pam.d/ would	be the follow-
           ing entry in /etc/pam.d/ttymon:
    
    	 session required /usr/lib/security/pam_unix_session.so.1
    
    
    
    
           If there	are no entries for the ttymon service in /etc/pam.conf and the
           /etc/pam.d/ttymon file does not exist, then the entries for the "other"
           service	in /etc/pam.conf will be used. If there	are not	any entries in
           /etc/pam.conf  for  the	"other"	  service,   then   the	  entries   in
           /etc/pam.d/other	will be	used.
    
    OPTIONS
           The following options are supported:
    
           -g	     The -g option is required for historical reasons.
    
    
           -ddevice	     device  is	the full path name of the port to which	ttymon
    		     is	to attach. If  this  option  is	 not  specified,  file
    		     descriptor	 0 must	be set up by the invoking process to a
    		     TTY port.
    
    
           -h	     If	the -h flag is not set,	ttymon will force a hangup  on
    		     the  line by setting the speed to zero before setting the
    		     speed to the default or specified speed.
    
    
           -lttylabel    ttylabel is a link	to a speed and TTY definition  in  the
    		     ttydefs  file. This definition tells ttymon at what speed
    		     to	run initially, what the	initial	TTY settings are,  and
    		     what  speed  to  try  next	if the user indicates that the
    		     speed is inappropriate by pressing	 the  BREAK  key.  The
    		     default speed is 9600 baud.
    
    
           -mmodules     When  initializing	 the port, ttymon will pop all modules
    		     on	the port, and then push	modules	in  the	 order	speci-
    		     fied.  modules is a comma-separated list of pushable mod-
    		     ules. Default modules on the ports	are usually set	up  by
    		     the Autopush Facility.
    
    
           -pprompt	     Allows  the  user to specify a prompt string. The default
    		     prompt is Login:.
    
    
           -ttimeout     Specifies that ttymon should exit if no  one  types  any-
    		     thing in timeout seconds after the	prompt is sent.
    
    
           -Ttermtype    Sets the TERM environment variable	to termtype.
    
    
           -v	     Enables verbose messaging.
    
    
    EXAMPLES
           Example 1 Setting the Terminal Type for the System Console
    
    
           The  following  example sets the	value of the terminal type (-T)	option
           for the system console ttymon invocation:
    
    
    	 # svccfg -s svc:/system/console-login:default \
    		  "setprop ttymon/terminal_type	= xterm"
    	 # svcadm refresh svc:/system/console-login:default
    
    
    
           Example 2 Creating a Service Instance for an Additional Serial Device
    
    
           In this example,	the user wishes	to configure an	additional instance of
           the  svc:/system/console-login service in order to offer	login services
           over a terminal connected by means of a USB serial adapter. Assume that
           the  USB	 serial	 port is present as /dev/term/1, and the user plans to
           connect a vt100 terminal	to it. In this case, the service instance  can
           be named	term1 (or any other name) and defined as follows:
    
    
    	 # svccfg -s svc:/system/console-login "add term1"
    	 # SVC=svc:/system/console-login:term1
    	 # svccfg -s $SVC "addpg ttymon	application"
    	 # svccfg -s $SVC "setprop ttymon/device = /dev/term/1"
    	 # svccfg -s $SVC "setprop ttymon/terminal_type	= vt100"
    	 # svcadm refresh $SVC
    	 # svcadm enable $SVC
    
    
    
    ENVIRONMENT VARIABLES
           If  any of the LC_* variables ( LC_CTYPE, LC_MESSAGES, LC_TIME, LC_COL-
           LATE, LC_NUMERIC, and LC_MONETARY ) (see	environ(5)) are	not set	in the
           environment,  the operational behavior of ttymon	for each corresponding
           locale category is determined by	the  value  of	the  LANG  environment
           variable.  If LC_ALL is set, its	contents are used to override both the
           LANG and	the other LC_* variables. If none of the  above	 variables  is
           set in the environment, the "C" (U.S. style) locale determines how tty-
           mon behaves.
    
           LC_CTYPE	   Determines how ttymon handles characters. When LC_CTYPE  is
    		   set	to  a  valid value, ttymon can display and handle text
    		   and filenames containing valid characters for that  locale.
    		   ttymon  can	display	 and  handle  Extended Unix Code (EUC)
    		   characters where any	individual character can be 1, 2, or 3
    		   bytes  wide.	ttymon can also	handle EUC characters of 1, 2,
    		   or more column widths. In the "C" locale,  only  characters
    		   from	ISO 8859-1 are valid.
    
    
    FILES
           /etc/logindevperm
    
    	   Contains  information that is used by login(1) and ttymon to	change
    	   the owner, group, and permissions of	devices	upon logging  into  or
    	   out of a console device.
    
    
    ATTRIBUTES
           See attributes(5) for descriptions of the following attributes:
    
    
    
    
           +-----------------------------+-----------------------------+
           |      ATTRIBUTE	TYPE	     |	    ATTRIBUTE VALUE	   |
           +-----------------------------+-----------------------------+
           |Availability		     |system/core-os		   |
           +-----------------------------+-----------------------------+
           |Interface Stability	     |Committed			   |
           +-----------------------------+-----------------------------+
    
    SEE ALSO
           svcs(1),	 ct(1C),  cu(1C), autopush(1M),	sttydefs(1M), svcadm(1M), svc-
           cfg(1M),	  uucico(1M),	vtdaemon(1M),	pam(3PAM),    logindevperm(4),
           pam.conf(4), utmpx(4), attributes(5), environ(5), pam_authtok_check(5),
           pam_authtok_get(5),	  pam_authtok_store(5),		pam_dhkeys(5),
           pam_passwd_auth(5),	  pam_unix_account(5),	     pam_unix_auth(5),
           pam_unix_session(5), smf(5)
    
    
           Introduction to Oracle Solaris 11.3		   Administration
    
    NOTES
       Service Access Facility (SAF	and SAC)
           ttymon was formerly a component of the Service Access Facility and  was
           invoked	by  sac, the Service Access Controller.	This facility has been
           removed in this release of Solaris, and a conversion to SMF of relevant
           portions	was performed.
    
       Competition for Ports
           If  a port is monitored by more than one	ttymon,	it is possible for the
           ttymons to send out prompt messages in such a way that they compete for
           input.
    
    
           It  is  possible	 that  two svc:/system/console-login service instances
           could refer to the same underlying device. For example, if the system's
           hardware	 console  is  connected	 (due  to settings or autodetection in
           firmware)  to  serial  port  A,	then  both  the	  svc:/system/console-
           login:default  and  svc:/system/console-login:terma services will refer
           to same underlying hardware device. Care	should be taken	when  defining
           or  enabling  additional	 service instances to avoid this situation, or
           the two ttymons will compete for	input.
    
    
    
    SunOS 5.11			  10 May 2012			    ttymon(1M)
    

Log in to reply
 

© Lightnetics 2024