CLI sharing and session management in Linux with 'screen' - A Quick-Start Guide

Published on
10,101 Points
3 Endorsements
Last Modified:

Using 'screen' for session sharing, The Simple Edition

Step 1: user starts session with command: screen
Step 2: other user (logged in with same user account) connects with command: screen -x
Done. Both users are connected to the same CLI session, and can both see what's being typed, and can both type.

But it is not only good for session sharing with another person, the ability to have multiple windows in a single session, and being able to disconnect and re-connect (much like you can with RDP) among other things can be quite useful for any user:

A few more things we can do

There is a control character which is used to initiate all commands (everything that's not the control character is passed to the session). The default control character is Ctrl-A.

There is a site-wide /etc/screenrc file, and optionally a .screenrc file in a home directory, in which options like the control character can be set.

Some basic commands:

Ctrl-A C: create a new window
Ctrl-A N: switch to next window
Ctrl-A P: switch to previous window
Ctrl-A ”: show window list (from which you can switch to any window)
Ctrl-A [: Enter Copy-n-Paste/Scrollback mode (exit with Esc)
Ctrl-A D: detach from screen (which remains running). This is like disconnecting an RDP session.
Some command line options

List screen sessions: screen -ls
Reattach if possible, otherwise start new session: screen -R
Attach to specific session: screen -r <sessionname>
Detach already-attached clients and attach to the first session listed: screen -D -RR
Like explained above, to multi-attach (share a session), you can simply run ”screen -x” which will attach to an existing session without detaching existing users. The -x option can be combined with other options to enable multi-attach.

Exiting (or not)

If you lose your connection or close/kill your SSH session, screen will not exit but detach and remain running, so you can log back in and reattach to the same session.

If you exit a shell, that screen window will close (alternate: Ctrl-A K). If there are no more remaining windows, screen will exit.


Reference: http://www.commandlinefu.com/commands/view/2225/share-a-screen-session
Reference: http://www.linuxjournal.com/article/6340

Featured Post

Ultimate Tool Kit for Technology Solution Provider

Broken down into practical pointers and step-by-step instructions, the IT Service Excellence Tool Kit delivers expert advice for technology solution providers. Get your free copy now.

Join & Write a Comment

Learn how to find files with the shell using the find and locate commands. Use locate to find a needle in a haystack.: With locate, check if the file still exists.: Use find to get the actual location of the file.:
How to Install VMware Tools in Red Hat Enterprise Linux 6.4 (RHEL 6.4) Step-by-Step Tutorial

Keep in touch with Experts Exchange

Tech news and trends delivered to your inbox every month