The talk command in Linux is a utility that allows two users to have a real-time text-based conversation over a network. It provides a simple and interactive way to communicate with another user who is logged into the same system or a remote system.
- talk is a command-line tool that is typically used in Unix-like operating systems, including Linux.
- It operates using the client-server model, where one user initiates the conversation by sending an invitation to another user.
- Once the invitation is accepted, both users can type and send messages to each other in real-time, similar to a chat or instant messaging system.
- talk uses the Terminal or console interface for communication, with each user’s messages appearing on the screen.
- It allows for a one-on-one conversation between two users, with each message displayed in a separate window.
- The talk utility uses the User Datagram Protocol (UDP) or the Stream Control Transmission Protocol (SCTP) for communication.
- By default, users can only initiate a talk session with other users who are logged into the same system. However, it is possible to configure the system to allow talk sessions between remote systems.
- To start a talk session, you would typically use the following syntax:
Installation of talk command:
For Ubuntu/Debian :
For CentOS/Fedora :
- Create two files named talk and ntalk under /root directory.
- Edit talk file as below,
- Next edit ntalk file as below,
- Then restart xinetd service.
Working with talk command
Whenever talk command is issued, it will contact the talk-daemon on the other user’s terminal and send the below message to that user,
Now, other users can respond by typing
The talk command works by copying lines from one terminal to that of the terminal used by another user. It splits the window into 2 panes (top and bottom) wherein user can type in the top pane and the response would be seen in the bottom pane in another terminal. It can be used to
- To communicate with users on the same host or on the different host,
Talk daemon first checks if the user has logged in. If not, it will report that the user is not logged on and wait for the user to connect.
Once the user is logged-in, it will send a message and wait for the response from that user.
If there is no response, then the daemon will continuously send message to that user.
Once the destined user connects, the connection will be established and both can chat now.
Pressing Ctrl+c will terminate the connection.
- To talk with the user who has a dot character in username, then have to use the -x argument.
- If the user has logged in more than once, then the terminal name can be used to connect with that user.
If the user does not want to receive talk requests, then it can be blocked using the mesg command. Thus using the talk command we have understood various ways to connect with another user.