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

  
 
  

home | help
MESG(1) 			  User Commands 			 MESG(1)

NAME
     mesg - display (or do not display) messages from other users

SYNOPSIS
     mesg [option] [n|y]

DESCRIPTION
     The  mesg	utility is invoked by a user to control write access others have
     to the terminal device associated with standard error output. If write  ac-
     cess  is  allowed,  then  programs such as talk(1) and write(1) may display
     messages on the terminal.

     Traditionally, write access is allowed by default. However, as users become
     more conscious of various security risks, there is a trend to remove  write
     access by default, at least for the primary login shell.

     The  initial  permissions for the terminal are set by login(1) according to
     TTYPERM and TTYGROUP from /etc/login.defs. The default is mode  0620  if  a
     tty  group  is used, and 0600 without the group. The default tty group name
     is "tty".

     To ensure that your ttys are set in a portable and independent manner  from
     system settings, mesg should be executed in your login scripts.

     mesg modifies the write permissions for a group on the current terminal de-
     vice. Since version 2.41, mesg can no longer be compiled to make the termi-
     nal  writable  for others and strictly modifies only group permissions. The
     usual setup is to use a "tty" group and add relevant users to  this  group.
     Alternatively,  a less secure solution is to set utilities like write(1) or
     wall(1) to setgid for the "tty" group.

     The mesg utility silently exits with error status 2 if not  executed  on  a
     terminal. In this case executing mesg is pointless. The command line option
     --verbose	forces mesg to print a warning in this situation. This behaviour
     has been introduced in version 2.33.

ARGUMENTS
     n
	 Disallow messages.

     y
	 Allow messages to be displayed.

     If no arguments are given, mesg shows the current message status  on  stan-
     dard error output.

OPTIONS
     -v, --verbose
	 Explain what is being done.

     -h, --help
	 Display help text and exit.

     -V, --version
	 Display version and exit.

EXIT STATUS
     The mesg utility exits with one of the following values:

     0
	 Messages are allowed.

     1
	 Messages are not allowed.

     >1
	 An error has occurred.

FILES
     /dev/[pt]ty*, /dev/pts/[0-9]*

HISTORY
     mesg  (I)	appears  in  the UNIX Programmer's Manual. It used to invert the
     current state with no argument before Version 7 AT&T UNIX.

SEE ALSO
     login(1), talk(1), write(1), wall(1), xterm(1)

REPORTING BUGS
     For       bug	 reports,	use	  the	    issue	 tracker
     <https://github.com/util-linux/util-linux/issues>.

AVAILABILITY
     The  mesg command is part of the util-linux package which can be downloaded
     from		  Linux 		 Kernel 		 Archive
     <https://www.kernel.org/pub/linux/utils/util-linux/>.

util-linux 2.41.2		   2025-09-22				 MESG(1)

Want to link to this manual page? Use this URL:
<https://man.freebsd.org/cgi/man.cgi?query=mesg&sektion=1&manpath=FreeBSD+Ports+15.1.quarterly>

home | help