Heb je ooit meegemaakt dat je een langlopende taak uitvoert op een machine op afstand, en dat plotseling je verbinding wegvalt, de SSH-sessie wordt afgebroken, en je werk verloren gaat. Nou, het is ons allemaal wel eens overkomen, nietwaar? Gelukkig is er een hulpprogramma genaamd screen
dat ons in staat stelt de sessies te hervatten.
Inleiding #
Screen of GNU Screen is een terminal multiplexer. Met andere woorden, het betekent dat je een scherm-sessie kunt starten en dan een willekeurig aantal vensters (virtuele terminals) binnen die sessie kunt openen. Processen die in Screen draaien, blijven draaien als hun venster niet zichtbaar is, zelfs als de verbinding wordt verbroken.
Installeer Linux GNU Screen #
Het Screen pakket is tegenwoordig op de meeste Linux distro’s voorgeïnstalleerd. U kunt controleren of het op uw systeem is geïnstalleerd door te typen:
screen --version
Screen version 4.06.02 (GNU) 23-Oct-17
Als u Screen niet op uw systeem hebt geïnstalleerd, kunt u het eenvoudig installeren met de pakketbeheerder van uw distro.
Installeer Linux Screen op Ubuntu en Debian #
sudo apt update
sudo apt install screen
Installeer Linux Screen op CentOS en Fedora #
sudo yum install screen
Start Linux Screen #
Om een schermsessie te starten, typt u screen
in uw console:
screen
Dit opent een schermsessie, maakt een nieuw venster, en start een shell in dat venster.
Nu u een schermsessie hebt geopend, kunt u een lijst met opdrachten krijgen door te typen:
Ctrl+a
?
Start Naamsessie #
Naamsessies zijn handig wanneer u meerdere schermsessies uitvoert. Om een sessie met een naam te maken, voert u het commando screen uit met de volgende argumenten:
screen -S session_name
Het is altijd een goed idee om een beschrijvende sessienaam te kiezen.
Werken met Linux schermvensters #
Wanneer u een nieuwe schermsessie start, wordt er een enkel venster gemaakt met een commandoregel erin.
U kunt meerdere vensters binnen een Screen sessie hebben.
Om een nieuw venster met shell type Ctrl+a
c
te maken, zal het eerste beschikbare nummer uit de reeks 0...9
er aan toegewezen worden.
Hieronder staan enkele van de meest gebruikte commando’s voor het beheer van Linux Screen Windows:
-
Ctrl+a
c
Maak een nieuw venster (met shell) -
Ctrl+a
"
Lijst van alle vensters -
Ctrl+a
0
Schakel naar venster 0 (op nummer ) -
Ctrl+a
A
Hernoem het huidige venster -
Ctrl+a
S
Splits huidige regio horizontaal op in twee regio’s -
Ctrl+a
|
Splits huidige regio verticaal in twee regio’s -
Ctrl+a
tab
Verplaats de invoerfocus naar de volgende regio -
Ctrl+a
Ctrl+a
Schakelen tussen de huidige en vorige regio -
Ctrl+a
Q
Sluit alle regio’s behalve de huidige -
Ctrl+a
X
Sluit de huidige regio
Ontkoppelen van Linux-schermsessie #
U kunt zich op elk moment ontkoppelen van de schermsessie door te typen:
Ctrl+a
d
Het programma dat in de schermsessie wordt uitgevoerd, blijft draaien nadat u de sessie hebt verlaten.
Hervat uw Linux-schermsessie
Om uw schermsessie te hervatten gebruikt u het volgende commando:
screen -r
In het geval dat u meerdere schermsessies op uw machine hebt draaien, moet u de schermsessie-ID toevoegen na de r
-schakelaar.
Om de sessie-ID te vinden maakt u een lijst van de huidige lopende scherm-sessies met:
screen -ls
Als u scherm 10835.pts-0, typ dan het volgende commando:
screen -r 10835
Linux-schermen aanpassen #
Wanneer screen
wordt gestart, leest het zijn configuratieparameters uit /etc/screenrc
en ~/.screenrc
als het bestand aanwezig is. We kunnen de standaard Screen instellingen aanpassen aan onze voorkeuren met behulp van het .screenrc
bestand.
Hier is een voorbeeld ~/.screenrc
configuratie met aangepaste statusregel en enkele extra opties:
Basic Linux Screen Usage #
Hieronder staan de meest elementaire stappen om met screen aan de slag te gaan:
- Op de opdrachtprompt typt u
screen
. - Run het gewenste programma.
- Gebruik de toetsenvolgorde
Ctrl-a
Ctrl-d
om los te komen van de schermsessie. - Terugkeren naar de scherm sessie door
screen -r
te typen.
Conclusie #
In deze tutorial heeft u geleerd hoe u Gnu Screen kunt gebruiken. Nu kunt u het Screen hulpprogramma gaan gebruiken en meerdere schermvensters maken vanuit een enkele sessie, navigeren tussen vensters, schermsessies loskoppelen en hervatten en uw schermterminal personaliseren met behulp van het .screenrc
bestand.
Er is nog veel meer te leren over Gnu Screen op de Screen gebruikershandleiding pagina.