Contents

Hvordan la programmer kjøre selv om du logger ut

Vanligvis vil programmer du kjører bli avsluttet automatisk når du logger ut. Det finnes flere programmer som kan forhindre dette; på studentanlegget kan du bruke enten nohup eller screen.

nohup

nohup er ganske enkelt å bruke; du kjører kommandoen nohup kommando & der kommando er kommandoen du egentlig ønsker å kjøre. &-tegnet gjør at kommandoen kjører i bakgrunnen. nohup lager en fil som heter nohup.out som inneholder meldinger fra programmet ditt. Mer informasjon om nohup finner du på man-siden. For å få opp denne, kjører du kommandoen man nohup

screen

screen er et litt mer avansert og kraftig program. Det gir deg muligheter til å opprette flere virtuelle skjermer ("screens") der du kan kjøre programmer. Det som gjør det spesielt interessant er at det også gir deg mulighet til å "koble deg fra" et slikt skjermbilde, logge av og så senere hente det opp igjen.

For å bruke screen kjører du kommandoen screen kommando der kommando er kommandoen du egentlig skal kjøre (dette fungerer altså på samme måte som nohup).

Måten du gir kommandoer til screen på, er å trykke en kontrollsekvens. Denne begynner alltid med C-a (dvs. at du holder inne Ctrl-tasten mens du trykker "a"-tasten). Dersom du f.eks. trykker C-a ?, får du en oversikt over de forskjellige kommandoene du kan gi. Notasjonen med en ^ før en bokstav betyr å holde inne Ctrl-tasten mens du trykke tasten til denne bokstaven.

screen gir deg som sagt mange muligheter, men det som er mest interessant i denne sammenhengen er tastekombinasjonen C-a d, som "detacher" (kobler fra) skjermbildet. Dersom du gir screen denne kommandoen, havner du tilbake til det bildet der du kjørte screen fra og får meldingen "[detached]".

Neste gang du logger inn kan du hente skjermbildet tilbake igjen ved å kjøre kommandoen screen -r.

Dersom du kjører flere screen-sesjoner, vil screen si noe slikt som

kode #1
There are screens on:
        1175.pts-75.james       (Detached)
        5217.pts-75.james       (Detached)
Type "screen [-d] -r [pid.]tty.host" to resume one of them.
Som meldingen sier, må du spesifisere hvilken av dem du skal velge ved hjelp av en strengen fra den første kolonnen i listen. Eksempel: For å hente ut den nederste sesjonen i tilfellet over, kjører du kommandoen screen -r 5217.pts-75.james. Her finner du også mer informasjon på man-siden; kjør kommandoen man screen.