Screen

From Grid5000
Revision as of 13:48, 3 April 2006 by Xdelaruelle (talk | contribs) (→‎Multiuser mode: integrate note section directly inside other sections)
Jump to navigation Jump to search

screen is a screen manager with VT100/ANSI terminal emulation.

Basics

  • Start a screen session (creates a single window with a shell in it):
screen
  • Invoke a screen command (consists of a "Ctrl + a" followed by one other character):
C-a <command_char>
  • Detach from this screen terminal (program continues to run when its associated screen session is detached):
C-a d
  • Reattach a session (brings foreground a previously detached session):
screen -r
  • Invoke a screen customization command (used to set options):
C-a : <customization_command>

Multiuser mode

With multiuser mode, screen reveal itself as a powerfull colaborative administration tool.

Requirements

  • screen binary file must be setuid-root:
chmod u+s /usr/bin/screen
Note.png Note

The setuid setting can be avoided if the screen session is initiated by root.

  • screen socket directory must not be NFS mounted (your default must be changed if it is $HOME/.screen):
SCREENDIR=/tmp/screen-username1
Note.png Note

There is nothing to configure on Debian systems, as the SCREENDIR is correctly set on this distro by default.

Howto

  • User, named username1, initiates a basic screen session name test:
screen -S test
  • Then, he enables multiuser mode for this session:
C-a : multiuser on
  • After that, he allows the others, like username2, to connect to his session:
C-a : acladd username2
  • At last, allowed users, like username2, can attach to the multiuser session initiated by username1:
screen -r username1/test
Note.png Note

A $HOME/.screenrc file can be use to systematically setup the multiuser mode variables multiuser and acladd.