Screen er et progam som lar deg kjøre programmer mens du ikke er logget inn på datamaskinen f.eks over ssh. Dette er veldig nyttig dersom du ønsker å kjøre programmer som tar lang tid å utføre eller f.eks vil kjøre irssi. Mer informasjon finnes på https://wiki.archlinux.org/index.php/GNU_Screen.
Usage
Start screen ved å kjøre
$ screen
Alle nye kommandoer du kjører nå vil kjøre i screen. For å sende kommandoer til screen brukes Ctrl+a
som "escape key" for å sende en key binding til screen. Her er noen vanlige kommandoer i screen.
Vanlige kommandoer
Ctrl+a ?
Displays commands and its defaults (VERY important)Ctrl+a :
Enter to the command prompt of screenCtrl+a "
Window listCtrl+a 0
opens window 0Ctrl+a A
Rename the current windowCtrl+a a
Sends Ctrl+a to the current windowCtrl+a c
Create a new window (with shell)Ctrl+a S
Split current region into two regionsCtrl+a tab
Switch the input focus to the next regionCtrl+a Ctrl+a
Toggle between current and previous regionCtrl+a Esc
Enter Copy Mode (use enter to select a range of text)Ctrl+a ]
Paste textCtrl+a Q
Close all regions but the current oneCtrl+a X
Close the current regionCtrl+a d
Detach from the current screen session, and leave it running. Use screen -r to resumeCtrl+a n
Next windowCtrl+a p
Previous window
Gjennopta session
Man gjennoptar session ved å kjøre
$ screen -x
eller
$ screen -r
Autostart med systemd
This service autostarts screen for the specified user (e.g. systemctl enable screen@florian). Running this as a system unit is important, because systemd --user instance is not guaranteed to be running and will be killed when the last session for given user is closed. Make this file /etc/systemd/system/screen@.service
[Unit] Description=screen After=network.target [Service] Type=simple User=%i ExecStart=/usr/bin/screen -DmS autoscreen ExecStop=/usr/bin/screen -S autoscreen -X quit [Install] WantedBy=multi-user.target
Autostart med cron
For å få cron til å starte screen på startup $ crontab -e
for å endre oppgavene til cron
Legg til en linje nederst
@reboot /usr/bin/screen -Dms <navnpåsessionen>
Konfigurasjon
Konfigurasjonen til screen ligger i ~/.screenrc
Autostart av irssi
Se konfigurasjonen under. I vindu nr 5 åpner den irssi
Eksempel på konfigurasjon
status line hardstatus alwayslastline #To ulike statuslinjer. Kommenter ut den du liker best #hardstatus string '%{= .G}[ %{B}%H %{g}][%{w}%= %{=kw}%?%-Lw%?%{r}(%{W}%n%f %t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][ %{B}%d.%m.%y %{W}%c %{g}]' hardstatus string '%{= .y}[ %{B}%H %{y}][%= %{= .w}%-w%{+b yk} %n %t%?(%u)%? %{-}%+w %=%{y}][ %{B}%d.%m.%y %{W}%c %{y}]' # Default screens screen -t foxtrot 0 screen -t tango 1 screen -t balboa 2 screen -t salsa 3 screen -t chacha 4 screen -t irc 5 /usr/bin/irssi # Default settings startup_message off altscreen on attrcolor b ".I" # allow bold colors - necessary for some reason autodetach on encoding UTF-8 defutf8 on defencoding utf-8 #Scrollbackbuffer defscrollback 5000 # Termcapinfo etc. termcapinfo xterm|xterms|xs|rxvt ti@:te@ terminfo screen-256color 'Co#256:AF=\E[38;5;%dm:AB=\E[48;5;%dm:tc=screen' terminfo rxvt-unicode 'Co#256:AB=\E[48;5;%dm:AF=\E[38;5;%dm' term 'xterm-256color' # Mutt transparency defbce on