Skip site navigation (1)Skip section navigation (2)

FreeBSD Manual Pages

  
 
  

home | help
CONSOLE(1)			   conserver			    CONSOLE(1)

NAME
       console - console server	client program

SYNOPSIS
       console [generic-args] [-aAfFsS]	[-e esc] console
       console [generic-args] [-iIuwWx]	[console]
       console [generic-args] [-hPqQrRV] [-[bB]	message] [-d [user][@console]]
       [-t [user][@console] message] [-[zZ] cmd]

       generic-args: [-7DEnUv] [-c cred] [-C config] [-M master] [-p port] [-l
       user]

DESCRIPTION
       Console	is  used  to  manipulate console terminals remotely or to poll
       running conserver(8) daemons for	status information.

       In the first form above,	console	asks the user's	password before	grant-
       ing  interactive	 access	 to a console (on a non-trusted	system), since
       such a session may provide single-user access.  If the  server's	 auto-
       completion  feature  is enabled,	only as	much of	the console name as is
       required	to identify it uniquely	to the server is required.

       For non-interactive options, console outputs only the requested	infor-
       mation and exits.

       Console	knows  only of a primary conserver host	(see the -M option be-
       low), to	which it initially connects.  In a  multi-server  environment,
       the  primary server may refer the client	to a different server handling
       the requested console, or it will provide a list	of all servers if  re-
       quired  (as  when console is invoked with the -r	option).  Console then
       opens connections to the	appropriate server(s).	It  is	not  necessary
       for the user of console to know which server manages which consoles, as
       long as console knows a valid primary server and	all available consoles
       are listed in the primary server's configuration	file.

OPTIONS
       Options	may  be	given as separate arguments (e.g., -v -w) or clustered
       (e.g., -vw).  Options and their arguments may be	separated by  optional
       white  space.   Option  arguments containing spaces or other characters
       special to the shell must be quoted.

       -7	  Strip	the high bit off of all	data  received,	 whether  from
		  user input or	from the server, before	any processing occurs.
		  Disallows escape sequence characters with the	high bit set.

       -a	  Access a console  with  a  two-way  (read-write)  connection
		  (this	 is  the  default).   The connection is	dropped	to spy
		  mode if someone else is attached read-write.

       -bmessage  Broadcast a message to all users connected to	each server.

       -Bmessage  Same as -b but just send a message to	users on  the  primary
		  server.

       -ccred	  Load	an  SSL	 certificate and key from the PEM encoded file
		  cred.

       -Cconfig	  Use the per-user configuration file config.

       -d	  Disconnect the users specified  by  user@console.   You  may
		  specify  the target as user (disconnect the user, regardless
		  of what console they are attached to), @console  (disconnect
		  all  users attached to console), or user@console (disconnect
		  the user attached to console).

       -D	  Enable debugging output.

       -eesc	  Set the initial two-character	escape sequence	to those  rep-
		  resented by esc.  Any	of the forms output by cat(1)'s	-v op-
		  tion are accepted.  The default value	is ``^Ec''.

       -E	  If encryption	has been built into the	code (--with-openssl),
		  encrypted client connections are, by default,	a requirement.
		  This option disables any attempt at  creating	 an  encrypted
		  connection.  If you'd	like to	use encrypted connections when
		  your server supports it, but fallback	to non-encrypted  oth-
		  erwise, the -U option	is what	you want.

       -f	  Same as -a except it will force any existing connection into
		  spy mode.

       -h	  Display a brief help message.

       -i	  Display status information  in  a  machine-parseable	format
		  (see below for the details).

       -I	  Same as -i but just acts on the primary server.

       -luser	  Set  the login name used for authentication to user.	By de-
		  fault, console uses $USER if its uid matches the user's real
		  uid,	or $LOGNAME if its uid matches the user's real uid, or
		  else the name	associated with	the user's real	uid.

       -Mmaster	  The console client  program  polls  master  as  the  primary
		  server,  rather  than	the default set	at compile time	(typi-
		  cally	``console'').  The default master may  be  changed  at
		  compile  time	using the --with-master	option.	 If --with-uds
		  is used to enable Unix domain	sockets, however, this	option
		  points  console  to the directory which holds	those sockets.
		  The default master  directory	 (``/tmp/conserver'')  may  be
		  changed at compile time using	the --with-uds option.

       -n	  Do not read the system-wide configuration file.

       -pport	  Set  the port	to connect to.	This may be either a port num-
		  ber or a service name.  The default port may be  changed  at
		  compile  time	 using the --with-port option.	If the --with-
		  uds option was used, this option is ignored.

       -P	  Display the pid of the master	daemon process on each server.

       -q	  The console client connects to each server to	 request  that
		  the  server  daemon  quit (shut down).  The root password of
		  the host(s) running conserver	is required unless  the	 local
		  host	is  listed as ``trusted'' in the conserver.cf file; in
		  that case, just press	<return>.

       -Q	  Same as -q but just acts on the primary server.

       -r	  Display daemon versions.  The	 console  client  connects  to
		  each server to request its version information.

       -R	  Same as -r but just acts on the primary server.

       -s	  Request a read-only (spy mode) connection.  In this mode all
		  the escape sequences (below) work, or	report errors, but all
		  other	keyboard input is discarded.

       -t	  Send	a  text	 message to user@console.  You may specify the
		  target as user (send to user,	 regardless  of	 what  console
		  they	are attached to), @console (send to all	users attached
		  to console), or user@console (send to	user attached to  con-
		  sole).

       -u	  Show	a  list	 of all	consoles with status (`up', `down', or
		  `init') and attached	users  (user@host  if  attached	 read-
		  write, `<spies>' if only users in spy	mode, or `<none>').

       -U	  If encryption	has been built into the	code (--with-openssl),
		  encrypted client connections are, by default,	a requirement.
		  This	option	allows the client to attempt an	encrypted con-
		  nection but fall back	to a non-encrypted connection  if  the
		  server  doesn't support encryption.  If the encryption hand-
		  shake	is failing, disabling encryption on  the  client  with
		  the -E option	is probably what you want.

       -v	  Be  more  verbose when building the connection(s).  Use this
		  option in combination	with any of `show' options (below) for
		  added	benefit.

       -V	  Output  the  version and settings of the console client pro-
		  gram and then	exit.

       -w	  Show a list of all who are currently connected to  consoles,
		  including the	hostnames where	the console connections	origi-
		  nate and the idle times.  This is useful to see  if  anybody
		  is actively using the	console	system if it becomes necessary
		  to shut down conserver.

       -W	  Same as -w but just acts on the primary server.

       -x	  Show a list of consoles and devices.

       -zcmd	  Sends	a command (cmd)	to each	server and  displays  the  re-
		  sult.	 The valid commands are:

		  bringup     Try to connect all consoles marked as down (this
			      is equivalent to sending the server a SIGUSR1)
		  SIGUSR1     Same as bringup
		  help	      Displays the help	message
		  pid	      Returns the pid of the server (this  is  equiva-
			      lent to -P)
		  quit	      Instructs	 the  server  to  shut	down  (this is
			      equivalent  to  -q  or  sending  the  server   a
			      SIGTERM)
		  SIGTERM     Same as quit
		  reconfig    Instructs	the server to reload the configuration
			      file, then perform the actions of	 reopen	 (this
			      is equivalent to sending the server a SIGHUP)
		  SIGHUP      Same as reconfig
		  reopen      Instructs	 the  server  to  reopen all logfiles,
			      then perform the actions	of  bringup  (this  is
			      equivalent to sending the	server a SIGUSR2)
		  SIGUSR2     Same as reopen
		  version     Returns  the  version  of	 the  server  (this is
			      equivalent to -V)

       -Zcmd	  Same as -z but just sends cmd	to the primary server.

       The -A, -F, or -S options have the  same	 effect	 as  their  lower-case
       variants.  In addition, they each request the last 20 lines of the con-
       sole output after making	the connection (as if ``^Ecr'' were typed).

       The -i, -u, -w, and -x options can be given a console name, which  will
       limit their output to that console.

       The  -i	option outputs status information regarding each console in 15
       colon-separated fields.

       name   The name of the console.

       hostname,pid,socket
	      The hostname, pid, and socket number of the child	process	manag-
	      ing the console.

       type   The  type	 of console.  Values will be a `/' for a local device,
	      `|' for a	command, `!' for a remote port,	`%' for	a Unix	domain
	      socket, and `#' for a noop console.

       console-details
	      The  details regarding the console.  The values here (all	comma-
	      separated) depend	on the type of	the  console.	Local  devices
	      will  have values	of the device file, baud rate/parity, and file
	      descriptor for the device.  Commands will	 have  values  of  the
	      command,	the command's pid, the pseudo-tty, and file descriptor
	      for the pseudo-tty.  Remote ports	will have values of the	remote
	      hostname,	 remote	 port  number, ``raw'' or ``telnet'' protocol,
	      and file descriptor for  the  socket  connection.	  Unix	domain
	      sockets will have	the path to the	socket and the file descriptor
	      for the socket connection.  Noop consoles	will have nothing.

       users-list
	      The details of each user connected to the	console.  The  details
	      for each user are	an `@' separated list of `w', `r', or `s' (for
	      read-write, read-only, or	 suspended),  username,	 hostname  the
	      user  is	on,  the  user's idle time, and	(for `r' and `s' users
	      only) ``rw'' or ``ro'' (if the user  wants  read-write  mode  or
	      not).  Each user bundle is separated by commas.

       state  The  state  of  the  console.   Values  with  either  be ``up'',
	      ``down'',	or ``init''.

       perm   This value will either be	``rw'' or ``ro''.   It	will  only  be
	      ``ro''  if the console is	a local	device (`/' type) and the per-
	      missions are such	that the server	can open the  file  for	 read,
	      but not write.

       logfile-details
	      The  details  regarding the logging for the console.  The	comma-
	      separated	values will be the logfile, ``log'' or	``nolog''  (if
	      logging  is  on  or  not	-  toggled  via	 ``^EcL''), ``act'' or
	      ``noact''	(if activity logging is	enabled	or not - the `a' time-
	      stamp  option),  the timestamp interval, and the file descriptor
	      of the logfile.

       break  The default break	sequence used for the console.

       reup   If the console is	currently down and the automatic  reconnection
	      code is at work, it will have the	value of ``autoup'', otherwise
	      it will be ``noautoup''.

       aliases
	      The console aliases are presented	in a comma-separated list.

       options
	      The active options for the console are presented in a comma-sep-
	      arated list.

       initcmd
	      The initcmd configuration	option for the console.

       idletimeout
	      The idletimeout configuration option for the console.

       idlestring
	      The idlestring configuration option for the console.

CONFIGURATION
       Console reads configuration information from the	system-wide configura-
       tion file (console.cf), then the	per-user configuration file  (.consol-
       erc),  and then applies command-line arguments.	Each configuration lo-
       cation can override the previous.  The same happens when	parsing	an in-
       dividual	 file -	the later entries always override the earlier entries.
       Because of that,	you should put ``global'' defaults first and more spe-
       cific defaults second.

       The   configuration  file  is  read  using  the	same  parser  as  con-
       server.cf(5), and you should check that	manpage	 for  parser  details.
       Console recognizes the following	configuration blocks.

       config hostname|ipaddr
	      Define  a	configuration block for	the client host	named hostname
	      or using the address ipaddr.  If the value of ``*'' is used, the
	      configuration block will be applied to all client	hosts.

	      escape esc
		     Set the escape sequence (see the -e command-line flag).

	      master master
		     Set the default master to master (see the -M command-line
		     flag).

	      playback num|""
		     Override the playback length for the p escape command  to
		     num lines (if the server supports it).  Using the special
		     value of ``0'' will cause the client to use the number of
		     lines  of	the  current  terminal	(if that can be	deter-
		     mined).  If the null string (``""'') is used,  the	 play-
		     back length will not be overridden.

	      port port
		     Set  the  default	port  to port (see the -p command-line
		     flag).

	      replay num|""
		     Override the replay length	for the	r  escape  command  to
		     num lines (if the server supports it).  Using the special
		     value of ``0'' will cause the client to use the number of
		     lines  of	the  current  terminal	(if that can be	deter-
		     mined).  If the null string (``""'') is used, the	replay
		     length will not be	overridden.

	      sslcacertificatefile filename
		     Load  the	valid  CA  certificates	for the	SSL connection
		     from the PEM encoded file.

	      sslcacertificatepath directory
		     Load the valid CA certificates  for  the  SSL  connection
		     from the PEM encoded files	in the directory.

	      sslcredentials filename
		     Set  the  SSL  credentials	file location (see the -c com-
		     mand-line flag).

	      sslenabled yes|true|on|no|false|off
		     Set whether or not	encryption is attempted	 when  talking
		     to	servers	(see the -E command-line flag).

	      sslrequired yes|true|on|no|false|off
		     Set whether or not	encryption is required when talking to
		     servers (see the -U command-line flag).

	      striphigh	yes|true|on|no|false|off
		     Set whether or not	to strip the high bit off all data re-
		     ceived (see the -7	command-line flag).

	      username user
		     Set the username passed to	the server to user (see	the -l
		     command-line flag).

       terminal	type
	      Define a configuration block when	using a	terminal of type type.
	      If  the  value of	``*'' is used, the configuration block will be
	      applied to all terminal types.

	      attach string|""
		     Set a string to print when	 successfully  attached	 to  a
		     console.	Character  substitions will be performed based
		     on	the attachsubst	value and occur	before	interpretation
		     of	 the  special  characters  below.   If the null	string
		     (``""'') is used, no string will be printed.  string is a
		     simple  character	string	with  the exception of `\' and
		     `^':

			    \a	  alert
			    \b	  backspace
			    \f	  form-feed
			    \n	  newline
			    \r	  carriage-return
			    \t	  tab
			    \v	  vertical-tab
			    \\	  backslash
			    \^	  circumflex
			    \ooo  octal	representation of a  character	(where
				  ooo is one to	three octal digits)
			    \c	  character c
			    ^?	  delete
			    ^c	  control character (c is ``and''ed with 0x1f)

		     An	interesting use	of attach and attachsubst would	be:

			    terminal xterm {
				attach "^[]0;conserver:	U@C^G";
				attachsubst U=us,C=cs;
			    }

	      attachsubst c=t[n]f[,...]|""
		     Perform  character	 substitutions on the attach value.  A
		     series of replacements can	be  defined  by	 specifying  a
		     comma-separated  list of c=t[n]f sequences	where c	is any
		     printable character, t specifies the replacement value, n
		     is	a field	length (optional), and f is the	format string.
		     t can be one of the characters below,  catagorized	 as  a
		     string  replacement  or a numeric replacement, which dic-
		     tates the use of the n and	f fields.

			    String Replacement
			    u	   username
			    c	   console name

			    Numeric Replacement
			    none available (yet)

		     For string	replacements,  if  the	replacement  isn't  at
		     least  n characters, it will be padded with space charac-
		     ters on the left.	f must be `s'.	For  numeric  replace-
		     ments,  the value will be formatted to at least n charac-
		     ters, padded with 0s if n begins  with  a	0,  and	 space
		     characters	 otherwise.  f must be either `d', `x' or `X',
		     specifying	a decimal, lower-case hexadecimal, or  an  up-
		     percase  hexadecimal  conversion.	 If  the  null	string
		     (``""'') is used, no replacements will be done.

	      detach string|""
		     Set a string to  print  once  detached  from  a  console.
		     Character	substitions will be performed based on the de-
		     tachsubst value.  See the attach option for  an  explana-
		     tion  of string.  If the null string (``""'') is used, no
		     string will be printed.

	      detachsubst c=t[n]f[,...]|""
		     Perform character substitutions on	the detach value.  See
		     the  attachsubst  option for an explanation of the	format
		     string.

       A simple	configuration to set a new default escape sequence  and	 over-
       ride the	master location	would be:

	      #	override options for all hosts
	      config * {
		  master localhost;
		  escape ^Ee;
	      }
	      #	set things more	specific to host1
	      #	note: if the entries were reversed, host1
	      #	would also use localhost.
	      config host1 {
		  master console1;
	      }

ESCAPE SEQUENCES
       The  connection	can  be	controlled by a	two-character escape sequence,
       followed	by a command.  The default escape sequence is ``control-E  c''
       (octal  005  143).  (The	escape sequences are actually processed	by the
       server; see the conserver(8) man	page for more information.)   Commands
       are:

       .	    disconnect
       ;	    move to another console
       a	    attach read-write if nobody	already	is
       b	    send broadcast message to all users	on this	console
       c	    toggle flow	control	(don't do this)
       d	    down the current console
       ecc	    change the escape sequence to the next two characters
       f	    forcibly attach read-write
       g	    group info
       i	    information	dump
       L	    toggle logging on/off
       l?	    list the break sequences available
       l0	    send the break sequence associated with this console
       l1-9a-z	    send the specific break sequence
       m	    display the	"message of the	day"
       o	    close (if open) and	reopen the line	(to clear errors (silo
		    overflows))	and the	log file
       p	    playback the last 60 lines of output
       P	    set	number of playback lines
       r	    replay the last 20 lines of	output
       R	    set	number of replay lines
       s	    switch to spy mode (read only)
       u	    show status	of hosts/users in this group
       v	    show the version of	the group server
       w	    who	is using this console
       x	    examine this group's devices and modes
       z	    suspend this connection
       !	    invoke task
       |	    attach a local command to the console
       ?	    display list of commands
       ^M (return)  continue, ignore the escape	sequence
       ^R (ctrl-R)  replay the last line only
       \ooo	    send character having octal	code ooo (must	specify	 three
		    octal digits)

       If  any	other  character  is  hit after	the escape sequence, all three
       characters will be discarded.  Note that	a line break or	a down command
       can  only be sent from a	read-write connection.	To send	the escape se-
       quence through the connection one must redefine the  outer  escape  se-
       quence, or use ^Ec\ooo to send the first	escape character before	typing
       the second character directly.

       In the -u output, the login ``<none>'' indicates	no one is viewing that
       console,	 and  the  login ``<spies>'' indicates that no one has a read-
       write connection	(only read-only).

       When running a local command via	``^Ec|'', you can type	`^C'  to  send
       the  command  a	SIGHUP,	`^\' to	send the command a SIGKILL, and	`o' to
       toggle the display of the console data.

EXAMPLES
       console -u     Outputs something	like:

		      dumb	up	<none>
		      expert	up	ksb@mentor
		      tyro	up	<spies>
		      mentor	up	<none>
		      sage	up	fine@cis

		      The <none> indicates no one is viewing dumb  or  mentor,
		      the  <spies>  indicates only read-only connections exist
		      for tyro,	and other login@host  entries  indicate	 users
		      attached read-write to sage and expert.

       console -w     Outputs something	like:

		      ksb@extra	      attach  2days	expert
		      file@cis	      attach  21:46	sage
		      dmr@alice	      spy      0:04	tyro

		      The  third  column is the	idle time of the user.	Either
		      hours:minutes or number of days is displayed.

       console -e "^[1"	lv426
		      Requests a connection to the host	``lv426'' with the es-
		      cape characters set to ``escape one''.

FILES
       The  following default file locations may be overridden at compile time
       or by the command-line options described	above.	Run console -V to  see
       the defaults set	at compile time.

       /etc/console.cf		system-wide configuration file
       $HOME/.consolerc		per-user configuration file

BUGS
       It  is  possible	to create a loop of console connections, with ugly re-
       sults.  Never run console from within a console connection (unless  you
       set each	escape sequence	differently).

       The  -i output can produce more than the	stated number of fields	of in-
       formation if the	user-provided information has embedded colons.

       I'm sure	there are more,	I just don't know where	they are.  Please  let
       me know if you find any.

AUTHORS
       Thomas A. Fine, Ohio State Computer Science
       Kevin Braunsdorf, Purdue	University Computing Center
       Bryan Stansell, conserver.com

SEE ALSO
       conserver.cf(5),	conserver.passwd(5), conserver(8)

conserver-8.2.4			  2019/03/26			    CONSOLE(1)

NAME | SYNOPSIS | DESCRIPTION | OPTIONS | CONFIGURATION | ESCAPE SEQUENCES | EXAMPLES | FILES | BUGS | AUTHORS | SEE ALSO

Want to link to this manual page? Use this URL:
<https://www.freebsd.org/cgi/man.cgi?query=console&sektion=1&manpath=FreeBSD+12.2-RELEASE+and+Ports>

home | help